Collaborative editor
Encyclopedia
A collaborative editor is a form of collaborative software
Collaborative software
Collaborative software is computer software designed to help people involved in a common task achieve goals...

 application that allows several people to edit a computer file
Computer file
A computer file is a block of arbitrary information, or resource for storing information, which is available to a computer program and is usually based on some kind of durable storage. A file is durable in the sense that it remains available for programs to use after the current program has finished...

 using different computers. There are two types of collaborative editing: real-time and non-real-time. In Real-time collaborative editing (RTCE), users can edit the same file simultaneously, where as in Non-real-time collaborative editing, the users do not edit the same file at the same time. (similar to revision control
Revision control
Revision control, also known as version control and source control , is the management of changes to documents, programs, and other information stored as computer files. It is most commonly used in software development, where a team of people may change the same files...

 systems). Collaborative real-time editors generally permit both the above modes of editing in any given instance.

History

The first instance of a collaborative real-time text editor was demonstrated by Douglas Engelbart
Douglas Engelbart
Douglas Carl Engelbart is an American inventor, and an early computer and internet pioneer. He is best known for his work on the challenges of human-computer interaction, resulting in the invention of the computer mouse, and the development of hypertext, networked computers, and precursors to GUIs...

 in 1968, in The Mother of All Demos
The Mother of All Demos
The Mother of All Demos is a name given to Douglas Engelbart's December 9, 1968, demonstration of experimental computer technologies that are now commonplace...

. Actual implementations of the concept took several decades to appear.

Instant Update was released for Mac OS
Mac OS
Mac OS is a series of graphical user interface-based operating systems developed by Apple Inc. for their Macintosh line of computer systems. The Macintosh user experience is credited with popularizing the graphical user interface...

 in 1991 from ON Technology
ON Technology
ON Technology was a software company in the United States. It was formed by Mitch Kapor after his departure from Lotus Software. The original plan of the business was to build an object-oriented PC desktop environment providing a variety of applications...

. Later, a version for Microsoft Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

 was released as well, allowing real-time collaboration across these two operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...

s. Instant Update relied on a work group server to coordinate documents updated in real time on multiple clients.

More recently, SubEthaEdit
SubEthaEdit
SubEthaEdit is a collaborative real-time editor designed for Mac OS X. The name comes from the Sub-Etha communication network in The Hitchhiker's Guide to the Galaxy series....

 is Mac-based, and leverages the Mac Bonjour
Bonjour (software)
In computing, Bonjour is Apple Inc.'s trade name for its implementation of Zeroconf, a group of technologies that includes service discovery, address assignment, and name resolution...

 communications platform. SubEthaEdit won numerous awards, and was initially offered free of charge. But later it became commercial because there were not enough voluntary donations to keep it free. The Gobby
Gobby
Gobby is a free software collaborative real-time editor available on Windows and Unix-like platforms. It was initially released in June 2005 by the 0x539 dev group....

 collaborative editor aims to be very similar to SubEthaEdit, and is cross-platform and open source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

.

The Web 2.0
Web 2.0
The term Web 2.0 is associated with web applications that facilitate participatory information sharing, interoperability, user-centered design, and collaboration on the World Wide Web...

 phenomenon has caused an explosion of interest in browser-based document editing tools. In particular, a product called Writely saw explosive user growth and was bought by Google in March 2006 (now called Google Docs & Spreadsheets). It provides simultaneous edits on the entirety of a document, though changes from other users are only reflected after the client program polling the server (every half-minute or so). Another early web-based solution was JotSpotLive, in which line-by-line simultaneous editing was available in near-realtime. However, after Google's purchase of parent company JotSpot in November 2006, the site was closed. Google Sites
Google Sites
Google Sites is a structured wiki- and web page-creation tool offered by Google as part of the Google Apps Productivity suite.- History :Google Sites started out as JotSpot, the name and sole product of a software company that offered enterprise social software. It was targeted mainly at...

 was launched in February 2007 as a refactoring of JotSpot, but it lacks the multi-user real-time abilities of JotLive. The Synchroedit (rich text) and MobWrite (plain text) projects have since emerged as two open-source attempts to fill the in gap real-time browser-based collaborative editing, though still unable to achieve true real-time performance, especially on a large scale architecture. EtherPad
EtherPad
Etherpad is a web-based collaborative real-time editor, allowing authors to simultaneously edit a text document, and see all of the participants' edits in real-time, with the ability to display each author's text in their own color...

 was the first web editor to provide a smooth, character-by-character real-time performance, something that previously was only available in desktop editors.

