State-based CRDTs: Maps

In this blog post, we'll cover the idea of CRDT maps, and how we could create them and utilize them in common scenarios. A prerequisite for this talk is some general knowledge of CRDTs, especially observed-remove sets [https:…

State-based CRDTs: Bounded Counter

Originally, I didn't want to make a separate blog post about design behind bounded counters, but since beside original paper [https://pages.lip6.fr/syncfree/attachments/article/59/boundedCounter-white-paper.pdf] and a very few implementation living in the…

Optimizing state-based CRDTs (part 2)

In this blog post we'll continue exploring the ideas behind optimizing state-based CRDTs. This is a third post from the series. If you haven't read them before this article and don't feel familiar with…

Optimizing state-based CRDTs (part 1)

Other posts from this series: * An introduction to state-based CRDTs [https://www.bartoszsypytkowski.com/the-state-of-a-state-based-crdts/] * Optimizing state-based CRDTs (part 1) * Optimizing state-based CRDTs (part 2) [https://www.bartoszsypytkowski.com/optimizing-state-based-crdts-part-2/] * State-based CRDTs: BoundedCounter [https://www.bartoszsypytkowski.com/state-based-crdts-bounded-counter/] * State-based CRDTs:…

An introduction to state-based CRDTs

Other posts from this series: * An introduction to state-based CRDTs * Optimizing state-based CRDTs (part 1) [https://www.bartoszsypytkowski.com/optimizing-state-based-crdts-1/] * Optimizing state-based CRDTs (part 2) [https://www.bartoszsypytkowski.com/optimizing-state-based-crdts-part-2/] * State-based CRDTs: BoundedCounter [https://www.bartoszsypytkowski.com/state-based-crdts-bounded-counter/] * State-based CRDTs:…