The case for open computer programs
Abstract
Scientific reproducibility now very often depends on the computational method being available to duplicate, so here it is argued that all source code should be freely available. Most scientific papers published today rely on computer programs for data collection and manipulation. Writing in the Perspective pages in this issue of Nature, Darrel Ince and colleagues argue that the policies of most journals and funding bodies towards the release of computer codes as part of the publication process are obsolete. They say that the full release of actual source code should be the norm for any scientific results dependent on computation, with an agreed list of exceptions applicable only to rare cases. Current policies range from a requirement for release of the relevant computer programs on request to Nature's less stringent stipulation of a 'natural language' description of computer algorithms. Scientific communication relies on evidence that cannot be entirely included in publications, but the rise of computational science has added a new layer of inaccessibility. Although it is now accepted that data should be made available on request, the current regulations regarding the availability of software are inconsistent. We argue that, with some exceptions, anything less than the release of source programs is intolerable for results that depend on computation. The vagaries of hardware, software and natural language will always ensure that exact reproducibility remains uncertain, but withholding code increases the chances that efforts to reproduce results will fail.