Parser 2011/Real-time collaboration

People interested

 * Brion
 * Trevor
 * Neil
 * Paul Charlton
 * Ashish Dubey
 * Mark Holmquist
 * Onny
 * Rexford
 * AwesomeSaucer

Benefits

 * Could greatly enhance community bonds by allowing mentors and newbies to edit together
 * Get to consensus faster when editing an article
 * More of a social space
 * Especially good for focused groups like WikiProjects that depend on small numbers interacting intensely
 * Most groups who need to collaborate fast already use Google Docs or Etherpad or some such; (the WMF does a lot already) which makes translation to public wiki form tedious. This could bring them back to public wikis
 * Remove all Edit Conflicts

Obstacles

 * Wikitext is not just formatted text, has embedded templates, parser functions, etc. etc.
 * MediaWiki's model is one user : one edit.
 * Could resolve this by creation sessions owned by a user, having others join, then adding other usernames to commit comment
 * If combined with visual editing, can make the software stack even more complex.

Relevant concepts

 * Operational transformation -- an algorithm to manage near-simultaneous edits on the same short span of text, where many clients receive each other's manipulations in a different order but must arrive at a consistent view.
 * histcomb.js -- a user script that combines multiple sequential edits by the same user in a single entry in the history log.
 * MIAWiki for Real-Time Mass Collaboration, fully functional system based on AIMS and SIMS concepts
 * AIMS - Atomized Information Managenet System
 * SIMS - Secondary Information Management System

Status
Believed to be interesting enough to explore, not officially on the agenda.

Mark Holmquist posted to the wikitech-l list announcing a test instance of MediaWiki with an experimental extension enabling this feature:

Other pages

 * Project requirements
 * Project tasklist
 * EtherPadWebApi
 * Extension:EtherEditor
 * VisualEditor/Design/Realtime collaboration
 * Extension:TogetherJS

Edit Conflict links

 * m:Help:Edit conflict (or w:en:Help:Edit conflict)
 * Manual:Hooks/EditPageBeforeConflictDiff
 * San Francisco Hackathon January 2012/Teams
 * Micro Design Improvements
 * Edit conflict handling suggestion (2004)
 * One and Two sets of notes from Wikid77 in 2013
 * Edit conflict (article)

Code repository

 * parsers/wikidom
 * EtherEditor
 * ep_wikitext plugin for editing wikitext in EtherEditor