OLS �Tips and practices for writing good quality code
CC by 4.0
Olaitan I. Awe, Ph.D.
Training Officer, ASBCB
@laitanawe
November 13, 2024
openseeds
mentoring & training program
What is good quality code?
A readable, easy to maintain code that others can extend or build upon is good quality. It is:
openseeds
mentoring & training program
Maintainable code
Good quality code is:
openseeds
mentoring & training program
Testable code
Good quality code is:
Stages:
dev --> test --> prod
openseeds
mentoring & training program
Portable code
Good quality code is code that is:
openseeds
mentoring & training program
Reusable code
Good quality code is code that is:
openseeds
mentoring & training program
Workflows should be reproducible
openseeds
mentoring & training program
Workflow Management Systems enable Reproducible Coding
openseeds
mentoring & training program
Write Code and Publish it in a findable Repository (GitHub)
openseeds
mentoring & training program
Research Standard
Open Science:
(Findable, Accessible, Interoperable, Reusable)
Documentation: good comments for your code
openseeds
mentoring & training program
Readable code
Good quality code is:
openseeds
mentoring & training program
Scalable code
Good quality code is:
openseeds
mentoring & training program
Maintaining GitHub repos
openseeds
mentoring & training program
Robust and adaptable code
Good quality code is:
* Get the code reviewed by experienced developers. * Embrace criticism.
* Keep refining the code.
openseeds
mentoring & training program
Reliable code
Good quality code is:
openseeds
mentoring & training program
Automate your Pipelines
Language depends on what you’re comfortable with and your application:
openseeds
mentoring & training program
Some Life Science Project Categories
openseeds
mentoring & training program
Want to start writing good quality code for bioinformatics?
- You can start practicing by using public data (SRA, GEO, ENA, RefSeq, Genbank)
- Check out past codeathon information (asbcb.org/events)
open seeds
mentoring & training program
Thank you!
laitanawe@gmail.com