It might be interesting to have a specification for collaborative text editing which can be implemented by any text editor. This way groups could edit documents at the same time from whatever interface they like.
I seems like the atom text editor has published such a standard Teletype for Atom, although I’m not sure how easy it would be for other editors to implement it. There is also this discontinued project tandem that goes more into the direction of being editor agnostic.
I’m new both to Goblins and distributed systems, so I was wondering if Goblins would be a good tool to develop such a standard. This might also help me understand the scope and use of Goblins a bit better, by putting it in the context of a specific problem. Any thoughts on this ?
At FOSDEM there was a question of CRDTs and how they relate to the Goblins model. The answer was that CRDTs are not an alternative to what Goblins provides, but that a CRDT data structure could be sent by Goblins through the netlayer (paraphrasing from memory here, so correct me if I’m wrong). That could enable a collaborative editing application.
Nice thanks for the references. It looks like CRDT is a reasonable building block for such an app.
The project you just mentioned is using Automerge (a CRDT library) on top of p2panda which is the netlayer. So I guess one could use Goblins as the netlayer instead. It seems like Automerge is based on json, so I guess a sensible choice for a CRDT in Gobelins would be based on s-expressions ?
The OCapN group has agreed to move forward with Syrup as the serialization format. Regarding netlayers, Goblins is not a netlayer. In OCapN, a netlayer is a medium for transporting messages. Some examples are Tor and libp2p.