This lesson is being piloted (Beta version)

Collaborative Code development

This training program was developed as part of the ADACS Merit Allocation Program - 2021A Semester. The training was awarded to Julian Carlin for the project: Collaboration on Shared Codebases. The target audience is primarily the University of Melbourne node of the ARC Centre of Excellence for Gravitational Wave Discovery (OzGrav)

Assumed Knowledge

  • Python - intermediate
  • Bash - beginner to intermediate


Setup Download files required for the lesson
00:00 1. Introduction How can I engage with this material?
00:30 2. Packaging, testing, and documentation How to set up a module/package in Python?
How/why do I write tests?
How is documentation different from commenting?
How/why do I write documentation?
03:30 3. Version Control for Collaborative and CI Workflows How do I collaborate on GitLab?
How do I set up continuous integration?
06:30 4. Automation and Collaboration How do I automate documentation?
How do I use GitLab CI tools?
How can I work collaboratively?
08:30 Finish

The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.