Collaborative Software Development
Course ID
DSCI 524
Campus
UBC Vancouver
Semester
Winter
Course Block
4
Course Description
Advanced practices and tooling foundational to professional, trustworthy, and scalable data science software. Students create packages in both R and Python using collaborative Git + GitHub workflows (e.g., branching with git flow). The course covers building and testing robust code via unit testing (e.g., testthat, pytest), ensuring code quality with code coverage metrics, and implementing continuous integration and continuous deployment (CI/CD) workflows (including GitHub Actions with matrix configurations). Students will also learn to package and document their software, set up reproducible environments using conda, renv, Docker, and automate deployment pipelines for data science.