In 2009, Google started beta testing Google Wave
Google Wave
Apache Wave is a software framework for real-time collaborative editing online. Google Inc. originally developed it as Google Wave.It was announced at the Google I/O conference on May 27, 2009....

, a real-time collaboration environment which Google hoped would eventually displace email and instant messaging. EtherPad was subsequently acquired by Google, which allocated the EtherPad team to work within the Wave project. However, Google announced in August 2010 on its blog that it had decided to stop developing Wave as a standalone project, due to insufficient user adoption.

Technical challenges

The complexity of real-time collaborative editing solutions stems from communication lag. In theory, if communication were instantaneous, then creating a real-time collaborative editor would be no more difficult than creating a single-user editor, because a document could be edited using an algorithm similar to the following:
  1. Request an 'edit document' token from the server
  2. Wait until the server says it's our turn to edit the document
  3. Tell the server how to edit the document
  4. Release the 'edit document' token


However, the speed of communication is limited by network lag. This creates a fundamental dilemma: users need their own edits incorporated into the document instantly, but if they are incorporated instantly, then because of communication lag, their edits must necessarily be inserted into different versions of the document.

An example illustrates this problem. Suppose Bob and Alice start with a document containing the word Mary. Bob deletes 'M', then inserts 'H', to change the word into Hary. Alice, before she receives either edit from Bob, deletes 'r', then deletes 'a', to change it into My. Both Bob and Alice will then receive edits that were applied to versions of the document that never existed on their own machines.

Thus, the challenge of real-time collaborative editing is to figure out exactly how to apply edits from remote users, which were originally created in versions of the document that never existed locally, and which may conflict with the user's own local edits.

The most sophisticated solutions solve this problem in a way that does not require a server, does not use locking (all users can freely edit all parts of a document at the same time), and supports any number of users (limited only by the resources of the computers). UNA and SubEthaEdit
SubEthaEdit
SubEthaEdit is a collaborative real-time editor designed for Mac OS X. The name comes from the Sub-Etha communication network in The Hitchhiker's Guide to the Galaxy series....

 are examples of two programs that take this approach.

While these sophisticated approaches enable the best user experience
User experience
User experience is the way a person feels about using a product, system or service. User experience highlights the experiential, affective, meaningful and valuable aspects of human-computer interaction and product ownership, but it also includes a person’s perceptions of the practical aspects such...

, a basic collaborative editor can also be created in a client–server model. In a client–server scenario, one of the editor instances is assigned the role of collaboration server when the document is opened. This server ensures that other editors are kept in sync by determining network latency and acting as a time synchronization server. The server receives timestamp
Timestamp
A timestamp is a sequence of characters, denoting the date or time at which a certain event occurred. A timestamp is the time at which an event is recorded by a computer, not the time of the event itself...

ed notifications of changes made to the document by other users. It determines how those changes should affect its local copy, and broadcasts its changes to the collaboration pool. In some models, the changes are not reflected on a client until an official response is returned from the server, even if those changes were made locally.

This approach, while significantly less powerful, allows for basic collaboration at a relatively low cost. This makes it preferable in situations where processing resources are limited, such as on Apple's iPhone platform. NetSketch is an example of a program that uses this model.

In the past, Microsoft
Microsoft
Microsoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...

 and IBM
IBM
International Business Machines Corporation or IBM is an American multinational technology and consulting corporation headquartered in Armonk, New York, United States. IBM manufactures and sells computer hardware and software, and it offers infrastructure, hosting and consulting services in areas...

 have worked to add collaboration facilities to their existing architectures. Although marketed as real-time collaboration, these 'workspace' approaches require either document locking (so only one person can edit it at a time), or 'reconciliation' of conflicting changes, which is generally found by users to be unsatisfactory.

Recent developments

With advances in internet capacity, collaborative video editing is also becoming mainstream. Collaborative TV production is possible, in which the directors, producers and editors, all of whom contribute to the post-production
Post-production
Post-production is part of filmmaking and the video production process. It occurs in the making of motion pictures, television programs, radio programs, advertising, audio recordings, photography, and digital art...

 process, are able to work together remotely. Web-based non-linear editing systems allow collaborative editing of video, similar to the way in which collaborative text editors have worked for text. See Comparison of video editing software
Comparison of video editing software
This is a comparison of non-linear video editing software applications. See also a more complete list of video editing software.-General information:This table gives basic general information about the different editors:- System requirements :...

 and Real-time video editing
