(I'm getting tiiired of this...)
I'm looking at SynchroEdit, a development project to allow "synchronous editing for the web". Let us, for one second, forget that the web was conceived to be two-way, synchronously editable, from day one. (Hah! Tim even wrote WordWideWeb in CamelCase!!!) Looking at the architecture diagram I am struck by the sheer absurdity of it.
Why absurdity? Because a full 80% of the work SynchroEdit needs to create various JAVA and AJAX server modules and client libraries to accomplish, could be solved and done by a technology we've had for almost 10 years and use everyday. You're using part of that technology right now: HTTP 1.1. I spoke a bit about the various commands HTTP specifies recently.
HTTP PUT, combined with Access Control Lists (ACL) and a Version Control System (VCS), both technologies that have been in real-world use for years, and an existing JavaScript-based WYSIWYG library, you can achieve the same effect as SynchroEdit seeks. In fact I have seen this very system in active use.
I am further shocked by some of the names associated to SynchoEdit: The architecture diagram specifies Mozilla support only. Mozilla supports HTTP PUT. Not only is SocialText funding this but Joi himself, who sits on the Mozilla board also, as well. Did I miss a memo? Why was I not consulted? ;)
"Those who do not know history are doomed to repeat it."
That and continuously reinventing the wheel... and wheels within wheels... :p