Reproducibility is the foundation of trustworthy bioinformatics. In this note I share the pipeline conventions we now enforce in our lab.
Containerize everything
1 | # docker-compose service snippet |
Every analysis runs inside a versioned container. Pin versions, not just package names.
Track data provenance
For each result file we record:
- Input data version (checksum or DOI)
- Pipeline commit hash
- Software versions (
conda list --export) - Random seed for every stochastic step
A minimal project layout
1 | project/ |
If a collaborator cannot reproduce your figure from this layout in one command, the pipeline is not done yet.