Real-time video editing
Real-time video editing is a system of editing video where it takes no longer to render a video than the length of that video clip itself. For example, after a 30 minute length of video is edited it needs to be rendered, and should the system take more than 30 minutes to render the clip it is not a...

.

The increasing popularity of WiFi enabled mobile devices, such as Apple's iPhone
IPhone
The iPhone is a line of Internet and multimedia-enabled smartphones marketed by Apple Inc. The first iPhone was unveiled by Steve Jobs, then CEO of Apple, on January 9, 2007, and released on June 29, 2007...

, has also driven the development of collaborative tools. While simplistic in comparison to real-time video editing software, these applications allow users of mobile devices to create and edit documents over the wireless network. NetSketch was the first collaborative application for the iPhone, and focused on real-time collaborative drawing.

Software

  • Abiword
    AbiWord
    AbiWord is a free and open source software word processor. It was originally started by SourceGear Corporation as the first part of a proposed AbiSuite. Development stopped when SourceGear changed their focus to Internet appliances. AbiWord was adopted by some open source developers and AbiWord...

     (multi-platform, although Mac OS X version does not allow collaboration) is a free software
    Free software
    Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

    , open source
    Open source
    The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

     editor that added a real-time collaborative editing plugin AbiCollab in the 2.6 release. This editor is the basis for the collaborative Write activity on the OLPC XO-1
    OLPC XO-1
    The XO-1, previously known as the $100 Laptop, Children's Machine, and 2B1, is an inexpensive subnotebook computer intended to be distributed to children in developing countries around the world, to provide them with access to knowledge, and opportunities to "explore, experiment and express...

    .
  • ACE
    ACE (editor)
    ACE - a collaborative editor is a platform-independent, collaborative real-time editor. It is a real-time cooperative editing system that allows multiple geographically dispersed users to view and edit a shared text document at the same time.-Introduction:...

     (Linux, Microsoft Windows, Mac OS X, Solaris, FreeBSD
    FreeBSD
    FreeBSD is a free Unix-like operating system descended from AT&T UNIX via BSD UNIX. Although for legal reasons FreeBSD cannot be called “UNIX”, as the direct descendant of BSD UNIX , FreeBSD’s internals and system APIs are UNIX-compliant...

    ) is a free software
    Free software
    Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

    , collaborative text editor.
  • CoWord
    CoWord
    CoWord is a software add-on to Microsoft Word to enable multiple users to edit the same document over the Internet with MS Word. It is a part of the CoOffice suite of collaboration tools for Microsoft Office....

     (Microsoft Windows) converts Microsoft Word into a real-time collaborative word processor and allows multiple users to collaboratively edit the same Word document at the same time.
  • GNU Emacs provides basic collaborative editing support under the X Window System
    X Window System
    The X window system is a computer software system and network protocol that provides a basis for graphical user interfaces and rich input device capability for networked computers...

    , using the "make-frame-on-display" command.
  • Gobby
    Gobby
    Gobby is a free software collaborative real-time editor available on Windows and Unix-like platforms. It was initially released in June 2005 by the 0x539 dev group....

     (Linux, Microsoft Windows, Mac OS X) is a free software
    Free software
    Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

    , open source
    Open source
    The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

     project.
  • ICT
    Intelligent Collaboration Transparency
    Intelligent Collaboration Transparency is an application sharing framework for sharing familiar single-user tools for collaboration purposes without modifying their source code. At the user level, unmodified heterogeneous applications can be shared and interoperated...

     is a framework that allows multiple users to edit a shared document with unmodified, heterogeneous single-user editors.
  • Microsoft SharePoint Workspace, previously known as Groove — a third party product acquired after its release by Microsoft — is a desktop application.
  • MoonEdit
    MoonEdit
    MoonEdit is a collaborative real-time editor. It supports Linux, Windows and FreeBSD. While it is free for non-commercial use, it is not free software / open source software.MoonEdit was originally written by Tom Dobrowolski under the name Multi-Editoro....

     (Linux, Microsoft Windows, FreeBSD) is free for non-commercial use and allows basic collaborative editing.
  • SubEthaEdit
    SubEthaEdit
    SubEthaEdit is a collaborative real-time editor designed for Mac OS X. The name comes from the Sub-Etha communication network in The Hitchhiker's Guide to the Galaxy series....

     (Mac OS X).
  • Microsoft Office
    Microsoft Office
    Microsoft Office is a non-free commercial office suite of inter-related desktop applications, servers and services for the Microsoft Windows and Mac OS X operating systems, introduced by Microsoft in August 1, 1989. Initially a marketing term for a bundled set of applications, the first version of...

     version 2010 (for Windows) and 2011 (for Mac) support simultaneous edits if the document is stored on a Sharepoint server or on Windows Live SkyDrive.

Browser-based

  • Adobe Buzzword
  • beWeeVee
    BeWeeVee
    beWeeVee is a real time co-operative technology currently implemented as a collaborative real-time editor, allowing several persons to edit a text document at the same time, and see all of the participants' edits in real-time, each with its own color. It is web-based and allows people using any...

  • collabedit.com
  • Etherpad
    EtherPad
    Etherpad is a web-based collaborative real-time editor, allowing authors to simultaneously edit a text document, and see all of the participants' edits in real-time, with the ability to display each author's text in their own color...

     - open sourced after Google acquired and shut down the company
  • Etherpad Lite - a Node.js based Etherpad written from scratch
  • fp-tools
  • Google Docs
  • Google Wave
    Google Wave
    Apache Wave is a software framework for real-time collaborative editing online. Google Inc. originally developed it as Google Wave.It was announced at the Google I/O conference on May 27, 2009....

     - Google's version of this product (named "Google Wave") is in the process of being discontinued, and elements of it are being migrated into other products of theirs; however, other companies and open source projects continue to offer software supporting (or aiming to support) the Google Wave Protocol.
  • Mozilla Skywriter: designed primarily for programming (As of January 2010 merged into Ajax.org's Cloud9 IDE project).
  • NotePub
    NotePub
    NotePub is an online notepad that allows for private, public, and shared notes. NotePub is also an open purpose wiki without a markup language. Notes can include files and images, and can be linked to other notes within NotePub, or to external websites. Content is organized chronologically and with...

    : an online public notepad with real time updates.
  • PrimaryPad
  • Secure Mobile Workspace enables users creating, sharing, and processing of Microsoft Office and OpenOffice.org documents directly in the browser.
  • ShowDocument
    ShowDocument
    ShowDocument is an online web application that allows multiple users to conduct web meetings, upload,share and review documents from remote locations.The service was developed by the HBR Labs company, established in 2007.- Features :...

  • Open Cooperative Web Framework: a Dojo Foundation Project that uses an Operational transformation
    Operational transformation
    Operational transformation is a technology for supporting a range of collaboration functionalities in advanced groupware systems. OT was originally invented for consistency maintenance and concurrency control in collaborative editing of plain text documents...

     algorithm to enable the creation of Cooperative web
    Cooperative web
    The Cooperative Web or Co-Web refers to a browser-based platform that promises to replicate the power of face-to-face communications via web-touch without sacrificing the quality of human interactions. A Co-Web enabled...

     applications. Work-in-progress Editor demo .
  • Novell Vibe
  • ThinkFree

Other real-time collaborative editing software

  • Borland
    Borland
    Borland Software Corporation is a software company first headquartered in Scotts Valley, California, Cupertino, California and finally Austin, Texas. It is now a Micro Focus subsidiary. It was founded in 1983 by Niels Jensen, Ole Henriksen, Mogens Glad and Philippe Kahn.-The 1980s:...

     CodeWright
    CodeWright
    CodeWright is a Windows Programmers Editing System for software developers originally marketed by Premia Corp. and developed by Premia co-founders Eric Johnson and Don Kinzer, initially released in 1991. Premia was acquired in April 2000 by Starbase Corp...

     has a CodeMeeting feature that supports chatting and exclusive file editing (1 user per file).
  • Cacoo
    Cacoo
    Cacoo is an Adobe Flash-based real-time collaborative diagramming application created by the Fukuoka, Japan based Nulab Inc. Cacoo features a large stencil set that allows users to create site maps, wireframes, flowcharts, network diagrams, mind maps, UML diagrams and others.Diagrams created using...

     is a real-time drawing and diagramming web application.
  • Eclipse
    Eclipse (software)
    Eclipse is a multi-language software development environment comprising an integrated development environment and an extensible plug-in system...

     has two plugins called DocShare and Saros
    Saros (software)
    Saros is an Eclipse plug-in for distributed collaborative text editing that can support arbitrarily many participants at once.It can be used for a variety of purposes ranging from simple remote code review, over Remote pair programming, through to variants of Side-by-side programming with more than...

    , that allow real-time collaborative editing of documents (DocShare) or projects (Saros).
  • EditGrid
    EditGrid
    EditGrid is a Web 2.0 spreadsheet service. It offers both a free-of-charge service to personal users and a subscription service to organisations and is available on a number of partner sites and channels....

     supports real-time event-driven collaborative editing of spreadsheets on the web.
  • eXpresso
    Expresso spreadsheet
    eXpresso is a hosted workspace for Microsoft Office communities. Excel spreadsheet management is the first application offered. It is among the growing number of Web 2.0, SaaS offerings in the online spreadsheet market...

     supports real-time asymmetric collaboration of Excel
    Microsoft Excel
    Microsoft Excel is a proprietary commercial spreadsheet application written and distributed by Microsoft for Microsoft Windows and Mac OS X. It features calculation, graphing tools, pivot tables, and a macro programming language called Visual Basic for Applications...

     spreadsheets in a browser.

  • LucidChart
    LucidChart
    LucidChart is a web-based diagramming software. This software is notable because it is built on web standards such as HTML5 and Javascript and provides real-time collaboration for the creation of graphical content...

     is real-time collaborative diagramming web application built using HTML5 and other web-standards
  • Marratech
    Marratech
    Marratech is a Swedish company that makes software for e-meetings .Marratech was founded in 1998, as a spin-off company from the at the Luleå University of Technology. Founders include Dr. Dick Schefström, Dr. Peter Parnes, Johnny Widén, Dr...

     is commercial software with a whiteboard function.
  • Pidoco
    Pidoco
    The Pidoco Usability Suite is a cloud-based collaboration software by Pidoco GmbH for creating, sharing and testing wireframes, mockups and prototypes of websites, mobile apps and enterprise software applications.- Pidoco Usability Suite :...

     is a commercial web-based real-type wireframing and prototyping editor.
  • TeamViewer
    TeamViewer
    TeamViewer is a computer software package for remote control, desktop sharing, and file transfer between computers. The software operates with the Microsoft Windows, Mac OS X, Linux, iOS, and Android operating systems. It is possible to access a machine running TeamViewer with a web browser...

     is a desktop sharing application that allows (among other things) two people to edit the same document at the same time.
  • Visual Studio.Net has a plugin called wave-vs.net that allow real-time collaborative editing to support pair programming
    Pair programming
    Pair programming is an agile software development technique in which two programmers work together at one workstation. One, the driver, types in code while the other, the observer , reviews each line of code as it is typed in...

     features.
  • WhiteBoardMeeting
    WhiteBoardMeeting
    WhiteBoardMeeting is a Skype Extra and a real time multi-user collaboration software. WhiteBoardMeeting allows users to draw vector graphics, insert text and images, edit existing objects...

     is a multi-user whiteboard for Skype (Windows Only).
  • Zoho Sheet provides browser-based real-time collaborative editing of spreadsheets.
  • Sandglaz is a real-time collaborative to do list and task management web application.
  • AGNotepad is a group to group multicast and unicast real-time collaborative text notepad of Access Grid using Java Programming.

Relevant patents and patent applications

Relevant documents include:

See also

  • Collaborative editing
    Collaborative editing
    Collaborative editing is the practice of groups producing works together through individual contributions. Effective choices in group awareness, participation, and coordination are critical to successful collaborative writing outcomes. Most usually it is applied to textual documents or...

  • List of collaborative software — Non-real-time collaborative software
  • Distributed computing
    Distributed computing
    Distributed computing is a field of computer science that studies distributed systems. A distributed system consists of multiple autonomous computers that communicate through a computer network. The computers interact with each other in order to achieve a common goal...

  • Operational transformation
    Operational transformation
    Operational transformation is a technology for supporting a range of collaboration functionalities in advanced groupware systems. OT was originally invented for consistency maintenance and concurrency control in collaborative editing of plain text documents...

  • Revision control
    Revision control
    Revision control, also known as version control and source control , is the management of changes to documents, programs, and other information stored as computer files. It is most commonly used in software development, where a team of people may change the same files...

  • Paint chat
    Paint chat
    A paint chat is an online chat room that allow its participants to draw together in real-time while they chat. The chat box is usually at the bottom, with the drawing area on top. Paint chats generally attract the same demographics as Oekakis...

  • Oekaki
    Oekaki
    is the Japanese term to describe the act of drawing, meaning "doodle or scribble".-Ekaki uta/drawing songs:In Japan, songs that describe how to draw animals and/or favorite characters are called "Ekaki Uta". These songs are supposed to help children remember how to draw something by incorporating...

  • Real-time text
    Real-time text
    Real-time text is streaming text that is continuously transmitted as it is typed or otherwise composed. It allows conversational use of text, where people interactively converse with each other.-Use over instant messaging:...


External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK