4 ms·
I found this hard to read. You state “I will explain later” a number of times. It would be better to hold off introducing the topic until it is more contextual
by iovrthoughtthis 8y ago
I found this hard to read.
You state “I will explain later” a number of times. It would be better to hold off introducing the topic until it is more contextual to the reader. It breaks the flow of your writing.
The text could be broken up into more paragraphs.
You could use some more headings to break up sections:
1. What is a CRDT
2. What problem do they solve and some simple examples.
3. State based solutions
4. Operator based solutions
5. Join-semi lattice
6. Putting it all together.
In your second join-semilattice diagram it’s not obvious that the two blue nodes are being merged into the green.
The pseduo code you’ve included for the g-counter, 2p-set and or-set are quite unintuative imo.
I’m probably not your target audience but I read a lot of academic writing now and I think this could be better.
Content is great though, didn’t know what a join-semi lattice was before hand so thanks a lot!
- lewisjoe 8y agoHonestly, CRDTs are quite complicated to understand. No amount of blog posts, research papers or diagrams will truly click (for most). And like somebody else said in comments, most articles on CRDTs assumes the audience are math people. I'm working on a series of blog posts that slowly uncover how real-time collaboration algorithms and data-structures work – with all the necessary math concepts explained in simple terms first. Will publish them out as soon as they take a good shape.
- phedkvist 8y agoI agree it is quite difficult to explain these concepts in simple terms. I spent a lot of time reading academic papers, as well as reading blog posts in order to grasp these concepts. Good luck with your articles, where can I read them once you have published them?
- iovrthoughtthis 8y agoTrue but I was commenting on the writing, not the concepts.
- phedkvist 8y agoThanks for the feedback. Great that you learned something. The CRDT papers don't explain the join-semilattice that much, it's only mentioned briefly, even though it's important in order to understand the theory behind CRDTs.