BIOL 5/6800 — Intro to Comp Bio
The bottleneck in modern biology is rarely generating data. It is deciding what to do with it.
Example 1 — Reading a genome you never see
You sequence a bacterial isolate and get back 4 million short reads, each ~150 bp, in random order, with errors.
The question: what is the genome?
The problem: this is a jigsaw puzzle with millions of pieces, no picture on the box, some pieces duplicated, and some pieces wrong.
Nobody solves this by hand. An assembly algorithm does — by building a graph of overlapping k-mers and finding a path through it.
Example 2 — Pathogen surveillance in real time
During SARS-CoV-2, sequences were deposited daily and phylogenies were rebuilt continuously to track which lineages were spreading where
That pipeline is a stack of algorithms:
If the tree takes six weeks to compute, the answer is useless. Speed is not a convenience here — it is the whole point.
A biological question becomes a computational question when we have to specify exactly how to get from data to answer.
Biology: GATGAG sequence is necessary and sufficient to induce expression
Comp Bio:
Biology isn’t black & white: Think probabilistically using models!
So, why marimo?
IMHO, marimo solved two big problems with other types of notebooks:
For biologists learning to program1
For biologists learning to program1
We are transitioning to marimo Python notebooks in molab as our primary environment for learning comp bio
The class website (aub.ie/icb) has instructions for Python notebook exercises: