Popper is a protocol and CLI tool for implementing scientific exploration pipelines following a DevOps approach. This allows researchers to generate work that is easy to reproduce. In the first part of this short course, we will briefly introduce DevOps and give an overview of best practices. We will then show how these practices can be repurposed for carrying out scientific explorations and illustrate using some examples. The second part of the course will be devoted to hands-on experiences with the goal of walking the audience through the usage of the Popper CLI tool.
Lunch will be provided during the event, from approximately 12:00 to 1:00 PM. The hosts will be available the following day, Oct. 19th, from 9 AM to 12 PM in KL 275C for any follow-up questions.
Outline of tutorial:
Introduction to the practical aspects of reproducibility.
Overview of best practices in DevOps / open source software projects.
Illustrate how Popper repurposes DevOps to scientific explorations.
Show examples of projects that follow the Popper protocol.
Hands-on experiences with the Popper CLI tool.
Unix environment (Linux, MacOS or Linux Subsystem for Windows 10+).
Bash, Git/Github, Python, virtualenv and Docker. Familiarity with these tools will make it easier to follow the Popper lesson. In the case of Docker, familiarity with how container images are created is desired (but not strictly required).
We can use an experimentation pipeline in your domain as the basis of our last hands-on exercise. This can be any analysis pipeline, parameter sweep for a simulation, or any other computational or data science study you would like to “popperize”.