(no title)
felipefar | 1 year ago
Even so, the discussion surrounding them made me excited by the possibility of implementing conflict-free (or fine-grained conflict resolution) algorithms over file-based storage providers (Dropbox, Syncthing, etc.).
josephg|1 year ago
I know a bunch of ways to solve this technically. But I'm just not convinced its a real problem in most systems.
(I have heard of it being a problem for someone using yjs for a 3d modelling tool. While dragging objects, they created persistent edits with each pixel movement of the mouse. But I think its smarter to use ephemeral edits for stuff like that - which aren't supported by most crdt libraries.)
Git also suffers from this problem, by the way. Repositories only grow over time. And they grow way faster than they would if modern CRDT libraries were used instead. But nobody seems bothered by it. (Yes, you can do a shallow clone in git. But almost nobody does. And you could also do that with CRDTs as well if you want!)
Vinnl|1 year ago
Edit: or maybe that was the concern, but this other concern exists too :)
jakelazaroff|1 year ago
shipp02|1 year ago
jchanimal|1 year ago
[1] https://github.com/fireproof-storage/fireproof
jitl|1 year ago
LAC-Tech|1 year ago
There's nothing inherent in the concept of a CRDT that requires you to leave behind a trail of historical operations or elements.
You'd be better off directing your criticism and specific implementations than making this blanket statement about what is, at the end of the day, a set of mathematical laws that certain data types / databases follow.
eviks|1 year ago
orthecreedence|1 year ago