What happens when your database is part of your application?
Kenneth & Len are joined once again by Robert Stuttaford from Cognician to talk about Datomic. According to the Datomic website, Datomic is a distributed database designed to enable scalable, flexible and intelligent applications, running on next-generation cloud architectures.
Robert shares with us how Datomic became a natural choice for them after switch to Clojure. Before Clojure, ClojureScript and Datomic their site was written in PHP and backed by MySQL.
Choosing Datomic was very natural since they've already subscribed to Rich Hickey's "simple vs easy" mindset. Its immutable nature is a great fit for Clojure, and by following an "append-only" storage model they got loads of benefits.
We discuss a wide variety of concepts, including how Datomic models data, the different ways it can be stored, how transactions work, the ability to travel back in time to see what your data looked like, and so much more. We were happy to learn that Datomic is accessible to everyone on the JVM, so learning Clojure isn't an initial requirement, but learning some Clojure will go a long way in informing your usage of Datomic.
We would encourage everyone to experiment with Datomic and enjoy this different, flexible approach to modeling data.
Follow Robert online:
Here are some resources mentioned during the show:
- Datomic - http://www.datomic.com/
- Datalog - https://en.wikipedia.org/wiki/Datalog
- Logic programming - https://en.wikipedia.org/wiki/Logic_programming
- Simple Made Easy by Rich Hickey - http://www.infoq.com/presentations/Simple-Made-Easy
- Exploring four Datomic superpowers - http://www.slideshare.net/lucascavalcantisantos/exploring-four-datomic-superpowers
- Learn Datalog Today - http://www.learndatalogtoday.org/
- Datomic Training Material - http://www.datomic.com/training.html
- Clojure Cookbook - https://github.com/clojure-cookbook/clojure-cookbook
- The Joy of Clojure, Second Edition - https://www.manning.com/books/the-joy-of-clojure-second-edition
- Clojure Remote Keynote: Designing with Data - https://www.youtube.com/watch?v=kP8wImz-x4w
Also listen to episode 27 for our previous discussion with Robert on Clojure.
Thanks for listening!
See all past picks on our picks page.