CodeRefinery mini-workshop

Series of images which come out of the image processing pipeline

We will together create a simple image processing pipeline that is reproducible, reusable, extensible, documented, and tested. Celebrating Eileen Collins, the first woman to pilot the Space Shuttle and the first to command a Space Shuttle mission.

Goals of this workshop

  • We will together create a simple image processing pipeline that is reproducible, reusable, extensible, documented, and tested.

  • We will start with something relatively simple and gradually add the missing pieces: all the way towards making it publishable.

  • We will use a Python example but we will not need Python experience to follow and not focus on Python programming but rather on software development practices.

We will explore these in 3 sessions:

  • Session 1: Reproducible code changes. Keep track of code changes and learn how we can collaborate on code using Git and GitHub.

  • Session 2: Add code documentation and testing. Improve structure.

  • Session 3: Document dependencies and prepare the code to be shared, reused, and published.

Learner personas

  • You write code for their own research: alone or in a small collaboration.

  • You want to be able to contribute to open-source projects.

  • You do data analysis and use (import) code written by others in a Jupyter Notebook (or similar) or a script.

  • You neither write not use code but you want to better understand how reproducible research software is created and what matters to make it reusable.

Preparation

  • GitHub account if you want to actively participate.

  • Enable Rich Jupyter Notebook Diffs on GitHub for a better code review experience when changing Jupyter Notebooks (click on your avatar top-right on GitHub, then “Feature preview”).