Improving bioinformatics software quality through teamwork
CCBR Journal Club
Feb 11, 2025
The problem
Bioinformatics is critical for biological research, but bioinformatics software often does not follow good software engineering practices.
Implications
error-prone code can lead to invalid scientific findings
technical debt - makes future changes more difficult
Causes of poor software quality in bioinformatics
many bioinformaticians lack training in software development
academia credits individual researchers to aid their careers, which deincentivizes teams
Writing good code is hard!
The trap of technical debt
The trap of “perfect” code
I find that when someone’s taking time to do something right in the present, they’re a perfectionist with no ability to prioritize, whereas when someone took time to do something right in the past, they’re a master artisan of great foresight.
The authors’ proposed solution
Organize bioinformaticians into collaborative teams to facilitate:
software quality seminars
code reviews
resource sharing
(i.e. a learning community)
Goal
Persuade academic researchers to organize collaborative teams within their institutions to improve software quality
Lessons from the tech industry
the team is a basic unit: there are no lone geniuses
teams incentivize collective ownership
the team context requires all members to adopt good software practices
Lessons from rock climbing
Climbers view the route together and discuss the best way to climb it.