Intermediate Research Software Development with Python

  • 21 - 22 March 2023
  • eScience Center, Science Park 402, Amsterdam
  • Methodology

This course teaches a core set of intermediate-level software development skills and best practices.
This workshop will be delivered in person, unless new COVID-19 restrictions are put in place. The workshop will take place at Science Park 402, 1098 XH Amsterdam. Please note that lunch and drinks at the end of the workshop are included.

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. The core set of skills we teach is a selective set of tried-and-tested collaborative development skills that forms a firm foundation for continuing on your learning journey.

A 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 that 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, working in a team and applying a process to understanding, designing, building, releasing, and maintaining software.

The workshop is based on the teaching style of the Carpentries, and learners will follow along while the instructors write the code on screen. More information can be found on the workshop website (will be activated once registration is live).

Who: The workshop is open and free to all researchers in the Netherlands at PhD candidate level and higher. We do not accept registrations by Master students. The workshop is aimed at PhD candidates and other researchers or research software engineers.

  • eScience Center
  • You have been writing software for a while, which may be used by people other than yourself, but it is currently undocumented or unstructured