This blog post is part of the Research Software Camps: Digital Skills for Research Technical Staff.
Here we list some of the free and open information and training resources available to technical staff and Research Software Engineers (RSEs) to aid learning on various topics around career development, introductory software development, FAIR software, research data management and analysis, 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.
Some of the courses listed below are being delivered at the Research Software Camp: Digital Skills for Research Technical Staff, 18-29 November 2024. Check the Research Software Camp's programme for more information.
Information resources
The Technician Commitment is a university and research institution initiative, led by a steering board of sector bodies, hosted by the UK Institute for Technical Skills & Strategy. The Commitment aims to ensure visibility, recognition, career development and sustainability for technicians working in higher education and research, across all disciplines. Universities and research institutes are invited to become signatories of the Technician Commitment and pledge action to tackle the key challenges affecting their technical staff. Scroll down to learn more.
The UK Institute for Technical Skills and Strategy (ITSS) is home of the Technician Commitment and funded by Research England. It campaigns and advocates for the technical community in higher education, research and innovation in the UK.
The ITSS Technician Career Development Programme is open to technical professionals in higher education and research who are feeling unsure about their future career path and how to progress.
The Herschel programme for Women is designed for technicians who identify as women to help address the lack of women in technical management and leadership roles.
TALENT is a project which leads and influences change to advance status and opportunity for technical skills, roles and careers in UK higher education and research. TALENT concludes in February 2025 when parts of its work will transfer to the UK Institute for Technical Skills and Strategy (ITSS).
Research Software Resources
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) |
Software Carpentry; Data Carpentry; Library Carpentry | R, Python, shell, Git, spreadsheets, OpenRefine, regular expressions, data analysis and visualisation, etc. | Various domains; general |
The Carpentries Resources - Spanish Translations | Translations of The Carpentries R, Python, shell, etc. courses to Spanish | Various domains; general |
Project management using GitHub | General | |
Getting started with data in R | R programming language | General |
Getting started with R, RStudio, and R Markdown | R programming language | General |
| Interactive web applications with R | General |
| Git, GitHub for R users | General |
Building websites with Jekyll and GitHub pages | Markdown, GitHub Pages websites, Jekyll | General |
Programming Historian | Python, data management and visualisation, mapping, web scraping, network analysis, etc. | Humanities; information management |
R, Open Research, and Reproducibility | R, open and reproducible research | Psychology; general |
Open Intro to Python | Python, open and reproducible research | Psychology; general |
Introductory Statistics for Public Health | 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 |
The Turing Way Handbook | Open research, reproducibility, research (software) project design and management, guides for communication, collaboration ethical research, Community Handbook | General |
RDMkit | Data management/analysis skills, FAIR data | Biosciences |
Library Carpentry: Fair Data and Software | 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) |
The Missing Semester of Your Computer Science Education | Shell Tools and Scripting Editors (Vim) Data Wrangling Command-line Environment Version Control (Git) Debugging and Profiling Metaprogramming Security and Cryptography Potpourri | General |
Choosing an open source license | Software licencing | General |
Python Data Science Handbook by Jake VanderPlas | Data science | General |
Carpentries Incubator | 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 |
Five recommendations for FAIR software | A collaboration between the Netherlands eScience Center and DANS. | General |
Super Computing Wales training | HPC | General |
Data Carpentry HPC lesson | HPC | Genomics |
DiRAC Training | HPC | General |
HPC Carpentry | HPC | General |
Level Up Your Python course by Henry Schreiner | Python | General |
DZone tutorials | Various topics | General |
Introduction to BinderHub | Binder, BinderHub | General |
Docker Introduction | Docker container, reproducible computational environments | General |
Singularity Introduction | Singularity container, reproducible computational environments | General |
Cloud computing intro for genomics | Cloud computing | Genomics |
Byte-sized RSE | 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 |
ELIXIR's TeSS training portal | Courses, events, videos, presentations, learning pathways, handbooks, etc. | Life Sciences |
HDR UK training | Health data science training and learning | Bio/health sciences |
The Good Research Code Handbook | 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) |
Beuzen & Timbers: Python Packages | Python packaging | General |
Intermediate Research Software skills | Software design and development in teams, Python | General |
CodingWithJamesMurphy YouTube channel | Python | General |
CodeRefinery | Different topics around RSE practices for researchers who already write code: collaborative git, testing, modular code development, etc. | General |
Archer2 intermediate & advanced training courses | Intermediate & advanced data science, HPC, MPI, OpenMP | General |
FAIR Software workshop | Tools and practices for producing and sharing quality, sustainable and FAIR (Findable, Accessible, Interoperable and Reusable) research software to support open and reproducible research. | 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 |
Carpentries Lesson Development | Pedagogical skills on developing effective lessons collaboratively | General |
Carpentries Instructor Training | Pedagogical skills on teaching tech to novices, instructor training | General |
Carpentries Lesson development study groups | Pedagogical skills on developing effective lessons collaboratively | General |
CodeRefinery’s Instructor Training | Pedagogical skills on teaching tech to novices, instructor training | General |
ELIXIR's Train the Trainer | Pedagogical skills on teaching tech to novices, instructor training | General |