I'm under the impression that the closure-library based Google Docs
now includes a client side operational transformation component [1].
Will this OT code eventually be added to closure-library? I'm sure
that many users would be interested even if we needed to reimplement
the server side portion.
Out of curiosity, how similar is the Google Docs OT to Google Wave protocol [2]?
Thanks,
Andy
[1] http://www.codecommit.com/blog/java/understanding-and-applying-operational-transformation
"""
What’s more, Google Docs recently revamped their word processing
application with a new editor based on operational transformation.
While there hasn’t been any word from Google on how exactly they
handle “compound OT” cases within Docs, it looks like they followed
the same route as Wave and Pulse (the tell-tale sign is a perceptible
“chunking” of incoming remote operations during connection lag).
"""
[2] http://www.waveprotocol.org/whitepapers/operational-transform
Should be:
http://wave-protocol.googlecode.com/hg/whitepapers/operational-transform/operational-transform.html
i don't know of any effort to add an OT client library to
closure-library, though.
Nick
ps--that's a good blog post!
> On Tue, Sep 7, 2010 at 3:01 PM, Nick Santos <nicks...@google.com> wrote:
> For a number of reasons, I don't think we'll be able to discuss the
> implementation of non-open-source google projects on this mailing
> list. sorry. :)
Not a problem. :) Leaving the Google Docs implementation out of it...
A good chunk of the code required to do OT is open sourced in the
wave-protocol project. However, the client portion of the code [1] is
built on GWT.
My real question is, does/will a closure-library based alternative to
this client side code exist?
My reason for asking is that my project is built on closure-library
(not GWT). We could try to mix closure and GWT in order to get the
wave OT, but I was hoping a cleaner solution existed.
> i don't know of any effort to add an OT client library to
> closure-library, though.
This answers my question. Thanks.
On Tue, Sep 7, 2010 at 12:23 AM, Daniel Nadasi <dna...@google.com> wrote:
> As for the other question, it would seem unlikely to me that an OT client
> library would be released as part of Closure. Part of the Wave OT code's
> magic is that GWT allows cross-compilation into JS so that the client and
> server have exactly the same code, which is necessary for OT to work.
I agree that having GWT cross-compilation makes the implementation
easier. However, to me, it seems that the client and server using the
exact same source code is not a requirement of OT. Rather the client
and server just need to be written to work together (but they could be
implemented in different languages/code bases).
> Therefore having a pure JS library for OT seems tricky at best.
Thanks,
Andy
Thanks for the feedback Nick and Daniel.
Not a problem. :) Leaving the Google Docs implementation out of it...
> On Tue, Sep 7, 2010 at 3:01 PM, Nick Santos <nicks...@google.com> wrote:
> For a number of reasons, I don't think we'll be able to discuss the
> implementation of non-open-source google projects on this mailing
> list. sorry. :)
A good chunk of the code required to do OT is open sourced in the
wave-protocol project. However, the client portion of the code [1] is
built on GWT.
My real question is, does/will a closure-library based alternative to
this client side code exist?
My reason for asking is that my project is built on closure-library
(not GWT). We could try to mix closure and GWT in order to get the
wave OT, but I was hoping a cleaner solution existed.
This answers my question. Thanks.
> i don't know of any effort to add an OT client library to
> closure-library, though.
I agree that having GWT cross-compilation makes the implementation
On Tue, Sep 7, 2010 at 12:23 AM, Daniel Nadasi <dna...@google.com> wrote:
> As for the other question, it would seem unlikely to me that an OT client
> library would be released as part of Closure. Part of the Wave OT code's
> magic is that GWT allows cross-compilation into JS so that the client and
> server have exactly the same code, which is necessary for OT to work.
easier. However, to me, it seems that the client and server using the
exact same source code is not a requirement of OT. Rather the client
and server just need to be written to work together (but they could be
implemented in different languages/code bases).
http://code.google.com/p/google-diff-match-patch/
-Andy