One thing I don't understand CRDT hype is it doesn't solve semantics conflict problem, and solving it on app level would also be better by-passing CRDT completely. And one more thing, real-time collaboration just mean road without sign, lines, traffic light. Having process in place, in async way, is considerably more efficient.
I'm currently looking into using CRDTs for a side project, and would love to pick your brain:
CRDTs don't solve the semantic issue of a conflict, but nothing ever will, because the semantics are defined by business requirements, right?
Isn't the idea behind CRDTs to develop a set of "primitives" upon which one can build conflict free data structures?
And isn't all the hype about CRDTs a result of the fact that providing those primitives in a serverless way (ie, without requiring a central authority) was a hitherto unsolved problem?