Hacker News new | past | comments | ask | show | jobs | submit login

The fundamental thing is that no merge or consensus algorithm can somehow telepathically know the real world intent of its users.

CRDTs can best be thought of as a way to eliminate spurious and false conflicts, leaving only real errors. Without them anyone who has ever coded a data merge knows you tend to get a ton of noise.

So basically you have reduced the problem surface area.




Can you expand on "spurious and false conflicts" here?


Not the OP, but I'm guessing he's referring to, for example, two users each correcting a typo in a different location in the document. From the perspective of the text CRDT, there's no conflict, and users are likely to agree. Raising a "file edited simultaneously, choose which version to use" error would be a "spurious and false conflict" in this sense.

Note that from a different user perspective, say a code document, such a conflict is actually correct and desired. So it's all about context.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: