Collaboration on Shared Codebases

Published: Oct. 28, 2021

2021A

This workshop uses python and gitlab examples to demonstrate good coding practices and collaborative code development strategies.

The training materials are all available online:

This training was delivered as a three part series on the 1st, 8th, and 15th of October 2021, via webex.


MAP (Merit Allocation Program) Proposal

The requested training aims to improve our ability to work collaboratively on a shared Python codebase. There are four main skills that we wish to focus on:

  1. How to build and maintain appropriate unit tests
  2. How to construct clear, comprehensive documentation
  3. How to set up a continuous integration/development environment, especially when integrating packages managed by external collaborators
  4. Best practices for concurrent development on a shared Git repository.

The ability for our team to work with the same codebase will improve our efficiency, reduce the amount of boiler-plate code that is reproduced by each team-member, and decrease the probability of bugs sneaking in to our pipelines. Improving the codebase with the help of this training will also allow easier on-boarding of new students and postdocs, and easier collaboration with others from outside of the group.

The above material will be delivered in a series of workshops, with accompanying notebooks and worked examples for later reference and teaching. ADACS has advised us that it will require approximately 3 weeks in total to develop and deliver the teaching materials. This would not be a re-run of existing ADACS workshop material.

Training Development

Node: Curtin University
Developer: Paul Hancock

Check out some of our other training projects.

See all training projects.