Rich Hickey Speaks on Datomic at Clojure/West
This past weekend roughly 350 Clojure enthusiasts gathered at Clojure/West in San Jose, CA to listen to Rich Hickey and a long list of programmers and developers passionate about new techniques and tools, and to learn more about the general state of the Clojure ecosystem. Clojure/West is put on by the same folks that organize Strange Loop. InfoQ was on hand to film the event, which covered topics from Clojure in the Cloud to DevOps to coding the DOM using ClojureScript and Domina.
Fresh from his keynote at QCon London, Rich Hickey was on hand to talk about his newest venture, Datomic, which he describes as “a distributed database designed to enable scalable, flexible and intelligent applications, running on cloud architectures.” Datomic sits on Amazon’s DynamoDB, which is a fully managed NoSQL Database service. Datomic features ACID transactions, joins, and a data model that leverages immutability and state. Datomic embeds Datalog, a subset of Prolog, to move queries into the application. Those familiar with Prolog know it’s a declarative language with a built-in inference engine that evaluates declarative statements in a rule base. Datalog is a subset of Prolog that takes rules and data sources as arguments. Datomic extends Datalog to work with scalars and collections, and expression clauses have been added to call your code.
Phil Hagelberg, an engineer at Heroku and founder of the Seattle Clojure Group (Seajure) gave a brief talk on swarm coding. Hagelberg’s focus was on learning models and how collaborative modeling brings immediacy over distance while removing ambiguity. Their process is to run a session to ascertain skills of the group (of up to 10 coders), hold a tooling workshop to explain the project, set goals, and pass control so that no one person dominates. Each session ends by pushing the completed project to github.
The afternoon on Saturday featured several short sessions allowing attendees to quickly get up to speed on trending topics. Luke Vanderhart from Relevance gave a brief talk on Manipulating the DOM using ClojureScript. Vanderhart says that browser API’s are inadequate for things like stepping through nodes in the document tree, which is a multistep process, and that’s where jquery comes in. He then compares jquery to Domina, which he says was inspired by jquery but has cleaner wrapping and is easily composable in ClojureScript.
Other sessions at the conference covered Google Closure, writing DLS in Clojure, Overtone and Unjam for Clojurepunks, and a waft of topics on cloud, DevOps, Continuous Testing, JRuby on Rails and other JVM-based languages. Slides are currently available at Github. Check back with InfoQ over the next few weeks as we release presentations from the conference.