Building a collaborative document editing application
Now that we've examined various techniques to consider when building a collaborative application, let's put together a collaborative code editor using one of the most exciting contributions to Node to arrive in the last year: Operational transformation (OT).
For our discussion here, OT will be understood as a technology that allows many people to edit the same document concurrently—collaborative document editing. Google described their (now defunct) Wave project in the following way:
Collaborative document editing means multiple editors are able to edit a shared document at the same time. It is live and concurrent when a user can see the changes another person is making, keystroke by keystroke. Google Wave offers live concurrent editing of rich text documents.
Source: http://www.waveprotocol.org/whitepapers/operational-transform
One of the engineers involved in the Wave project was Joseph Gentle, and Mr. Gentle was kind enough to write a...