4 ms·
Clojure/Ring + Datomic + React
by newlisper 5y ago
Clojure/Ring + Datomic + React
- blacktriangle 5y agoI've come to find Datomic less than great for prototyping in situations where my data model is evolving. Since your history of data is immutable you get to live with all of your mistakes forever, you can't really just write a migration that shifts from one data model to the next.
- newlisper 5y agoYou can always ETL the latest value of the DB to a new DB/Schema
- stuarthalloway 5y agoDo you have a specific example? Datomic is great for evolving in prod (https://blog.datomic.com/2017/01/the-ten-rules-of-schema-growth.html https://blog.datomic.com/2017/01/the-ten-rules-of-schema-gro...), and Clojure is a great language for generating data (or ETL) when you want to make radical changes in dev.
- blacktriangle 5y agoIt was a service ticket system where we moved from a boolean status to a string for more states (noob modeling mistake I know). The problem came up a few months later when a dev pulled every attribute, saw the old field, and wrote new code against the old field, leading to some really confused tickets. Looking at that blog post though, it seems that using #9: Annotate your Schema could have helped us avoid this situation. Thats an interesting feature of Datomic I was unaware of.