Saros (software)

Saros[1] is an Eclipse plug-in for distributed collaborative text editing that can support five[1] participants at once (typically two or three). 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 two participants.

Functionality

All members of a session have an identical copy of Eclipse projects and Saros keeps these copies in sync as editing progresses. At the beginning of a session, Saros will automatically synchronize the contents of the Eclipse project from the initiator of a session ("host") to the other participants.

During the session, markers in every participant's viewport will indicate who is currently seeing what and who made recent changes where ("awareness information"). Explicit highlighting of text for others is done by means of simple text selection which will be shown in a color that indicates who performed the selection.

Separate audio conferencing (such as Skype) completes the collaboration scenario. Basic whiteboard sketching functionality is built in.

Underlying technology

With multiple concurrent writers, write conflicts can occur. Saros will resolve them consistently by means of the Jupiter algorithm (an architecture for operational transformation).

Saros uses an XMPP/Jabber server for session initiation. It will also use XMPP for subsequent communication if and insofar as some participants cannot be reached directly via IP (typically because their computer is behind a firewall or NAT). However, Saros uses Socks5 to provide low-latency, high-bandwidth connections whenever possible and is able to apply UPnP for traversing the NATs of typical home networks.

User Experience

Compared to cooperation via screensharing, working with Saros has a number of advantages:[2]

The latter (if used wisely) can be advantageous even in comparison to local pair programming.

License

Saros is an open source project under GPL. It is hosted at SourceForge.[3]

See also

References


This article is issued from Wikipedia - version of the 1/22/2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.