New paper, which @pvh and I wrote together: “PushPin: Towards Production-Quality Peer-to-Peer Collaboration”.
It's about our hard-won experience trying to build peer-to-peer local-first software using CRDTs. Very practical, lots of insights. Take a look! https://martin.kleppmann.com/papers/pushpin-papoc20.pdf …
-
-
Great stuff! I wonder how CRDT convergence plays out in practice, e.g. - user 1 deletes a card, meanwhile - user 2 adds important info to the card The converged result might be deletion, but that's no good. Maybe the convergence is a 'conflict' data record?
3 replies 0 retweets 2 likes -
I think the deterministic protocol on how to merge is the main thing about CRDTs but I am nowhere close to being knowledgeable on CRDTs in terms of the hardcore math/CS of it all.
1 reply 0 retweets 0 likes -
Replying to @rplevy @chatur_shalabh and
It seems like you would just implement the merge function to do whatever suits your requirements, or is there a more CRDT-general answer than that?
1 reply 0 retweets 0 likes -
Replying to @rplevy @chatur_shalabh and
I haven't seen much writing on the UX considerations of eventually consistent systems. There's some writing specifically around meeting intuitions in text editing. You can also look to what tools like git do: another context where you can't blithely discard changes.
1 reply 0 retweets 1 like -
My sense is that a CRDT should preserve enough information to present what happened in a way the user will understand. That doesn't necessarily mean reifing the conflict. You might also maintain conflict-free representation of the world. If that makes sense.
2 replies 0 retweets 2 likes -
I haven't read the paper yet but will make time. Excited to get to it.
1 reply 0 retweets 1 like -
It's a good start but there is much more to say.
1 reply 0 retweets 2 likes
I'm glad you've learned so much! Have you considered something like a bliki for organizing and communicating working knowledge? The academic paper format feels a bit stuffy and static.
-
-
Well, we've got a Slack and a working implementation with a README and an ARCHITECTURE and a DESIGN and a HACKING doc, all of which cover a lot of the same stuff with less domain jargon.
0 replies 0 retweets 2 likesThanks. Twitter will use this to make your timeline better. UndoUndo
-
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.