It seems to me that you need to be all-in on Datomic to get value from it. So that knocks out anyone working with a legacy system.
You also can’t really hire Datomic people in bulk so that knocks out anyone trying to scale
their eng org.
I can see it working well for companies who are trying to do a lot with a small very bright staff, but that’s a small category. And even then it would only be places where the staff has consensus around immutability as a value.
Which... immutability, like many forms of strictness, is both a PITA and not actually that helpful unless you go all in.
It’s just a major commitment and for what benefit?
Maybe for a product where you need rewind everywhere.
Maybe for a product where you need extreme auditability.
I don’t know... what’s the killer feature that would make someone sacrifice everything else to use it?
Personally I think Datomic needs to be paired with a hosting system, debugging tools, basically some kind of integrated development environment that’s immutable-first in every respect.
Something like that would be powerfully differentiated.
You don't need to be all-in on Datomic, it's unsuitable for some kinds of data (eg binary blobs, or generally text due to the 4k string limit, PII due to missing delete support, etc). It seems designed to be used along with ancillary data stores.
I think the benefits have been pretty well laid out and are quite attractive, your restatement of them is just damnation with faint praise :)
You also can’t really hire Datomic people in bulk so that knocks out anyone trying to scale their eng org.
I can see it working well for companies who are trying to do a lot with a small very bright staff, but that’s a small category. And even then it would only be places where the staff has consensus around immutability as a value.
Which... immutability, like many forms of strictness, is both a PITA and not actually that helpful unless you go all in.
It’s just a major commitment and for what benefit?
Maybe for a product where you need rewind everywhere.
Maybe for a product where you need extreme auditability.
I don’t know... what’s the killer feature that would make someone sacrifice everything else to use it?
Personally I think Datomic needs to be paired with a hosting system, debugging tools, basically some kind of integrated development environment that’s immutable-first in every respect.
Something like that would be powerfully differentiated.