- Tracking science manuscripts under revision control systems



Update 2014-09-06: I wanted Scriptoria to be a group effort, something built by several scientists, especially since I never intended to stay in academia after the Ph.D. I failed to create enough momentum around the project, so I'm moving on...

There is widespread dissatisfaction with the way scientific publishing is done, but fortunately many (cheaper) alternatives are emerging. Among these alternatives is git (and revision control systems). Karthik Ram recently wrote a piece on the use of git in science: Highly suggested reading.

The put it bluntly: revision control systems are more modern and efficient than our peer-review system (my words, not his). With git and github (a hosting service for git), changes are tracked, with the full history of the document preserved in the repository . Collaborators can easily fork the repository of the manuscript, make changes, and then push back the changes to a main repository.

Git was built to allow potentially thousands of developers to work on the same code, create branches to test new ideas, and push back their changes (if they want to merge everything into a single version). Better: websites like GitHub, BitBucket, Google Code, Microsoft's CodePlex, or Gitorious (itself an open source project), allow the users to create open git repositories free of charge, with wiki systems and bug tracking included.

Bug tracking is particularly great for science. Bug tracking systems are essentially the software equivalent of asking a revision in a peer-review. Found a problem with some paper? Open a freaking issue! Open manuscripts and open reviews, all free, and all this thanks to git, an open-source piece of software originally written for the Linux kernel.

Git, and other similar systems, are potentially very disruptive and not only for science, see Clay Shirky's great talk on the subject. These systems were built by software engineers with a great deal of experience on close collaborations. Several scientists are already using git to write manuscripts... the problem is, there is no way to search these manuscripts, no way to know where they are.

Git et al. are decentralized and it's fine. Actually, I would rather not have all scientific manuscripts at the same place. However, we need a tool to track the manuscripts being developed on github, bitbucket, google code. We need this tool both to browse these open manuscripts but also to create incentives for scientists to push their manuscripts online as soon as possible.

This is, a project to track manuscripts being written on github, bitbucket, gitorious, and other hosting services git revision control systems. The goal of Scriptoria is not to host repositories but simply track them in the various hosting services, allow them to be search, and offer a simple API. I see the project as a thin layer over an already well-established system. Scriptoria is not ready (as of 2013.07.22), it's just started! The code will be developed on github and everyone is free to contribute. Scott Chamberlain already suggested (via an issue!) a way to track the manuscripts...

let world = "世界" in print $ "Hello " ++ world ++ "!"