
The course introduces the principles and practices of computational reproducibility applied to the life sciences. Through practical examples and guided activities, participants learn how to build reproducible environments, manage software and data versioning, and share their projects according to the FAIR principles (Findable, Accessible, Interoperable, Reusable).
Tools such as Docker, JupyterLab, and GitHub are used to develop traceable and shareable analysis pipelines, following an approach tailored to the daily practice of researchers.
The course is organized into five modules, each featuring video lectures, practical demonstrations, and interactive activities.
Day 1 – Module 1: Why Reproducibility Matters
Introduction to computational reproducibility; examples of non-replicability; differences between software versioning and environments. Concept of computational reproducibility and the impact of software versions on scientific results.
Day 2 – Module 2: Understanding and Using Docker
Differences between virtual machines and containers; concept of layers and images; manual construction of a Dockerfile and main commands (run, ps, exec, commit).
Day 3 – Module 3: JupyterLab in Docker
Creating an interactive analysis environment within a container; configuring R and Python in JupyterLab; managing shared volumes and saving modifications.
Day 4 – Module 4: Sharing and Publishing Research Outputs
Managing and publishing data on Zenodo and GEO; calculating MD5 checksums; using FTP/FileZilla for data transfer; principles of documentation and metadata annotation.
Day 5 – Module 5: Exercise 1 – Docker Commands
Recap of basic Docker commands.
Day 6 – Module 5: Exercise 2 – Building a Dockerfile
Explanation of Dockerfile structure and main instructions.
Day 7 – Module 5: Exercise 3 – Building a Dockerfile for Life Sciences
Introduction to applying Dockerfiles in the context of life sciences.
At the end of the course, students will be able to:
-
Describe the principles of computational reproducibility
-
Create and configure a reproducible analysis environment using Docker
-
Use JupyterLab within a container to integrate code and results
-
Publish data and metadata to open repositories such as Zenodo and GEO, in compliance with the FAIR principles.
Assessment quizzes at the end of each module.
-
Hands-on exercises on creating and using Docker containers.
-
Development of a Dockerfile for a bioinformatics analysis.
-
Uploading a dataset to Zenodo/GEO.
-
Managing and publishing a GitHub repository containing code and documentation.
-
Basic knowledge of bioinformatics or computational biology.
-
Basic familiarity with the command line (Linux/Mac/Windows).
Alessandri’ Luca
Per domande o problematiche tecniche relative al corso e alla piattaforma contattare:
edvancedeh@unito.it
Contatto del docente del MOOC: