Skip to content

Commit 9a3c17d

Browse files
authored
Merge pull request #412 from dgarijo/main
Synchronizing projects and some reports training materials
2 parents cbbc003 + 5225a82 commit 9a3c17d

16 files changed

Lines changed: 108 additions & 32 deletions
Lines changed: 33 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,7 @@ page_id: fair_rs
88

99
FAIR stands for Findable, Accessible, Interoperable, and Reusable and comprises a set of principles designed to
1010
increase the visibility and usefulness of your research to others.
11-
The FAIR data principles, first published [in 2016][fair-data-principles], are widely known and applied today.
12-
Similar [FAIR principles for software][fair-principles-research-software] have now been defined too. In general, they mean:
11+
The FAIR data principles, first published in 2016 [^1], are widely known and applied today, including scientific workflows [^2], or [machine learning projects][fair4ml]. Similar FAIR principles for software [^3][^4] have now been defined too. In general, they mean:
1312

1413
- **Findable** - software and its associated metadata must be easy to discover by humans and machines.
1514
- **Accessible** - in order to reuse software, the software and its metadata must be retrievable by standard protocols, free and legally usable.
@@ -168,8 +167,10 @@ Here are some tools that can check your software and provide an assessment of it
168167

169168
- [FAIRsoft evaluator][fair-rs-evaluator]
170169
- [FAIR software test][fair-rs-test]
171-
- [FAIR Software Checklist][fair-rs-checklist] - self-assessment tool developed by the Australian Research Data Commons (ARDC) and the Netherlands eScience Center (NeSC)
170+
- [FAIR Software Checklist][fair-rs-checklist] - self-assessment tool developed by the Australian Research Data Commons (ARDC) and the Netherlands eScience Center
172171
- [`How FAIR is your software` - command line tool to evaluate a software repository's compliance with the FAIR principles][howfairis]
172+
- [CODECHECK][codecheck] - An approach for independent execution of computations underlying research articles.
173+
173174

174175
### Summary
175176

@@ -193,26 +194,41 @@ The table below provides a summary of how different tools and practices help wit
193194
| Unique persistent identifiers | x | x | | |
194195

195196

197+
## Training materials
198+
- The [FAIR Cookbook][fair-cookbook] contains general reusable recipes for FAIR assessment.
199+
- [10 easy things to make your research software FAIR](https://doi.org/10.5281/zenodo.3409968)
200+
- Common metrics for Research Software [^5] that may used to assess each of the FAIR4RS principles.
201+
- [A cookie software project template with FAIR metadata](https://github.com/Materials-Data-Science-and-Informatics/fair-python-cookiecutter)
202+
- [Carpentries course on tools and practices for FAIR Research Software](https://carpentries-incubator.github.io/fair-research-software/)
196203

197-
[fair-principles-research-software]: https://www.nature.com/articles/s41597-022-01710-x
198-
[fair-data-principles]: https://www.nature.com/articles/sdata201618
199-
[zenodo]: https://zenodo.org/
200-
[software-registries]: https://github.com/NLeSC/awesome-research-software-registries
201-
[github]: https://github.com
204+
205+
## References
206+
[^1]: Wilkinson MD, Dumontier M, Aalbersberg IJ, Appleton G, Axton M, Baak A, Blomberg N, Boiten JW, da Silva Santos LB, Bourne PE, Bouwman J. The FAIR Guiding Principles for scientific data management and stewardship. Scientific data. 2016 Mar 15;3(1):1-9. [https://doi.org/10.1038/sdata.2016.18](https://doi.org/10.1038/sdata.2016.18)
207+
[^2]: Wilkinson SR, Aloqalaa M, Belhajjame K, Crusoe MR, de Paula Kinoshita B, Gadelha L, Garijo D, Gustafsson OJ, Juty N, Kanwal S, Khan FZ. Applying the FAIR principles to Computational Workflows. Scientific Data. 2025 Feb 24;12(1):328. [https://doi.org/10.1038/s41597-025-04451-9](https://doi.org/10.1038/s41597-025-04451-9)
208+
[^3]: Barker M, Chue Hong NP, Katz DS, Lamprecht AL, Martinez-Ortiz C, Psomopoulos F, Harrow J, Castro LJ, Gruenpeter M, Martinez PA, Honeyman T. Introducing the FAIR Principles for research software. Scientific Data. 2022 Oct 14;9(1):622. [https://doi.org/10.1038/s41597-022-01710-x](https://doi.org/10.1038/s41597-022-01710-x)
209+
[^4]: Chue Hong, N. P., Katz, D. S., Barker, M., Lamprecht, A.-L., Martinez, C., Psomopoulos, F. E., Harrow, J., Castro, L. J., Gruenpeter, M., Martinez, P. A., Honeyman, T., Struck, A., Lee, A., Loewe, A., van Werkhoven, B., Jones, C., Garijo, D., Plomp, E., Genova, F., … RDA FAIR4RS WG. (2022). FAIR Principles for Research Software (FAIR4RS Principles) (1.0). Zenodo. [https://doi.org/10.15497/RDA00068](https://doi.org/10.15497/RDA00068)
210+
[^5]: Chue Hong, N., Breitmoser, E., Antonioletti, M., Davidson, J., Garijo, D., Gonzalez-Beltran, A., Gruenpeter, M., Huber, R., Jonquet, C., Priddy, M., Shepeherdson, J., Verburg, M., & Wood, C. (2025). D5.2 - Metrics for automated FAIR software assessment in a disciplinary context (1.1). Zenodo. [https://doi.org/10.5281/zenodo.15535629](https://doi.org/10.5281/zenodo.15535629)
211+
212+
[awesome-rs-registries]: https://github.com/NLeSC/awesome-research-software-registries
202213
[biotools]: https://bio.tools
203-
[pypi]: https://pypi.org/
214+
[cff]: https://citation-file-format.github.io/
215+
[choosealicense]: https://choosealicense.com/
216+
[codecheck]: https://codecheck.org.uk/project/
217+
[codemeta]: (https://codemeta.github.io/)
204218
[cran]: https://cran.r-project.org/web/packages/
205-
[gitlab]: https://about.gitlab.com/
206-
[awesome-rs-registries]: https://github.com/NLeSC/awesome-research-software-registries
219+
[fair-cookbook]: https://faircookbook.elixir-europe.org/content/home.html
207220
[fair-rs-evaluator]: https://openebench.bsc.es/observatory/Evaluation
208221
[fair-rs-test]: https://github.com/marioa/fair-test?tab=readme-ov-file
209222
[fair-rs-checklist]: https://fairsoftwarechecklist.net
210-
[codemeta]: (https://codemeta.github.io/)
211-
[rsmd-g1]: https://fair-impact.github.io/RSMD-guidelines/1.General/
212-
[software-heritage]: https://www.softwareheritage.org/
213-
[swhid]: https://docs.softwareheritage.org/devel/swh-model/persistent-identifiers.html
223+
[fair4ml]: https://www.rd-alliance.org/groups/fair-machine-learning-fair4ml-ig/activity/
214224
[figshare]: https://figshare.com/
225+
[github]: https://github.com
226+
[gitlab]: https://about.gitlab.com/
215227
[howfairis]: https://github.com/fair-software/howfairis/
216-
[cff]: https://citation-file-format.github.io/
217228
[opensource-licence-guide]: https://opensource.guide/legal/#which-open-source-license-is-appropriate-for-my-project
218-
[choosealicense]: https://choosealicense.com/
229+
[rsmd-g1]: https://fair-impact.github.io/RSMD-guidelines/1.General/
230+
[swhid]: https://docs.softwareheritage.org/devel/swh-model/persistent-identifiers.html
231+
[pypi]: https://pypi.org/
232+
[software-heritage]: https://www.softwareheritage.org/
233+
[software-registries]: https://github.com/NLeSC/awesome-research-software-registries
234+
[zenodo]: https://zenodo.org/

pages/research_clusters_and_infrastructures/envri.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,8 @@ European Environmental Research Infrastructures (ENVRIs) at the ESFRI level serv
88

99
## Services
1010
### ENVRI-HUB
11-
The ENVRI-Hub is designed as a federated system to harmonise subdomain- or RI-specific access platforms and offers a user-centred platform that provides seamless access to environmental data and services across multiple European Research Infrastructures (RIs), addressing key challenges in data discovery, access, composition, processing, and usability. Its modular, service-oriented architecture integrates data catalogues, knowledge bases, analytical tools, and training resources, enabling interdisciplinary research and informed policy-making. To enhance ENVRI-Hub to the next level, ENVRI-Hub Next provides improved access to environmental data and services by incorporating next-generation digital solutions and expanding its user base.
11+
The [ENVRI-Hub](https://envri-hub.envri.eu/) is designed as a federated system to harmonise subdomain- or RI-specific access platforms and offers a user-centred platform that provides seamless access to environmental data and services across multiple European Research Infrastructures (RIs), addressing key challenges in data discovery, access, composition, processing, and usability. Its modular, service-oriented architecture integrates data catalogues, knowledge bases, analytical tools, and training resources, enabling interdisciplinary research and informed policy-making. To enhance ENVRI-Hub to the next level, ENVRI-Hub Next provides improved access to environmental data and services by incorporating next-generation digital solutions and expanding its user base.
12+
13+
### ENVRI-KB
14+
The [ENVRI-KB](https://search.envri.eu/) is a knowledge base designed to store and search for all the information available in the ENVRI cluster.
1215

pages/research_clusters_and_infrastructures/ls-ri.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,9 @@ type: research_cluster_or_infrastructure
66

77
[European Life Science Research Infrastructures (LS-RI)](https://lifescience-ri.eu/home.html) such as [ELIXIR](https://elixir-europe.org/) are serving excellent life sciences research in Europe by providing needed access to
88
world-class facilities, samples, instruments, services, and data. The European LS-RIs were established to overcome a technology gap and to allow access
9-
to much-needed technologies in modern research approaches. They have the mission to support cutting-edge science by offering access to the latest technologies,
10-
comprehensive resource collections and technical expertise.
9+
to much-needed technologies in modern research approaches. They have the mission to support cutting-edge science by offering access to the latest technologies, comprehensive resource collections and technical expertise. An example is the [ELIXIR STEERS](https://elixir-europe.org/about-us/how-funded/eu-projects/steers) project, which aims to provide software and workflows to life scientists, maximising productivity in research, and minimising consequent energy usage.
10+
11+
## Services
12+
13+
### Training catalogue
14+
The [TeSS Life Sciences Training Catalogue](https://tess.elixir-europe.org/) is a platform that was developed to provide a one-stop shop for trainers and trainees to discover online information and content, including training materials, events and interactive tutorials. While its scope is wider than research software, training materials on the best practices mentioned in the RSQKit may also be found.

pages/research_software/quality.md

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,16 @@ A truly high-quality, reproducible research software package will typically sati
4040
So, FAIR - the “openness & reusability” slice of software quality - is essential for reproducibility, but most impactful
4141
when combined with all the other [quality practices](rs_quality) like testing, version control, and robust design.
4242

43-
Read in more detail what [the FAIR principles](fair_rs) encompass.
43+
44+
Read in more detail what [the FAIR principles for research software](/fair_rs) encompass.
4445

4546
## Formal Quality Dimensions & Indicators
4647

47-
The project is working on formally defining a number of research software quality [dimensions](https://everse.software/indicators/website/dimensions.html)
48-
and their associated [indicators](https://everse.software/indicators/website/indicators.html) (which are to be used to assess the quality of software).
48+
The project is working on formally defining a number of research software quality [dimensions](https://w3id.org/everse/i/dimensions/)
49+
and their associated [indicators](https://w3id.org/everse/i/indicators) (which are to be used to assess the quality of software), based on existing work in the literature [^1] and [ISO standards for software and data quality](https://iso25000.com/index.php/en/).
50+
51+
## References
52+
53+
[^1] David, M., Colom, M., Garijo, D., Castro, L. J., Louvet, V., Ronchieri, E., Torquati, M., del Caño, L., Cerlane, L., Van den Bossche, M., Campos, I., & Di Cosmo, R. (2024). Ensure Software Quality (1.0.0). Zenodo. [https://doi.org/10.5281/zenodo.10723608](https://doi.org/10.5281/zenodo.10723608)
4954

5055
[fair-rs]: https://www.nature.com/articles/s41597-022-01710-x

pages/rs_quality.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@ and their sustainability.
1515

1616
## Quality Dimensions & Indicators
1717

18-
EVERSE project is working to formally define a number of [research software quality dimensions](https://everse.software/indicators/website/dimensions.html)
19-
along with a [formal schema](https://github.com/EVERSE-ResearchSoftware/schemas/tree/main) to be used in machine readable metadata
18+
EVERSE project is working to formally define a number of [research software quality dimensions](https://w3id.org/everse/i/dimensions)
19+
along with a [formal schema](https://w3id.org/everse/rsqd) to be used in machine readable metadata
2020
embedded in various resources.
2121

22-
Each of the quality dimensions will be an umbrella for a number of [quality indicators](https://everse.software/indicators/website/indicators.html),
22+
Each of the quality dimensions will be an umbrella for a number of [quality indicators](https://w3id.org/everse/i/indicators),
2323
representing a specific software quality aspect that can be measured.
2424

2525
Current research software quality dimensions are described below. This is still work in progress - we expect indicators

pages/your_tasks/ci_cd.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ also provide CI/CD processes and services built around code repositories - e.g.
7979
- {% tool "kubernetes" %} - for orchestration, enabling deployment, scaling and management of containerised applications.
8080
- Monitoring - tools like Prometheus, Grafana, and New Relic are used for real-time monitoring in production to ensure system health.
8181
- Infrastructure as Code (IaC) - tools like {% tool "terraform" %}, {% tool "vagrant" %} or {% tool "ansible" %} automate infrastructure provisioning and configuration, ensuring consistency across environments.
82+
8283

8384
[task_automation_github_actions]: ./task_automation_github_actions
8485
[task_automation_gitlab_ci_cd]: ./task_automation_gitlab_ci_cd

pages/your_tasks/documenting_software.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,7 @@ while fostering respect among developers.
138138
- List of all authors and contributors to the software.
139139
- Pointers to various other documentation about your software.
140140

141+
141142
## References
142143
1. [Lee B. D., Ten Simple Rules for documenting scientific software](https://doi.org/10.1371/journal.pcbi.1006561)
143144
2. [Wilson, G., Aruliah, D. A., Brown, C. T., Chue Hong, N. P., Davis, M., Guy, R. T., Haddock, S. H., Huff, K. D., Mitchell, I. M., Plumbley, M. D., Waugh, B., White, E. P., & Wilson, P.Best Practices for Scientific Computing](https://doi.org/10.1371/journal.pbio.1001745)

pages/your_tasks/languages_tools_infrastructures.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,5 +119,17 @@ Some interesting templates to consider for research software:
119119

120120
Of course, the RSQkit itself also uses templates to create pages, like [the one used for this task page](https://github.com/EVERSE-ResearchSoftware/RSQKit/blob/main/pages/your_tasks/TEMPLATE_your_tasks.md)!
121121

122+
## Training materials
123+
Below you can find introductory materials to the most commonly used programming languages used in Research Software:
124+
- Python: [Research Software Engineering with Python](https://alan-turing-institute.github.io/rse-course/html/index.html), [programming with Python](https://swcarpentry.github.io/python-novice-inflammation/index.html), [leveling up your Python](https://henryiii.github.io/level-up-your-python/notebooks/0%20Intro.html), [Python introduction for libraries](https://librarycarpentry.org/lc-python-intro/), [Python traps and pitfalls](https://gitlab.in2p3.fr/informatique-des-deux-infinis/pheniics/python-traps)
125+
- R: [Introduction to R](https://carpentries-lab.github.io/metagenomics-R/), [Software Carpentry: R for Reproducible Scientific Analysis](), [Software Carpentry: Programming with R](https://swcarpentry.github.io/r-novice-inflammation/), [Getting Used to R, RStudio, and R Markdown](https://rbasics.netlify.app/), [Modern Dive into R and the Tidyverse](https://moderndive.netlify.app/)
126+
- Julia: [Introduction to Julia](https://enccs.github.io/julia-intro/), [Julia for high-performance scientific computing](https://enccs.github.io/julia-for-hpc/), [Julia for high-performance data analytics](https://enccs.github.io/julia-for-hpda/), [Programming with Julia](https://carpentries-incubator.github.io/julia-novice/)
127+
- CMake: [hands-on workshop](https://enccs.github.io/cmake-workshop/)
128+
- Matlab: [Software Carpentry: Programming with MATLAB](https://swcarpentry.github.io/matlab-novice-inflammation/)
129+
- C++: [Modern Scientific C++](https://github.com/chavid/ModernScientificCpp)
130+
131+
132+
133+
122134
## Credit
123135
The first version of this page was inspired by content in and discussions on the [Netherlands eScience Center Guide to software development](https://guide.esciencecenter.nl).

pages/your_tasks/licensing_software.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,7 @@ In addition to the licenses above, Creative Commons also offers [CC0][cc0] - a p
151151
* {% tool "choosealicense" %} is a great tool to help you choose a license that is appropriate for your needs.
152152
* {% tool "spdx" %} (System Package Data Exchange - open standard project) provides a long list of [commonly used licenses][spdx-licences].
153153
* Check the [OpenSource guide](https://opensource.guide/legal/#which-open-source-license-is-appropriate-for-my-project) for guidelines on changing and editing licenses.
154+
* The [Software Licensing guidelines from CodeRefinery](https://coderefinery.github.io/social-coding/software-licensing/) provide additional insight
154155

155156
## How do I add a license to my code repository?
156157

pages/your_tasks/packaging_releasing_software.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,13 @@ This document specifically covers publishing Python packages to **{% tool "pypi"
153153
pip install --index-url https://gitlab.com/api/v4/projects/YOUR_PROJECT_ID/packages/pypi/simple my_python_package
154154
```
155155

156+
## Training materials
157+
158+
- [How to package a Python project](https://py-pkgs.org/03-how-to-package-a-python)
159+
- [Python Packaging (Carpentries)](https://carpentries-incubator.github.io/python_packaging/)
160+
- [Python 201 on Packaging](https://python-tutorial.dev/201/tutorial/packaging.html#packaging)
161+
- [Managing Academic Software development: Release management](https://southampton-rsg.github.io/swc-project-novice/04-features/index.html)
162+
156163
## References
157164

158165
* [PyPI - The Python Package Index](https://pypi.org/)

0 commit comments

Comments
 (0)