Signpost to training resources
Posted on 20 June 2023
Signpost to training resources
By Aleksandra Nenadic, SSI Training Lead.
This blog post is part of the Research Software Camp: FAIR Software.
Here we list some of the free and open training resources in various languages available to researchers and Research Software Engineers to help them learn on various topics around software development, FAIR software and data, research data management and analysis, software project management, open and reproducible science, teaching and lesson development skills, and more.
This blog is an update of our previous posts - “Training resources for researchers that want to learn to code” and "Free training resources to upskill on research software topics". Note that this reference resource is not an exhaustive list - if you’d like a training resource mentioned here, please get in touch.
Note that some of these courses are being delivered at our Research Software Camp #5: FAIR Software, 19 - 30 June 2023. Check the Research Software Camp's programme for more information.
Jargon Busting Resources
If you are a beginner at developing code for your research or work, an excellent place to start is to familiarise yourself with the terminology used by the computational research communities. This is an important step as our learners come from different backgrounds, and may not be native English speakers – a term in one domain may mean something else entirely in another.
The Turing Way’s HandBook to reproducible, ethical and collaborative data science contains a very useful and comprehensive glossary of terms.
The Carpentries Glosario is another open-source and multilingual glossary of data science terms.
The Carpentries workshops often start with a jargon-busting session to make sure everyone understands the terminology used - one such example is Library Carpentry’s Jargon Busting.
Computational Skills Resources
Beginners
If you are a researcher who's begun writing code/software for research, who perhaps aspires to improve their skills and how to apply them, and perhaps needs help understanding some research software-related problems - try the following introductory resources on software development, data management and analysis and open and reproducible research.
Resource |
Topic(s) |
Domain(s) |
R, Python, shell, Git, spreadsheets, OpenRefine, regular expressions, data analysis and visualisation, etc. |
Various domains; general |
|
Translations of The Carpentries R, Python, shell, etc. courses to Spanish |
Various domains; general |
|
Project management using GitHub |
General |
|
R programming language |
General |
|
R programming language |
General |
|
|
Interactive web applications with R |
General |
|
Git, GitHub for R users |
General |
Markdown, GitHub Pages websites, Jekyll |
General |
|
Python, data management and visualisation, mapping, web scraping, network analysis, etc. |
Humanities; information management |
|
R, open and reproducible research |
Psychology; general |
|
Python, open and reproducible research |
Psychology; general |
|
R, statistics, data analysis, data science |
Public health; biomedicine, biosciences |
|
Data Science training programme for Health and Biosciences researchers |
R, Python, statistics, data analysis, data science |
Public health; biomedicine, biosciences |
Open research, reproducibility, research (software) project design and management, guides for communication, collaboration ethical research, Community Handbook |
General |
|
Data management/analysis skills, FAIR data |
Biosciences |
|
FAIR data & software |
Humanities; information management |
|
shell, Git, testing |
General |
|
ARCHER2 introductory training courses | Foundational coding and data analysis skills, HPC | General |
Basics of software engineering skills in R for scientists | Code modularity, documentation, and validation/testing | General |
Beginner to Intermediate
For researcher developers and early career Research Software Engineers who have already attended some foundational training, the following beginner-intermediate resources may be of use to further their skills.
Resource |
Topic(s) |
Domain(s) |
Shell Tools and Scripting Editors (Vim) Data Wrangling Command-line Environment Version Control (Git) Debugging and Profiling Metaprogramming Security and Cryptography Potpourri |
General |
|
Software licencing |
General |
|
Data science |
General |
|
An open repository for sharing community-developed lessons on various topics |
Various domains; general |
|
|
An online, open and live resource for the Life Sciences with recipes that help you to make and keep data Findable, Accessible, Interoperable and Reusable; in one word FAIR.
|
General |
A collaboration between the Netherlands eScience Center and DANS. |
General |
|
HPC |
General |
|
HPC |
Genomics |
|
HPC |
General |
|
HPC |
General |
|
Python |
General |
|
Various topics |
General |
|
Binder, BinderHub |
General |
|
Docker container, reproducible computational environments |
General |
|
Singularity container, reproducible computational environments |
General |
|
Cloud computing |
Genomics |
|
Short interactive tutorial sessions where you can learn key skills to improve how you write and manage your research software in just 1 hour on various topics (IDEs, testing, Git, Continuous Integration, etc.) |
General |
|
Courses, events, videos, presentations, learning pathways, handbooks, etc. |
Life Sciences |
|
Health data science training and learning |
Bio/health sciences |
|
Good and reproducible research practices |
General |
|
Imperial Research Computing and Data Science training programme |
Various courses on computing fundamentals and intermediate topics |
General |
Intermediate
Check out the resources below for more experienced RSEs and researchers developers who started working on larger, more complex research software projects and are looking at the next steps to improve their skills further to overcome challenges in such projects, particularly around collaborating on research software development in teams.
Resource |
Topic(s) |
Domain(s) |
Python packaging |
General |
|
Software design and development in teams, Python |
General |
|
Python |
General |
|
A collection of lessons on different topics; shell, Git, testing, collaborative code development, etc. |
General |
|
Archer2 intermediate & advanced training courses |
Intermediate & advanced data science, HPC, MPI, OpenMP |
General |
Teaching and Training Development Skills
If you already have an RSE skills background, and have some experience with delivering teaching or training or some prior experience in building materials for knowledge transfer or training, and aspire to improve your teaching or lesson creation skills to train others (perhaps within local research domain groups or more widely as part of a project), the following training resources are for you.
Resource |
Topic(s) |
Domain(s) |
Diàtaxis: A systematic framework for technical documentation authoring |
Writing technical documentation, how-to guides and tutorials |
General |
Pedagogical skills on developing effective lessons collaboratively |
General |
|
Pedagogical skills on teaching tech to novices, instructor training |
General |
|
Pedagogical skills on developing effective lessons collaboratively |
General |
|
Pedagogical skills on teaching tech to novices, instructor training |
General |
|
Pedagogical skills on teaching tech to novices, instructor training |
General |