Four simple recommendations to encourage best practices in research software [version 1; referees: 3 approved]

Scientific research relies on computer software, yet software is not always developed following practices that ensure its quality and sustainability. This manuscript does not aim to propose new software development best practices, but rather to provide simple recommendations that encourage the adoption of existing best practices. Software development best practices promote better quality software, and better quality software improves the reproducibility and reusability of research. These recommendations are designed around Open Source values, and provide practical suggestions that contribute to making research software and its source code more discoverable, reusable and transparent. This manuscript is aimed at developers, but also at organisations, projects, journals and funders that can increase the quality and sustainability of research software by encouraging the adoption of these recommendations.

[1]  Carole A. Goble,et al.  Better Software, Better Research , 2014, IEEE Internet Comput..

[2]  Valmir C. Barbosa,et al.  On best practices in the development of bioinformatics software , 2014, Front. Genet..

[3]  Ian M. Mitchell,et al.  Best Practices for Scientific Computing , 2012, PLoS biology.

[4]  Rafael C. Jimenez,et al.  Top 10 metrics for life science software good practices , 2016, F1000Research.

[5]  Andreas Prlic,et al.  Ten Simple Rules for the Open Development of Scientific Software , 2012, PLoS Comput. Biol..

[6]  Erik Schultes,et al.  The FAIR Guiding Principles for scientific data management and stewardship , 2016, Scientific Data.

[7]  Darrel C. Ince,et al.  The case for open computer programs , 2012, Nature.

[8]  Janice Singer,et al.  How do scientists develop and use scientific software? , 2009, 2009 ICSE Workshop on Software Engineering for Computational Science and Engineering.

[9]  Kai Blin,et al.  Ten Simple Rules for Taking Advantage of Git and GitHub , 2014, bioRxiv.

[10]  Vincent J. Henry,et al.  OMICtools: an informative directory for multi-omic data analysis , 2014, Database J. Biol. Databases Curation.

[11]  Maria Jesus Martin,et al.  BioJS: an open source JavaScript framework for biological data visualization , 2013, Bioinform..

[12]  Brian A. Nosek,et al.  How open science helps researchers succeed , 2016, eLife.

[13]  Daniel S. Katz,et al.  Software citation principles , 2016, PeerJ Comput. Sci..

[14]  Yasset Perez-Riverol,et al.  Open source libraries and frameworks for mass spectrometry based proteomics: A developer's perspective , 2014, Biochimica et biophysica acta.

[15]  Peter Ebert,et al.  Ten Simple Rules for Developing Usable Software in Computational Biology , 2017, PLoS Comput. Biol..