This is exactly what happened to me. I wanted to know what it is, opened those pages in tabs, read half of first one and skipped to the second one. It was soooo long (http://docs.datomic.com/tutorial.html) I knew I couldn't finish reading it in less than 5 hours and came here to ask: What is this, and why/who would want to use it? It could be useful for a project I'm working on, but I just couldn't understand what the damn thing is. And the fact that I have a headache obviously doesn't help.
Probably the best way to get your mind around Datomic conceptually would be to watch these introductory videos[1] Rich and Stu put together when first introducing Datomic. It's pretty revolutionary, IMO.
Edit: In response to those too pressed for time to watch the videos, you can read the rationale[2] for Datomic. However, it is a bit long. Rich and Stu may want to summarize it for the really pressed for time. :)
I've seen a number of comments over the last few weeks to the effect of "if you don't understand this product, watch the intro video".
In my opinion, if a product can't be described in a couple of concise sentences, it's going to run into some major roadblocks in getting traction.
Watching a video incurs a number of costs - the time taken to watch the video, the effort of plugging in headphones, the pain of buffering content. All of these are minor obstacles, but you want to eliminate as many reasons to leave as possible when attracting a new customer.
This isn't meant as a slight to you, but I think that Clojure in general and Datomic specifically (as a newer product) isn't looking for the most customers. They're looking for the right ones that share their vision for programming.
It still requires watching a video, but the video "Simple Made Easy" by Rich Hickey (http://www.infoq.com/presentations/Simple-Made-Easy/) describes it best. If that doesn't appeal to you, then don't worry about what you're missing in Datomic.
The attitude that Clojure is only for some enlightened few who are worthy enough to understand it is extremely alienating. Lisps aren't that hard, homoiconicity isn't that opaque, the benefits of using Clojure can be explained in practical terms that most developers can understand, if not at first be convinced by. All these concepts can be explained succinctly in text.
Saying that Clojure is only for those who share some 'vision' is hand-wavy at best, insulting at worst.
Edit: My guess is that Datomic is targeted towards Clojure devs because they are already experienced with Datomic's philosophy and will understand the system better. It also provides a smaller and highly receptive market. They can then focus on perfecting the software instead of training a large number of people in the philosophy behind Clojure and Datomic.
I didn't say that Clojure is for enlightened few or super hard to learn, I meant that Datomic/Clojure is currently targeted to people who already agree with Hickey and the other core developers. The 'vision' isn't some grand thing, just a strict adherence to simplicity and immutability as a way to improve program correctness.
Anyone here who knows the product want to have a go at proving a simple tag line, short about that would be suitable to use on their inbound marketing blog?
I think the guy who'll be interested in Datomic isn't going to be looking for a data store describable in a few sentences, like "NoSQL with feature X". It looks to me like a NoSQL-ish Datalog with Clojure-style concurrency, reified by its distribution model. You would only go with that sort of thing if you know how it works, or are interested in experimenting and learning about it. It's not something the guy looking for "data store, alternative to SQL, meeting requirements X Y and Z" would choose.
> It's not something the guy looking for "data store, alternative to SQL, meeting requirements X Y and Z" would choose.
Actually it seems like it's something that this hypothetical guy would be very interested in, given that Datomic is being pitched as an alternative to SQL.
I watched the first video. It wasn't much better than thee docs; still a little obscure and was just "talk" without any solid examples or use cases. But finally, at around 13:30, they get to say what they mean by "fact". If you want to know if it's something that can be useful to you, you can just skip to this part of video: http://www.youtube.com/watch?v=RKcqYZZ9RDY&feature=playe...