This repository contains curated collections of training resources (contained in various CSV files) related to research software quality and general software and data skills from different research domains and infrastructures collected as part of the EVERSE project (WP5).
The working spreadsheet is used as a living document to constantly add and update training resources the content of which is then periodically released in this repository.
- MS15 milestone report "Mapping of the stocktake of training materials across the training initiatives in the research communities of WP4 and a first assessment on gaps to be filled"
- March 2025 GAM workshop spreadsheet - based on the MS15 report above, we started curating the collected training resources further and classifying them according to the reseach domain, resource type, and software quality dimension they address
- Working spreadsheet - we are using this spreadsheet for the ongoing curration and collecting of training resources which are then periodically transferred to this repository
Collection of training schools, programmes or events.
Collection of reports and publications.
Collection of projects and working groups with training component.
Collection of keywords used to describe and curate various training materials to facilitate searching and tagging in various catalogues.
This repository fetches through GitHub Actions training materials from a Google spreadsheet and translates them into a .json file.
-
Have a Google spreadsheet. If another spreadhsheet is used: get the ID of your spreadsheet and modify
idinsrc/config.yaml. -
Have a sheet inside it. If another sheet is used than the one provided in
config.yaml, modify aspreadsheet:object or create another one, see below an example.spreadsheet: - name: "my_other_sheet" gid: 123456789 skip: False schemaType: "Dataset" -
The sheet must have the same column names as
mapping.tessentries insrc/config.yaml. E.g., ifmapping.tessisTitlethen your sheet must have a column calledTitlein order to extract this information.
.
├── .github
│ └── workflows
│ └── update_json.yaml
└── src
├── config.yaml
├── csv_to_json.py
└── download_csv.py- It will run every day at 1:00AM or when a push to the main branch is done
src/download_csv.pyis called and downloads the sheets of a given Google spreadsheet under a newly created/csvdirectory.- Then
src/csv_to_json.pytakes the csv's in the/csvdirectory, converts them as.jsonfiles and stores them in a created/jsondirectory. - The workflow then add, commits and push the changes to main.
id: Google spreadsheet identifierspreadsheet: list of objects {name, gid, skip, schemaType}, each of them representing a sheet of the Google spreadsheetspreadsheet.name: name given to the csv file when getting fetched bydownload_csv.pyspreadsheet.gid: sheet identifier (Google ID)spreadsheet.skip: when set toTrue, thedownload_csv.pyscript will skip the download thegidsheet (mainly done forspreadsheet.name == "keywords")spreadsheet.schemaType: following schema.org, we gave the appropriatetypeto the kind of materialsmapping: list of objects {tess, schema} which acts as a dictionnary,mapping.tessis the field in TeSS corresponding tomapping.schemain schema.org, they are repsectively key-pair values.mapping.tess: metadata field known by TeSS, it must match the column names, e.g., if you have columnURLsinstead ofURLin your Google spreadsheet, please changemapping.tesstoURLsinstead of currentURLmapping.schema: metadata field known by schema.org
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
