Communication has long been the most-touted invention of the modern era â€“â€“ first telecommunications, then the Internet spawned a society where people are not only able to communicate instantaneously, they are able to do so with complete ease and near ubiquity. Services like Facebook, Twitter, and the various Instant Messaging protocols connect us to each other at nearly every breathing minute.
A byproduct of communication â€“â€“ the one I’d like to focus on today â€“â€“ is collaboration. While communication and communication technologies provide the inroads to facilitate collaboration, the ability to transmit data of any form to one another instantaneously is not enough to genuinely collaborate. As network technologies, then web technologies, then rich media technologies began to grow, however, we have seen increasingly frequent attempts to provide a complete system for collaboration. Videoconferencing packages, for instance, provide unique features such as shared whiteboards or screens, allowing for work to happen across the globe in ways never before imaginable. However, this is still a fundamentally communication-oriented development, which while immensely beneficial to collaborative efforts, doesn’t necessarily address the ultimate goal of building a single product, paper, or project.
So, how do we better use technology to facilitate direct collaboration?
There are several bits of software that attempt to address this issue head-on, but being by developers, they largely address developers’ own needs â€“â€“ the rest of the world hasn’t necessarily woken up to technology’s potential in this regard, and so very little attention and effort have been raised towards furthering these projects in other directions.
These pieces of software are known as VCSs, or Version Control Systems. Several prominent examples are CVS, SVN, Git, and TFS. Three-lettered length aside, they all tout a number of core features â€“â€“ the ability to keep track of revisions and who made them, the ability to view or roll back to any of these revisions, and the ability to merge two versions of a file if, say, they were both being worked on at once. While very efficient, useful, and relatively simple for people working on software, these systems are on the difficult side for even moderately technologically proficient users, and setting them up is a nearly insurmountable task, one even seasoned experts tend to dread.
So, what’s out there that’s easier for the general public to use? The solution that my Amsterdam study abroad class appears to have chosen is to repurpose a wiki for the task. And at first glance, it appears to be a fitting choice â€“â€“ wikis generally feature user and revision tracking, and at least a rudimentary form of diff merging. However, they are also a very restrictive medium â€“â€“ one wouldn’t be able to build a trifold brochure, or a technical manual on them with any sort of practicality: while it may be possible to format the wiki to look properly in these regards, these things tend to be done with real desktop software, with real formatting tools and rich output. Adobe has a solution for its Creative Suite that’s slowly evolving, but what of the rest of the business and academic market?