I've mentioned this informally to a few people, but it came up again in discussion and I thought maybe I'd bring the idea to a wider audience.
TowTruck (https://towtruck.mozillalabs.com/) is a realtime collaboration framework developed by Mozilla (but not firefox-specific). It provides the real-time communication infrastructure for collaboration on websites. It could be an interesting foundation for something like Flow.
TowTruck has a plug-in architecture for custom editors. Visual Editor would use this to handle the synchronization within a visual editor widget. Tow Truck would provide the "find a friend", "real time chat" and other collaboration plumbing. Flow would provide the overall UX design for the collaborative process, especially the non-real-time archival parts.
Anyway, I think Tow Truck is an interesting project, and it would be interesting to try to avoid reinventing parts of the wheel. I'm interested in others' thoughts. --scott
Dumb question: so, would this be an alternative to Etherpad lite integration with MediaWiki via the EtherEditor extension?
Nemo
On Sun, Jul 28, 2013 at 10:10:25PM +0200, Federico Leva (Nemo) wrote:
Dumb question: so, would this be an alternative to Etherpad lite integration with MediaWiki via the EtherEditor extension?
Yes and no.
There are definitely multiple options here, but here's the situation as I see it:
* EtherEditor is in a broken state because it was written for an earlier version of Etherpad Lite, so we'd need to rewrite some of the EPL plugins and API access methods that I wrote initially if we wanted to bring it back.
* Etherpad Lite doesn't really play well with wikitext, and its formatting options are only a small subset of what we'd need to support in MediaWiki, which means we either need to use the old method of editing wikitext source or build support for tables, definition lists, and more into EPL core.
* It's been almost a year since I started working on EtherEditor and put the etherpad.wmflabs.org instance up, and EPL still isn't puppetized.
* Towtruck is built with the idea of helping people in mind - so for things like helping new users or working together on an existing HTML form, it makes a lot of sense.
* Towtruck also has better support for non-standard editing systems (like VisualEditor, for example), so we'd probably be better off using it in the long run and not having to worry about writing up-to-date plugins for supporting all possible wikitext constructs and their visual representations - VisualEditor already handles that, so we can just offload it.
That being said, maybe the VE team already has different plans, e.g. to use something like ShareJS, which is a little lighter-weight and would give them the ability to customize the interface a lot more.
Hope that helps :)
Mark has answered this question pretty well. From my perspective it's the discovery and "work together" part (chat, etc) of Tow Truck which is most worth exploring in the short term (and possibly adopting). I'm (personally) less concerned with how the editing gets done (for initial demo purposes at least) than with what we learn about having groups of editors find each other, communicate, and collaborate. Tow Truck has a pluggable system for editor components; I expect the first work will be done with whichever editor is easiest to plug in.
IIRC Tow Truck has an existing editor for <textarea>s, so the first demo might well use the existing PHP form-based editor. Once the basics are done, and assuming we like the collaborative model and mechanism in the basic demo, then yes it would be interesting to see different editor plugin options. I suspect Mark and I would work on hooking up VE next, because we are masochists. --scott
wikitech-l@lists.wikimedia.org