[Sugar-devel] [ANNOUNCE] Groupthink 0.1 pre-alpha
Martin Edmund Sevior
martines at unimelb.edu.au
Thu Jan 15 03:02:38 EST 2009
Thanks very much! I'm very interested in looking at the source code and data structures.
These kind of problems are exactly what abicollab (as used by Write) solves.
I have given some detailed presentations about this. You can find one here:
(the ogg version)
and wiki write up:
Maybe these ideas can help.
From: sugar-devel-bounces at lists.sugarlabs.org on behalf of Benjamin M. Schwartz
Sent: Thu 1/15/2009 3:25 PM
To: Martin Edmund Sevior
Cc: bens at alum.mit.edu; Sugar Devel; Chris Ball
Subject: Re: [Sugar-devel] [ANNOUNCE] Groupthink 0.1 pre-alpha
-----BEGIN PGP SIGNED MESSAGE-----
Martin Edmund Sevior wrote:
> How do you solve "internet lag".
> User A puts a character "A" in position 10, then before user B see sees
this (because of the finite propagation time), he puts character "B" in
> Who wins? You just have to make sure the the document remains the same
for both users.
This is, indeed, the central problem. For the moment, the answer is:
Groupthink does not support full documents, only short snippets of text.
I have prototyped a data structure that I believe can coherently resolve
these sorts of edit conflicts in long documents without any negotiation,
but it remains to be seen if the design will work.
In general, Groupthink's approach (described at length in docstrings in
the code) is to write each data structure in such a way that any two users
who have observed the same set of messages will arrive at the same state,
regardless of the order in which those messages are received. The hard
part is figuring out how to do this for each kind of data structure.
However, once it is working, the code can be reused for many purposes
without needing to understand how it works.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (GNU/Linux)
-----END PGP SIGNATURE-----
Sugar-devel mailing list
Sugar-devel at lists.sugarlabs.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Sugar-devel