Four simple recommendations to encourage best practices in research software

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.

Daniel S. Katz | Yasset Perez-Riverol | Mateusz Kuzak | Carole Goble | Monther Alhamdoosh | Allegra Via | Manuel Corpas | Radka Svobodová Vareková | Victoria Stodden | Bérénice Batut | Steve Crouch | Brane Leskošek | Robert Pergl | Alejandra Gonzalez-Beltran | Alejandra N. González-Beltrán | Simon Gladman | Björn Grüning | Nicola Mulder | Petr Holub | Andrew Treloar | Horst Pichler | Radka Svobodová Vařeková | Rowland Mosbergen | Sonika Tyagi | Madison Flannery | Jon Ison | Maarten van Gompel | Salvador Capella-Gutierrez | Harry-Anton Talvik | Neil Philippe Chue Hong | Josep Ll. Gelpí | Mikael Borg | Rob W.W. Hooft | Bernard Pope | Daniel S. Katz | Michelle Barker | V. Stodden | D. Mellor | D. Katz | N. Mulder | P. Holub | C. Goble | F. Sanz | R. Jimenez | R. Hooft | R. Vareková | R. Pergl | M. Schneider | A. Treloar | A. Via | J. Ison | M. V. Gompel | B. Grüning | R. Mosbergen | Mateusz Kuzak | I. Todorov | S. Capella-Gutiérrez | Radosław Suchecki | N. Watson-Haigh | J. Gelpi | Yasset Pérez-Riverol | S. Tyagi | Neil Chue Hong | Rob Hooft | Ilian Todorov | Pip Griffin | Bernard J. Pope | Steve Crouch | David Mellor | M. Alhamdoosh | Daniel Vaughan | Rafael C. Jiménez | Martin Cook | Leyla Garcia | Montserrat González Ferreiro | Philippa C. Griffin | Jonas Hagberg | Federico López Gómez | Luis J. Oliveira | Ferran Sanz | Maria V. Schneider | Radosław Suchecki | Xiaochuan Wang | Nathan S. Watson-Haigh | Radka Svobodová Vařeková | D. Mellor | Bérénice Batut | B. Leskosek | F. Sanz | M. Barker | Xiaochuan Wang | Neil P. Chue Hong | L. Garcia | Manuel Corpas | Simon L. Gladman | Federico López-Gómez | J. Gelpí | Jonas Hagberg | H. Pichler | Madison Flannery | Mikael Borg | Martin Cook | Montserrat González Ferreiro | Federico López Gómez | Harry-Anton Talvik | Maarten van Gompel | Daniel Vaughan | R. Jiménez | L. García | Montserrat González Ferreiro

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

[2]  Silvio C. E. Tosatto,et al.  Tools and data services registry: a community effort to document bioinformatics resources , 2015, Nucleic Acids Res..

[3]  Karin M. Verspoor,et al.  The Dutch Techcentre for Life Sciences: Enabling data-intensive life science research in the Netherlands. , 2015, F1000Research.

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

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

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

[7]  Carole A. Goble,et al.  The Software Sustainability Institute: Changing Research Software Attitudes and Practices , 2013, Computing in Science & Engineering.

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

[9]  Aleksandra Pawlik,et al.  BioJS: an open source standard for biological visualisation – its status in 2014 , 2014, F1000Research.

[10]  Karl Fogel,et al.  Producing open source software - how to run a successful free software project , 2005 .

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

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

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

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

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

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

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

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

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

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

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