| layout | page |
|---|---|
| title | Research Coding Course |
| subtitle | Skills and training for people developing research software |
Over the years we have developed extensive training materials and delivered hands-on tutorials and seminars to hundreds of researchers on everything from testing your code to how CPUs work. This year, we're building on the University of Sheffield's excellent FAIR²4RS course to deliver a training programme that will teach you a whole range of skills.
Dates in red are to be confirmed:
{% for session in site.data.course_sessions %}
- [{{ session.title }}](#{{ session.title | slugify }}),
{% if session.confirmed -%}{{ session.date }}{% else %}{{ session.date }}{%- endif -%},
{% if session.sign_up_form -%}[sign up here!]({{ session.sign_up_form }})
{%- else -%}Sign-up form coming soon!
{%- endif -%}
{%- if session.repeat %}
- Repeated {% if session.repeat.confirmed -%}{{ session.repeat.date }}{% else %}{{ session.repeat.date }}{%- endif -%}, {% if session.repeat.sign_up_form -%}[sign up here!]({{ session.repeat.sign_up_form }}) {%- else -%}Sign-up form coming soon! {% endif %} {%- endif -%} {% endfor -%}
We welcome everyone working with research software, from undergraduates to professors, from beginners to experts, and from people who create analysis scripts on their laptops to those who run first principles modelling on supercomputers.
Each session will have some individual prerequisites. Some experience with developing research software or scripts, for example in Python or R, might be needed. Please refer to the individual course details to know what they are.
We are all volunteers, and we don't have dedicated resources for creating and delivering this course, and unfortunately, we have found that it takes a lot more effort to effectively deliver hands-on material online -- and even more to deliver hybrid sessions.
We repeat our most popular sessions, particularly Introduction to Version Control a couple of times a year, and we record all our online sessions and make the recordings available. All our slides and other material are also available.
You can see our previous courses, sessions, and activities in our archive.
We run our all hands-on sessions in a PC room on campus, so you can use either Windows or Linux on the dual-boot PCs, or bring your own laptop.
{% for session in site.data.course_sessions %}
- {% if session.confirmed -%}{{ session.date }}{% else %}{{ session.date }}{%- endif -%}
{%- if session.sign_up_form %}
- [Sign up here!]({{ session.sign_up_form }}) {%- else %}
- Sign-up form coming soon! {%- endif %}
- {% if session.online %}Online{% else %}In person{% endif %} {%- if session.repeat %}
- {% if session.repeat.confirmed -%}{{ session.repeat.date }}{% else %}{{ session.repeat.date }}{%- endif -%}
{%- if session.repeat.sign_up_form %}
- [Sign up here!]({{ session.repeat.sign_up_form }}) {%- else %}
- Sign-up form coming soon! {%- endif %}
- {% if session.repeat.online %}Online{% else %}In person{% endif %} {%- endif %}
{{ session.synopsis }}
{% endfor %}
After completing this modular programme, participants should be able to:
- Understand the FAIR principles and describe how they apply to research software
- Explain how applying FAIR principles to research software can support open research goals such as transparency, reproducibility and reusability
- Identify actions that can be taken at different stages of the research lifecycle to enhance the FAIRness of their research software outputs
- Develop a plan addressing the intended scope, impact and lifespan of their research software
- Describe different types of software licence and discuss their potential implications for reuse of research software, including commercialisation
- Apply best practices for scientific software development including design, version control, testing, continuous integration and documentation
- Associate their research software with a unique and persistent identifier and use metadata to enhance its findability, accessibility and reusability
- Identify repositories that provide long-term persistent storage for research software
- Apply approaches such as packaging and containers to enhance the reusability and reproducibility of research software.
We'd love to hear your (anonymous) feedback: please fill in our feedback form.