Location:

This course will take place face-to-face at Queen’s University, Belfast

This course will not be streamed online and a recording will not be made.

Description

This course aims to teach a core set of established, intermediate-level software development skills and best practices for working as part of a team in a research environment using Python as an example programming language (see detailed Learning objectives below). The core set of skills we teach is not a comprehensive set of all-encompassing skills, but a selective set of tried-and-tested collaborative development skills that forms a firm foundation for continuing on your learning journey.

typical learner for this course may be someone who is working in a research environment, needing to write some code, has gained basic software development skills either by self-learning or attending, e.g., a novice Software Carpentry Python course. They have been applying those skills in their domain of work by writing code for some time, e.g. half a year or more. However, their software development-related projects are now becoming larger and are involving more researchers and other stakeholders (e.g. users), for example:

Software is becoming more complex and more collaborative development effort is needed to keep the software running Software is going further than just the small group developing and/or using the code there are more users and an increasing need to add new features ‘Technical debt’ is increasing with demands to add new functionality while ensuring previous development efforts remain functional and maintainable

They now need intermediate software engineering skills to help them design more robust software code that goes beyond a few thrown-together proof-of-concept scripts, taking into consideration the lifecycle of software, writing software for stakeholders, team ethic and applying a process to understanding, designing, building, releasing, and maintaining software.

Target audience

This course is for you if:

This course is not for you if:

Learning objectives

After going through this course, participants will be able to:

Prerequisites

Before joining this training, participants should meet the following criteria. (You can use this short quiz to test your prerequisite knowledge.)

Git

Python

Shell

Setup

Please make sure that you have all the necessary software and accounts setup ahead of the workshop as described in the Setup section. Also check the list of common issues, fixes & tips if you experience any problems running any of the tools you installed - your issue may be solved there.

Requirements:

Participants must bring a laptop with a Mac, Linux, or Windows operating system (not a tablet, Chromebook, etc.) that they have administrative privileges on.

They are also required to abide by the ARCHER2 Code of Conduct.

Timetable:

Details to follow

Course materials

Registration