2019
DOI: 10.1093/gigascience/giz109
|View full text |Cite
|
Sign up to set email alerts
|

Bionitio: demonstrating and facilitating best practices for bioinformatics command-line software

Abstract: Background Bioinformatics software tools are often created ad hoc, frequently by people without extensive training in software development. In particular, for beginners, the barrier to entry in bioinformatics software development is high, especially if they want to adopt good programming practices. Even experienced developers do not always follow best practices. This results in the proliferation of poorer-quality bioinformatics software, leading to limited scalability and inefficient use of r… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
4
1

Citation Types

0
14
0

Year Published

2019
2019
2023
2023

Publication Types

Select...
8

Relationship

1
7

Authors

Journals

citations
Cited by 18 publications
(14 citation statements)
references
References 37 publications
0
14
0
Order By: Relevance
“…The UCEasy install command: pip install uceasy; b) Public software repositories: the source code and documentation of UCEasy is available in the public repositories of PyPI ( https://pypi.org/project/uceasy ) and Github ( https://github.com/uceasy/uceasy ). In addition, the package is indexed in the Zenodo repository with DOI: 10.5281/zenodo.5225152, in order to make it discoverable, searchable and referable to as many communities as possible; c) Software licence: UCEasy adopts the MIT licence ( https://opensource.org/licenses/MIT ), which gives full freedom of use, copying, modification and distribution of the source code, thereby enabling reuse and scientific collaboration; d) Version control system: the UCEasy source code and documentation are kept publicly on Github, a repository widely used by the scientific community ( Perez-Riverol et al 2016 ), allowing other developers to follow and contribute to the evolution of UCEasy; e) CLI standard: UCEasy follows main recommendations for making command lines usable ( Seemann 2013 , Georgeson et al 2019 ), keeping commands associable, consistent and memorable. UCEasy commands adopt the POSIX standard as a way to help the user ( Zlotnick 1991 ); f) UCEasy offers an optional progress-logging facility, using the uceasy --tracking-file (or -t) command.…”
Section: Methodsmentioning
confidence: 99%
See 2 more Smart Citations
“…The UCEasy install command: pip install uceasy; b) Public software repositories: the source code and documentation of UCEasy is available in the public repositories of PyPI ( https://pypi.org/project/uceasy ) and Github ( https://github.com/uceasy/uceasy ). In addition, the package is indexed in the Zenodo repository with DOI: 10.5281/zenodo.5225152, in order to make it discoverable, searchable and referable to as many communities as possible; c) Software licence: UCEasy adopts the MIT licence ( https://opensource.org/licenses/MIT ), which gives full freedom of use, copying, modification and distribution of the source code, thereby enabling reuse and scientific collaboration; d) Version control system: the UCEasy source code and documentation are kept publicly on Github, a repository widely used by the scientific community ( Perez-Riverol et al 2016 ), allowing other developers to follow and contribute to the evolution of UCEasy; e) CLI standard: UCEasy follows main recommendations for making command lines usable ( Seemann 2013 , Georgeson et al 2019 ), keeping commands associable, consistent and memorable. UCEasy commands adopt the POSIX standard as a way to help the user ( Zlotnick 1991 ); f) UCEasy offers an optional progress-logging facility, using the uceasy --tracking-file (or -t) command.…”
Section: Methodsmentioning
confidence: 99%
“…The main recommendations are: i) Use package managers in order to make installation easier and to ensure that software versions and dependencies are installed correctly. Difficult-to-install software can be frustrating, impact reliability and impair reproducibility ( Georgeson et al 2019 ); ii) Make your software source code and documentation available in public and indexed repositories through DOI as a way to promote accessibility; iii) Adopt an OSS (Open Source Software) licence, since unlicensed software discourages reusability and collaboration ( Georgeson et al 2019 ). The use of OSS licences improves accessibility, reusability and transparency and contributes to the reproducibility of the results generated by the software ( Jiménez et al 2017 ); iv) Use a version control system to maintain the history of changes made to the source code, allowing arbitrary versions to be retrieved and compared, thus providing provenance for the code; v) When it comes to command-line interface (CLI) tools, implement commands with consistent, distinct and meaningful names, besides clear output and error messages ( Seemann 2013 , Wilson et al 2014 ); vi) When a bioinformatics analysis uses a pipeline containing heterogeneous tools, recording the execution progress of each tool in a log file is good practice.…”
Section: Introductionmentioning
confidence: 99%
See 1 more Smart Citation
“…One of the fundamental, exacerbating factors to the development of high-quality bioinformatics software is a lack of initiatives in formal education supporting the instillation of software engineering principles into existing and upcoming bioinformatics professionals. This is supported by studies, such as Georgeson et al (2019) , that indicate bioinformatics engineers often apply ad hoc methodologies when developing scientific bioinformatics software. The situation is compounded by the fact that traditional software engineers are usually unfamiliar with the complexities of the life sciences ( Koch & Jones, 2016 ), resulting in bioinformatics engineers needing to develop their own software.…”
Section: Introductionmentioning
confidence: 92%
“…The importance of best practices for bioinformatics analysis and software have been highlighted by many authors who proposed very valuable guidelines for better reproducibility and traceability ( Georgeson et al , 2019 ; Hamburg & Mogyorodi, 2019 ; Noble, 2009 ; Sandve et al , 2013 ). However, reproducing an analysis is often a challenge ( Kim et al , 2018 ).…”
Section: Introductionmentioning
confidence: 99%