Lessons
> Note: Please see the syllabus for more information, including when we will do each lesson.
Roadmapping
- Read over this roadmapping tutorial from Mozilla Open Leaders & check out some of the examples. We won’t be following this exactly, but it is a good overview. https://mozilla.github.io/open-leadership-training-series/articles/opening-your-project/start-your-project-roadmap/
- The syllabus can be thought of as the roadmap for the programme, but the point of this exercise is for each of you to map these goals to your own timeline.
- Take the syllabus, and map out the main goals, or “milestones”. These include things like blogs, learning goals, and workshops. (This can be taken pretty much straight from the syllabus)
- Keep in mind dates and events for the upcoming 9 months. Will you need to change the dates for a specific milestone due to your schedule (work event, school exam, vacation)?
- Think about your personal goals for this fellowship. What are your short term, medium term, and long term goals? Are there milestones that reflect these goals?
- Are there additional milestones you want to add to your roadmap? For example, writing additional blogs, giving additional workshops? These can also be added later.
- Using project management tools: I recommend using project management tools like Trello, GitHub projects, or simply a pen + paper planner to write down your main milestone tasks to help you keep track of your progress. If you want to use Trello or GitHub projects and need help, Lilly can help you.
Journal Club Lesson
- We’ll be reading “Do you speak open science? Resources and tips to learn the language” by Paola Masuzzo and Lennart Martens https://peerj.com/preprints/2689/
- You will then answer the following discussion questions in Slack (I will asign each of you to answer 2 of these questions):
- Discussion questions:
- The authors identify four "pillars" of open science: data, code, papers, and review. Do you agree with these? Are there aspects of open science that you think are missing?
- When sharing raw data, what other information should also be released?
- What are some ways that researchers can openly release their data?
- Why is it useful to share the code used in an experiment?
- What are some ways to openly share code or software?
- What are preprints and how are they different from traditional publications?
- What are some reasons why researchers might not publish in open access journals? What are your thoughts on those reasons?
- What are some models of open peer review?
- What are some benefits and risks of open peer review?
GitHub Instructions - Using GitHub to post your blog
- GitHub instructions for the command line/terminal (Lilly can help you with this):
- The repository is here https://github.com/frictionlessdata/fellows
- The blog content can be found within the following folder: fellows -> content -> blog -> [your-blog-folder-name] -> contents.lr
- Step 1, Pull down the main branch so you have the most recent version of the website code on your local machine. Do this before you make your edits. Type 'git pull origin main'
- Step 2, Create a new branch: in the terminal, write 'git checkout -b your-branch-name' (replace with your branch's name, which can be anything)
- make sure you don't edit the main branch You can check with 'git status'
- Step 3, Add your blog text to the 'contents.lr' file within the correct blog folder. Each blog has it's own folder. Add your text as Markdown, and remember to keep the
title
andbody
keywords. - Step 4, Add and commit your changes: Once you finish editing the file, in your terminal, type:
- git status
- make sure everything looks OK
- git add content/blog/blog-folder-name/contents.lr
- git commit -m "adds your-name's blog"
- git status
- Step 5, Push your changes to your branch and open a Pull Request
- git push origin your-branch-name
- in GitHub, open a pull request (PR) + tag @lwinfree for review
- Lilly will merge your PR
- ask Lilly or each other if you need help!
Additional helpful resources here
Data Packages Lesson
Data Packages - using Data Package Creator
- Work through this tutorial on well-packaged datasets https://frictionlessdata.io/blog/2018/03/07/well-packaged-datasets/
- Watch this video on packaging data https://www.youtube.com/watch?v=VrdPj28-L9g
- In Slack, answer these questions:
- What makes up a data package?
- What kind of metadata would you include for the data you work with?
Additional helpful resources here
Python Framework Lesson
OPTIONAL - Learn how to Describe, Extract, Validate and Transform data using the Frictionless Python Framework
- Read the Introduction to
Frictionless-py
- Follow the Quick Start guide to install
Frictionless-py
- Follow the Basic Examples documentation
- Work through these two Jupyter notebooks: Fellows Python Framework Lesson Notebook and Frictionless Biology Notebook
Goodtables Data Validation Lesson
Validate your data with the Goodtables browser tool and with the command line interface
- Learn about how to validate data with Goodtables by going through the following tutorial and video (I recommend starting by first reading the tutorial, then watching the video, then actually trying to do the tutorial):
- Follow the first half of this tutorial to learn (1) how to validate data with the goodtables browser tool, and then continue on to the second half to learn (2) how to use the goodtables command line interface https://frictionlessdata.io/blog/2018/07/16/validated-tabular-data/
- Read through one of the following blogs from Cohort 2 Fellows:
- Kate's blog about validating with the try.goodtables
- Jacqueline's blog about validating with the Frictionless Framework
- Katerina's blog about validating with try.goodtables and Framework
- Once you are comfortable with the idea of validating your data with Goodtables, learn about continuous validation by:
- Reading through this guide on how to continuously validate your data with goodtables https://frictionlessdata.io/blog/2018/03/12/automatically-validated-tabular-data/
- Watching this video to see continuous validation in action: https://www.youtube.com/watch?v=9YHwu34D_vM&list=LLQe-pXn0XZzmRzvyOMZpfEg
Additional helpful resources here
Using Specs and Schemas
- Read through this introduction to JSON schemas by json-schema.org
- Read through the Frictionless Data Specs
- Focus on the DataPackage specs & the csv dialect
Open Science Lesson
Go over these resources:
- In the Turing Way Guide for Reproducible Research, read these sections:
- Overview, Open Research, Research Data Management, Reproducible Environments
- Read through the Data Management Plan Tool guidance
- Read this eLife Lab article about the Reproducible Document Stack
- Read this eLife Lab article about their Execuatable Research Articles
- Watch this video about Global Inclusivity in Open Science from the Organization of Human Brain Mapping (OHBM). Note: you will need to download this to watch it.
- Find another resource on reproducible research, open science, or data management and add it to the Fellows Resources site by opening a Pull Request on GitHub https://github.com/frictionlessdata/fellows/blob/master/content/resources/contents.lr
- Optional Create an ORCID if you don't have one
- Optional Extra resources (if you are interested in more material):
Audience Mapping Lesson
Knowing your audience
- Read through this information on audience mapping
- Make a copy of this template and fill it out yourself