SWD3: Software Development Practices (Hybrid)

A practical workshop introducing professional software development practices that make research code more robust, reusable, and easier to maintain.

As research increasingly depends on software, adopting effective development practices can help you produce work that is reliable, reusable, and easier to maintain. This course introduces practical techniques used by professional developers and shows how they can be adapted to strengthen everyday Research Software Engineering practice.

You’ll explore tools and approaches that help you write more reusable code, manage projects more effectively, and collaborate with others with far fewer headaches. Although examples use Python, the concepts apply to any programming language.

This is a hands‑on workshop with guided discussion and small‑group activities.

Learning aims

By the end of this workshop, you will understand how to:

  • Distinguish reproducibility from reusability, and why both matter for robust research.
  • Manage project dependencies so your work is reliable, portable, and future‑proof.
  • Use version control and semantic versioning to share and cite specific, stable versions of your code.
  • Choose and apply open‑source licences that clarify how your software can be reused.
  • Enable software citation to give proper credit and improve research transparency.
  • Apply core principles of testing to ensure your code behaves as expected.
  • Publish code effectively alongside research outputs.

Suitability

This course is for research postgraduate students and staff from any faculty who want to improve how they develop, structure, and share code in their projects.

Prerequisites

When and where

This course is delivered over two half‑day sessions, one in person and one online.

  • Session 1: Fri 5 June, 10:00–13:00 (In person) — Worsley LIDA (11.06)
  • Session 2: Fri 12 June, 10:00–13:00 (Online)

How to book

Booking for this course is made via the IT Training Unit.