Graph-Based Ceramics
The article explores managing ceramic glazes in a kiln and developing an app. It compares Firebase, Supabase, and Instant databases, highlighting Instant's efficiency in handling complex relational data for ceramic management.
Read original articleThe article discusses the challenges of managing ceramic glazes and combinations in a kiln and the author's journey in developing an app to streamline this process. Initially considering Firebase for the app, the author ultimately opts for a graph-based database like Instant due to its ability to handle complex relational data more efficiently. The article delves into the technical aspects of data modeling using Firebase's Firestore, Supabase (PostgreSQL), and Instant, highlighting the advantages and limitations of each approach. While Postgres solves data modeling issues, Firebase offers features like optimistic updates, real-time subscriptions, and offline support, which are crucial for a smooth user experience. Instant, being a graph database, combines the speed of Firebase with the relational capabilities of Supabase, offering a simpler querying language (InstaQL) and straightforward data handling through transactions. The author concludes that Instant's graph-based approach provides a more intuitive and efficient solution for managing ceramic data compared to traditional SQL databases.
Related
Show HN: Triplit – Open-source syncing database that runs on server and client
The GitHub URL provides details on `@changesets/cli`, a tool for versioning and publishing code in multi-package and single-package repositories. Full documentation and common questions are accessible in their repository.
Graph-Based Ceramics
The article explores managing ceramic glazes in a kiln and creating an app for this purpose. It compares Firebase and Instant databases, Supabase, Postgres, and InstaQL for efficient data handling.
TinyBase v5: CRDTs for the rest of us
TinyBase is a versatile reactive data store for local-first apps, featuring data listening, synchronization, local storage, and schema support. It offers tools for key-value stores, tabular data, React integration, and complex queries.
Glazes is actually glass where you mix all kinds of powdered element from the periodic table and melt them at 1200C to hopefully get a result you like. A unusual kind of chemistry.
I am more interested in the glazes and the results he got than the crud app and the DB. Just read it in diagonal, but I don't see why a simple Django app wouldn't take care of this easily (with admin) and you use sqlite for local use case.
Table 1: <piece id> <combo id> <location>
Table 2: <combo id> <glaze id> <priority>
That's.. it.Location specifies where the combo is applied to the part; priority specifies ordering of the glaze layers (glazes whose order doesn't matter have the same priority).
The only thinking that needs to be done is understanding that you don't mix glazes and combinations in a single project, but a project has a set of combinations associated with it, some of which may only have one glaze.
Writing the requisite SELECT queries (getting all pieces that use a glaze, or vice versa) is left as an exercise to the reader (which, I hope, is straightforward - but the same can be said of the schema).
This article does a lot of mental gymnastics to avoid using a relational database to store relations. NoSQL has its places (e.g. sometimes, a KV store is a KV store), but this isn't it.
Sometimes I feel like the NoSQL hype did some collective damage to the way people think about data. But then again, I'm not a database architect, so what do I know.
But I suppose this is an ad for the writer's graph database anyway.
Related
Show HN: Triplit – Open-source syncing database that runs on server and client
The GitHub URL provides details on `@changesets/cli`, a tool for versioning and publishing code in multi-package and single-package repositories. Full documentation and common questions are accessible in their repository.
Graph-Based Ceramics
The article explores managing ceramic glazes in a kiln and creating an app for this purpose. It compares Firebase and Instant databases, Supabase, Postgres, and InstaQL for efficient data handling.
TinyBase v5: CRDTs for the rest of us
TinyBase is a versatile reactive data store for local-first apps, featuring data listening, synchronization, local storage, and schema support. It offers tools for key-value stores, tabular data, React integration, and complex queries.