Rock climbing for biosciences!

The importance of teamwork to develop better bioinformatics software.

By M. Goua with K. Ferenc and A. Mathelier.
Published Oct. 28, 2024
Image may contain: Ecoregion, World, Organism, Font, Grass.

An illustration comparing the improvement process in software writing to rock climbing. DSA: data structures and algorithms, OOP: object-oriented programming, UML: Unified Modelling Language, CI : continuous integration, SCA: static code analysis. Design: I. Rauluseviciute.

Good scientific software is crucial for reliable biological research. Bioinformaticians work at the intersection of biology, data science, and software engineering, yet many lack formal education in one or more of these fields. Achieving good development practices is difficult without awareness and education, leading to error-prone and hard-to-maintain software. The individualistic approach in academia further complicates promoting good practices, unlike the teamwork focus in software-heavy industries. To initiate a change in how bioinformaticians think about software development, Katalin Ferenc, PhD student at NCMM in the Mathelier group, founded a local community where bioinformatics members of NCMM and beyond discuss their challenges and solutions. You can read about this initiative in a Letter to the Editor published in Bioinformatics. The letter serves as a call to action for improving software quality in bioinformatics through teamwork and knowledge sharing. Beyond stressing the importance of transitioning from a culture of individual achievement to one that values teamwork and collective problem-solving, the authors suggest a collaborative approach to software development.

In their paper, the authors share their experience with hosting code reviews and software seminars. This collaborative approach fosters a sense of community and enhances the quality of software and scientific output. They have found that bioinformaticians are better equipped to tackle the inherent challenges of scientific software development by dedicating time and resources to working together. Setting up such an environment is also a great way to start scientific discussions, possibly leading to collaborations.

Importantly, this initiative, involving members of the Mathelier and Kuijjer groups at NCMM, brings together contributors from various faculties, including the Faculty of Medicine and the Faculty of Mathematics and Natural Science at the University of Oslo, the Oslo University Hospital, and more. The "Improving Software Together" team inspires everyone to ask questions and share their knowledge, fostering continuous learning and improvement. This initiative could serve as a model for other computational biology and bioinformatics teams worldwide, helping promote a culture of collaborative software development. This inclusive approach ensures that a wide range of expertise is available, further enhancing the quality and applicability of the software developed.

The scientific community is committed to improving software quality, but this requires dedicated support to enable and sustain these improvements. The authors advocate for funding agencies to provide earmarked funding for maintaining established software and resources. This support is crucial for ensuring reproducibility, maintenance, and improvements. It allows scientists to build on existing software, leading to more reliable solutions.

The collaborative initiative led by Katalin Ferenc and her colleagues is a promising step toward improving software quality in bioinformatics. By fostering teamwork and continuous learning, and with adequate support, the community can overcome current challenges and contribute more effectively to science.

Published Oct. 28, 2024 10:56 AM - Last modified Mar. 15, 2025 11:15 PM