CBIO7501 · Lesson 02
$ ls -l results/
-rw-r--r-- ada Oct 12 22:00 variants.xlsx
-rw-r--r-- ada Oct 16 11:39 variants_final.xlsx
-rw-r--r-- ada Oct 18 22:41 variants_final_v2.xlsx
-rw-r--r-- ada Oct 18 13:25 variants_USE_THIS.xlsx
-rw-r--r-- ada Oct 15 22:39 variants_v2_ADA.xlsx
And which script and which input made it?
Organization is not one of the five pillars of reproducibility (literate programming, version control, environments, data sharing, documentation), but every pillar is easier when files are where everyone expects them.
5 minutes, on paper. You will analyze 6 FASTQ files (3 samples), a reference genome and a sample table, with scripts, a pipeline, a report and a software environment.
Noble 2009
project/
doc/
data/
src/
bin/
results/
2009-01-15/
2009-01-23/
Wilson et al. 2017
project/
README LICENSE CITATION
requirements.txt
data/
doc/
results/
src/
Both: one folder per project, raw data untouched, results made by code.
config/
config.yaml
profiles/
workflow/
Snakefile
rules/
envs/
scripts/
schemas/
LICENSE README.md
The Snakemake workflow template: settings in config/, everything that runs in workflow/.
Our template borrows config/ and workflow/ from it, so the LTEE project can grow a workflow in lesson 09 without moving files.
data/raw/ ──code──► data/processed/ ──code──► results/ ──► reports/
read-only rebuildable rebuildable
downloaded not in Git not in Git
If you delete data/processed/ and results/, one command must bring them back. That command is the test of your organization.
config/config.yamlltee-project/
├── README.md
├── LICENSE
├── CITATION.cff
├── data/
│ ├── raw/
│ └── processed/
├── metadata/
├── scripts/
├── config/
├── workflow/
├── containers/
├── notebooks/
├── reports/
├── results/
├── docs/
└── .github/workflows/reproduce.yml
One command creates it:
| Instead of | Write |
|---|---|
final results (use this).xlsx |
variant-counts.csv |
12-10-2026 run.bam |
SRR2584863.aligned.sorted.bam |
sample1 … sample10 … sample2 |
s01 … s02 … s10 |
results 5Aug.txt |
qc-summary_2026-08-05.txt |
No spaces · ISO dates · leading zeros · same parts in the same order
Run every command from the project folder. The tutorial’s Break it exercise shows the absolute path failing.
On a cluster, over SSH
nano (easy) or vim (powerful)Pick one editor and learn it well; it should show the whole project folder.
results/ (b) data/raw/ (c) scripts/ (d) data/processed/data/processed/5-Aug-2026 (b) 2026-8-5 (c) 2026-08-05Now: tutorial 02, then the lesson 03 hands-on.
Text and slides CC BY 4.0 unless marked otherwise. Full list: Sources and credits.
CBIO7501: The Art of Reproducible Research - CC BY 4.0