The Art of Reproducible Research
  • Home
  • Lessons
  • Schedule
    • Course (CBIO7501)
    • Workshop
  • Syllabus
  • FAQ

CBIO7501 · MBZUAI · Fall 2026

The Art of Reproducible Research

Create research that others can reproduce and build upon

A hands-on course in computational reproducibility and open research. Learn to organize, track, automate and share an analysis, so others can reproduce it. Free and open, with no genomics background needed.

Start learning Set up your computer

At a glance

Course CBIO7501, MBZUAI, 2 credits

Term Fall 2026, from 19 October

Meets Monday 15:00–16:20, lecture
Tuesday 16:00–17:20, lecture
Wednesday 17:00–18:50, lab

Instructor Aziz Khan

Format 7 weeks: 11 lessons, a guided project and your capstone

Three ways to learn

The materials are openly available for graduate courses, focused workshops and independent study.

CBIO7501 student

MBZUAI, Fall 2026.

Start with the 7-week schedule, then setup.

Workshop participant

The same lessons, condensed.

See the workshop schedule and setup.

On your own

At your own pace.

Do the setup, then the lessons in the order of the contents.

What you will learn

Reproducible research requires more than shared code. It connects well-managed data, versioned analyses, computational environments and documented results. Through this course you will learn to:

  • Organize a project, and keep the raw data untouched
  • Track every change with Git and collaborate through GitHub
  • Lock the software dependencies with Pixi, and ship in containers
  • Report results with Quarto and Jupyter (literate programming)
  • Automate the pipeline with Snakemake and Nextflow
  • Share your work with an open license, and archive it on Zenodo

The goal

From raw data to results anyone can reproduce

  1. Data & code
  2. Environment & workflow
  3. Results

$ pixi run reproduce

Who it is for

Graduate students, postdocs and researchers who analyse data with code, in genomics, biology or any other field. You need some experience with Python or R, and basic comfort with a terminal: if it is new to you, an hour of Bash 101 gets you there. No genomics or Git experience is needed.

Project-based learning

Learn through a guided genomics project, then apply the skills to your own research.

Guided genomics project

The LTEE project

Work with genomic data from the Long-Term Evolution Experiment to develop an automated and reproducible variant analysis workflow.

The questionHow many mutations did E. coli accumulate over 50,000 generations, and is that answer robust to how strictly we filter the variant calls? More about the project

Apply to your own research

Your capstone project

Apply what you learned to organize, document, automate and share an analysis from your own research.

The capstone

What is in every lesson

1

Slides: the why

A short slide deck that gives the background and the motivation.

2

Tutorial: the how

Self-contained, with copy-and-paste commands, expected output, exercises and troubleshooting.

3

Break it

Each lesson ends by breaking something on purpose, so you see what the tool protects you from.

Built on open material

This course began as a mini-course at Stanford Biosciences (BIOS259, Winter 2024), developed by Aziz Khan and taught with the help of Alvina, Clemens and Brennan. It adapts and extends open lessons from NBIS, Software Carpentry, Data Carpentry and others.

Developed and maintained by Aziz Khan, Computational Biology and Cancer Regulatory Genomics (CBCRG), MBZUAI.

Learn

  • Lessons
  • Set up your computer
  • Cheat sheets
  • Glossary
  • FAQ

Reuse

  • Teach these lessons
  • Sources and credits
  • Text and slides: CC BY 4.0
  • Code: MIT

Text and slides CC BY 4.0, code MIT · Sources and credits

 
  • View source
  • Report an issue

Built with Quarto 1.9.38 and Pixi 0.83.0