Training by Geert Jan Bex.
This training will enhance your understanding of the researchers' software skills needed to apply good practices that will enable open and reproducible research. Learn valuable tips and tricks, and explore recommended specialized courses for different programming languages.
The aim of the session is to unite researchers involved in research software development, regardless of expertise or proficiency in programming languages.
Learning outcomes
After attending this training, participants can ...
- understand key principles of good practices in research software development and their role in enabling open and reproducible research;
- be aware of common standards for code quality, including coding style, documentation, and maintainability;
- gain insight into the use of version control systems (e.g., Git) for collaborative and transparent research workflows;
- understand the importance of testing (unit testing, functional testing, and code coverage) and how it contributes to reliable scientific results;
- be familiar with approaches to ensure reproducibility in computational research, including workflow management and environment control;
- become aware of optimization strategies and when they are relevant in a research context;
- discover useful tools and resources across different programming languages (e.g., Python, R, C/C++, Fortran);
- connect with fellow researchers involved in research software development and exchange experiences across disciplines;
- learn best practices for deploying and sharing research software in a sustainable and reusable way.
- gain insight into the role of AI in software development.
Competences
An important part of preparing for any further professional step is becoming (more) aware of the competences you have developed and/or want to develop. In the current workshop, the following competences from the UHasselt competency overview are actively dealt with:
- Cluster “academic research competences”
- Information management
- Subject knowledge
- Cluster “intellectual competences”
- Analytical thinking
- Critical judgment
- Problem solving
- Innovativeness
- Cluster “task-orientedness”