Why Reproducibility?
The work we do at the Urban Institute matters – it needs to be accurate. When someone else can take our materials (code, data, documentation) and produce the same results, we and the people who rely on our work can all be more confident in it. Explore this website for an introduction to some key tools that can help enable reproducible research:
Git & GitHub are tools for tracking changes in code and sharing code with others. Think of Git like a turbo-charged version of track changes for code and GitHub as shared drive (like Box) for hosting files tracked with Git.
Virtual Environments are a way to bundle the packages your code relies on (its dependencies). Someone else can activate your virtual environment on their computer to run your code without having to worry about what packages (and versions of those packages) they have installed locally. You can also use virtual environments on your own computer to work on multiple projects with different dependencies at the same time.
Quarto is a great publishing system for reproducible research. It weaves together text and code like R Markdown, but it works with more languages (R, Python, Julia, and Observable). It also plays nicely with the citation manager Zotero, which is handy when you’re working on a publication.
Join the Conversation!
Ask questions, share tips and tricks, and connect with fellow reproducible research enthusiasts in the #reproducible-research and #github Slack channels.
This website has been developed by the following contributors: Ajjit Narayanan, Maddie Pickens, Erika Tyagi, Aaron Williams, and Francesca Vescia. Have ideas about how it could be better? Feel free to reach out or suggest updates by opening an issue or pull request to our GitHub repo!