About this free workshop
Computational analyses are playing an increasingly central role in research. Journals, funders, and researchers are calling for published research to include associated data and code. However, many involved in research have not received training in best practices and tools for sharing code and data. This course aims to address this gap in training while also providing those who support researchers with curated best practices guidance and tools.
This course is unique compared to other reproducibility courses due to its practical, step-by-step design. It is comprised of hands-on exercises to prepare research code and data for computationally reproducible publication. Although the course starts with some brief introductory information about computational reproducibility, the bulk of the course is guided work with data and code. Participants move through preparing research for reuse, organization, documentation, automation, and submitting their code and data to share. Two tools that support reproducibility will be introduced (Code Ocean and Popper), but all lessons will be platform agnostic.
This course is divided into four parts. In the first part, we will briefly introduce DevOps, give an overview of best practices, and show examples that illustrate how these practices can be repurposed for carrying out scientific explorations. The second part will be devoted to hands-on experiences with the goal of walking the audience through the usage of the Popper CLI tool. Participants will create an experimentation pipeline using Git, Bash, Python, Github, Docker, and TravisCI. This pipeline will showcase the concepts and practical aspects of reproducible research. The third part will be devoted to working on the code that attendees bring, with the goal of “popperizing” it. The final part of the course will focus on best practices for sharing data and code in a computationally reproducible publication.
Proposed Level: Intermediate
Intended Audience: The course is targeted at researchers and research support staff who are involved in the preparation and publication of research materials. Anyone with an interest in reproducible publication is welcome. The course is especially useful for those looking to learn practical steps for improving the computational reproducibility of their own research.
Requirements: Participants will need a laptop with internet access. Participants are welcome to bring their own code and data for the exercises and also should go over these setup instructions prior to the course: https://popperized.github.io/swc-lesson/setup.html