GitHub repositories serve as vital platforms in today’s computational research, allowing scientists to store and share their project code. Although these repositories weren't specifically designed for data storage and preservation, their collaborative features and version control capabilities significantly aid project workflows. To boost their long-term value, we recommend the following best practices.
Dependency Management
Binder is an open-source and free service for researchers to create a shareable project version that can be viewed and interacted with within a reproducible computational environment that runs in the cloud via a web browser.
Venv operates independently, ensuring alterations to installed dependencies within one environment remain isolated from others and system-wide libraries. This isolation allows the creation of multiple virtual environments, each hosting its own Python versions and varying sets of libraries.
Is your project R-based? The renv package helps you set up R projects and manage dependencies to keep your environment consistent and reproducible.
Everybody has a "dependency hell" horror story to tell. In the spookiest month of the year, we describe the leading causes of this problem and how it impacts scientific reproducibility.