There has been a massive interest in reproducible research / data analysis pipelines over the last few years. But... how can I ensure that what I produce as a Python user is reproducible? In this tutorial we'll be taking you on a journey down the rabbit hole of reproducibility. We'll be taking a step by step approach to reproducible scientific development in Python. This means you get a crash course on version control, execution environments, testing, and continuous integration. And a guide on how to integrate all of these in your software projects. By the end of the course we hope you will have the necessary tools to make your Python workflows reproducible no matter if you're starting a brand new project or if this is ready to be shared with the world.