Much has been written about the need for scientists to share code used in the production of scientific papers. Sharing is now generally seen as an essential component of scientific reproducibility. Yet even if codes are shared, researchers may not be able to run them: they may require a special environment or platform (MATLAB, IDL, …) that is unavailable on local machines, and the input data delivered by the author may be too large to download on reasonable timescales. So how about a platform that will stage the code and the data on behalf of the author and allow third parties to run the code? This is the idea behind a platform launched in March 2012 and called RunMyCode.org. It was developed by Victoria Stodden, Christophe Hurlin, and Christophe Perignon and described in this paper: “RunMyCode.Org: A Novel Dissemination and Collaboration Platform for Executing Published Computational Results” (free download).
The platform targets the computational academic community in any field, but the 100 or so codes served there appear to be largely from social science and financial analysis, and so far there have been 8,760 unique visitors to the site. While there is one code on image processing, and none that are purely astronomy, there is no reason why astronomers cannot take advantage of a platform such as this.
RunMyCode.org builds on the practice of two Stanford scientists: geophysicist Jon Claerbout and statistician David Donoho. In the 1990’s, they made simulations and data sets accessible over the internet, along with MATLAB scripts to reproduce them, and insisted that their students follow this approach. RunMyCode provides a modern instantiation of this technique, currently at no cost to the author. It allows authors to create a webpage that is a companion to a published paper, and visitors can run the code from this page. The code and data are stored on the cloud.
The web page itself contains three parts, as shown in the figure above: information about the paper, information about the coders, and a part where visitors may run the code, change parameters or input their own data sets. Authors do not need any web authoring skills, and are stepped through the process of creating a page. The editorial team validates the code before it goes live. The service currently supports C++, Fortran, MATLAB, R and Rats, and more languages are planned.
What are the benefits of RunMyCode to coders? The developers list these:
- Allows researchers and referees to run code and validate results.
- Encourages ease of use of code.
- Reduces replication of coding effort.
There is a companion blogpost on RunMyCode, kindly pointed out by Ms. Alice Allen, at the International Science Grid This Week- visit http://www.isgtw.org/feature/how-can-computational-science-surpass-software-error-plateau.