Re:Why CRDT didn't work out as well for collaborative editin...
by blattimwind on Saturday May 11, 2019 @03:22PM
(#19887927)
The interesting thing about OT is that almost every non-trivial editor uses that as its model, because it makes undo/redo very simple.
Re:Why CRDT didn't work out as well for collaborative editin...
by raphlinus on Saturday May 11, 2019 @05:02PM
(#19888377)
xi-editor pioneers a hybrid where "identifiers" are actually the tuple of revision and position. The motivation is to buy back some of the performance edge that OT has because of its use of position. I think if you are going to do CRDT it's pretty compelling, but that's also somewhat orthogonal to the complexity concerns raised in my original post.
Re:Why CRDT didn't work out as well for collaborative editin...
by jahewson on Saturday May 11, 2019 @07:05PM
(#19888932)
Interesting - that’s definitely compelling. In a nutshell what exactly is the issue with IME?
Re:Why CRDT didn't work out as well for collaborative editin...
by raphlinus on Saturday May 11, 2019 @07:10PM
(#19888964)
Robert Lord's comments on the issue are probably the best explanation, written with the benefit of hindsight.
[0]: https://github.com/xi-editor/xi-editor/issues/1187#issuecomm...
As you say, both OT and CRDT come with a “tax” in that you must structure your application’ edits in a way that they can interpret. However, this is easier with OT for the text editing case, as OT uses position based addressing, whereas CRDT is identifier based (I’m assuming this is where the canonical IME issue mentioned comes from - somebody please correct me if I’m wrong).