SWD7: Introduction to reproducible workflows in Python

Booking for this course is through the IT Training Unit. Click here to book

Workshop content

This is an introductory course to reproducible analysis workflows in Python. It is aimed at people with some experience in Python for data analysis or computational research (e.g. people already developing scripts or using Jupyter notebooks). By the end of the course the attendees will have learnt about best practices for reproducible scientific code development and should be able to implement these techniques to their day to day workflows. This is not an introductory course to Python but rather on how to conduct reproducible research using Python. Thus if you are interested in getting started with Python, we provide other workshops better suited for you. The course is suitable for attendees from all research domains and career levels. Note that this is a bring your own laptop event. We will be using a number of Python packages and tools, so you must install these before the workshop (these will be sent via email before the workshop).

At the end of the workshop, attendees will be able to:

  • Introduction to reproducible computational research (What is this? Why is it important?)

  • Open Source Software licensing: get to know what license is better suited for your projects

  • Managing data: how to version control, share and add metadata to your research data sets

  • Produce automated workflows

  • Creating a software package

  • Testing scientific code

  • Test automation and continuous integration

  • How to make sure that your code can be run by others (instead to only on your personal computers): this covers execution environments, Docker, and binder

  • How to generate digital assets identifiers and citation files for your software


Attendees must have previous knowledge of Python and should be able to: Write and run Python programs; Know how to import packages in Python (e.g. matplotlib, numpy, pandas); Write functions in Python; Read data from files (e.g. csv, txt). It would be also beneficial if the attendees have basic exposure to the shell (command line, terminal) and git.


1 day


This workshop usually runs once each academic year.

If you would like a bespoke version of this course run in your department then please contact us.


This course is suitable for all research staff and students.