Collaborative Editor Group

Team Member

Adam: adam.torgerson[at]colorado[dot]edu


Final Report 4/27

Presentation Slides: pres.pdf

First Progress Report 4/4

Second Progress Report 4/13

Goal and Objective

I would like to create an initial prototype of a collaborative text editor, in the vein of SubEthaEdit to enable users to collaborate on a text document.


Context

Effective collaboration across time and distance has been a popular goal for some time now. But my recent experiences of trying to collaborate with others for group projects, especially for collaborative coding, there is not much out there besides SubEthaEdit, which is a closed commercial product that only runs on OS X. Given that my development environment is GNU/Linux and I prefer to use Open Source software, this is not an acceptable solution. In one instance of trying to collaboratively edit a document, I used a terminal reflection screen (VNC) to view a common file with another editor. Even under this setup only one person was able to type directly into the text file at a time.


SubEthaEdit uses the Rendezvous (a minimal configuration network discovery protocol) and IP network protocols to enable users to edit a a common document simultaneously. A user would launch the application, initiate a document, and enable sharing. Another user would then join the shared editing session. Each member would choose a unique color to display their contribution to the document. As the user types in their window, SubEthaEdit would display the resulting text immediately on the other user's view of the document.


SubEthaEdit also supports direct integration with instant message that would allow users to interact apart from the collaborative text. This feature allows for user interaction that supports the collaboration process.


Means


I propose the following high level tasks. First, the existing features of SubEthaEdit will be analyzed for its collaborative approach and implementation for elements that we can reuse and those that need to be improved upon. Based on the analysis, I will create an initial development plan that will emphasize software component reuse due to the short project deadline. I hope to reuse a good open source text editor and integrate the needed network support.

Specific Challenges







Relationship to Course

The proposed project directly addresses the theme of design for collaboration. I hope to integrate both a conceptual approach in understanding collaborative editing and a practical protocol which myself and members of my research group can use for collaborative code editing.