Week 1 - Kick-off#

Welcome to the FAIR4RS Program!

During the Kick-off meeting, we will:

  • Say hello and introduce yourselves

  • Introduce you to the program

  • Cover important logistics

  • Explain the assignments for April 5th

  • Answer your questions

🗣️ Welcome to the FAIR4RS Program!#

Link to the slides

Cover important logistics#

To do list

  • Lightning roll call

  • Invite participants to FAIR4RS Teams

  • Review Code of Conduct

  • Go over Schedule

  • Reminder: sign up for the Code Refinery workshop

  • Create teams for the Code Refinery workshop

  • Optional: verify installation for the Code Refinery workshop

Assignments for Wednesday 5th of April#

We recommend you to go through the assignments in order to prepare for the next seminar on Wednesday 5th of April. The goal is to familiarize yourself with the components for creating FAIR research software and drafting a Software Management Plan.

Link to slides: https://raw.githack.com/mwakok/FAIR4RS/main/SMP.html

Assignment 1. Understanding your needs#

Fill in this short form to help us (and yourself) better understand your needs and where are you currently standing in your project. Please go to our FAIR4RS onboarding form.

Assignment 2. Reflect on your research software#

  1. Create a personal FAIR4RS journal (Hackmd document) using this template. In this journal, you can track your progress in a shareable way.

    1. Create an account on Hackmd

    2. Create a new note

    3. Copy-paste the content of the template

Why do we chose this tool?

Hackmd is based on markdown, it is highly accessible, collaborative and has a very low friction to use. Be aware, you are making use of a public service, only share things you feel are not an issue to have in the public domain.

  1. Read the Zen of Scientific computing to find out about iteratively improving your software. The discussed levels are related to the lessons of the Code Refinery.

Assignment 3. Draft an initial Software Management Plan#

Create a draft for a software management plan (SMP) using one of the following templates in your FAIR4RS journal.

Tip

Don’t worry if you can’t answer all the questions, this is a living document. You can iterate over this draft as we move along the program.

Most likely, SMP template 1 (medium management level) is most suitable for a typical research software project. If you identify your software management level is lower or higher, then pick one of the other templates. Try to use the template as a guide, if you find that other points that appear in the template for high level management, you can also add them to your SMP.

Note

The templates are directly taken from the Practical guide to Software Management Plans. You can read more about the different management levels there.

SMP template #1 - medium management level#

1. Please provide a brief description of your software, stating its purpose
and intended audience.

2. How will you manage versioning of your software?

3. How will you make your software publicly available? If you do not
plan to make it publicly available you should provide a justification.

4. How will your software be documented for users? Please provide a
link to the documentation if available.

5. How will you document your software’s contribution guidelines and
governance structure?

6. What licence will your software have?

7. How will the installation requirements of your software be documented?
Please provide a link to the installation documentation if
available.

8. How will users of your software be able to cite your software?
Please provide a link to your software citation file (CFF) if available.

9. How will your software be documented for future developers?

10. How will your software be tested? Please provide a link to the
automated testing results.

11. How will you check that your software respects the licences of
libraries and dependencies it uses?

12. How will your software be packaged and distributed? Please
provide a link to available packaging information (e.g. entry in a
packaging registry, if available).

13. How do you plan to procure long term maintenance of your software?

SMP template #2 - low management level#


1. Please provide a brief description of your software, stating its purpose
and intended audience.

2. How will you manage versioning of your software?

3. How will your software be documented for users? Please provide a
link to the documentation if available.

4. How will you document the installation requirements of your software?
Please provide a link to the installation documentation if
available.

5. What type of licence will your software have?

6. Does your software respect the licences of libraries and dependencies
it uses?

SMP template # 3 - high management level#


1. Please provide a brief description of your software, stating its purpose
and intended audience.

2. How will you manage versioning of your software?

3. How will you make your software publicly available? If you do not
plan to make it publicly available you should provide a justification.

4. How will your software be documented for users? Please provide a
link to the documentation if available.

5. How will contribution guidelines and governance structure of your
software be documented?

6. What licence will your software have? Please provide a valid SPDX-
Licence-Identifier.

7. How will the installation requirements of your software be documented?
Please provide a link to the installation documentation if
available.

8. How will users of your software be able to cite your software?
Please provide a link to your software citation file (CFF) if available.

9. How will your software be documented for future developers?

10. How will your software be tested? Please provide a link to automated
testing results.

11. How will you check that it respects the licences of libraries and
dependencies it uses?

12. How will your software be packaged and distributed? Please
provide a link to available packaging information (e.g. entry in a
packaging registry, if available).

13. What level of support will be provided for users of the software
and how will this support be organised?

14. How do you plan to procure long term maintenance of your software?

15. Describe the main external factors that should be considered by
developers and users of the software. These could include data
privacy, information security, etc.

Materials#

Code Refinery

FAIR

Software Management Plans