Teaching scientists how to share code

Teaching scientists how to share code

This course teaches them how to set up a GitHub project, index their project in Zenodo, and integrate Git into an RStudio workflow.

Image by : 



Get the newsletter

Join the 85,000 open source advocates who receive our giveaway alerts and article roundups.

Would it surprise you to learn that most of the world's scholarly research is not owned by the people who funded it or who created it? Rather it's owned by private corporations and locked up in proprietary systems, leading to problems around sharing, reuse, and reproducibility.

The open science movement is challenging this system, aiming to give researchers control, ownership, and freedom over their work. The Open Science MOOC (massively open online community) is a mission-driven project launched in 2018 to kick-start an open scientific revolution and foster more partnerships between open source software and open science.

The Open Science MOOC is a peer-to-peer community of practice, based around sharing knowledge and ideas, learning new skills, and using these things to develop as individuals so research communities can grow as part of a wider cultural shift towards openness.

The curriculum

The Open Science MOOC is divided into 10 core modules, from the principles of open science to becoming an open science advocate.

The first module, Open Research Software and Open Source, was released in late 2018. It includes three main tasks, all designed to help make research workflows more efficient and more open for collaboration:

1. Setting up your first GitHub project

GitHub is a powerful project management tool, both for coders and non-coders. This task teaches how to create a community around the platform, select an appropriate license, and write good documentation (including README files, contributing guidelines, and codes of conduct) to foster open collaboration and a welcoming community.

2. Indexing your project in Zenodo

Zenodo is an open science platform that seamlessly integrates with GitHub to help make projects more permanent, reusable, and citable. This task explains how webhooks between Zenodo and GitHub allow new versions of projects to become permanently archived as they progress. This is critical for helping researchers get a DOI for their work so they can receive full credit for all aspects of a project. As citations are still a primary form of "academic capital," this is essential for researchers.

3. Integrating Git into an RStudio workflow

This task is about giving research a mega-boost through greater collaborative efficiency and reproducibility. Git enables version control in all forms of text-based content, including data analysis and writing papers. Each time you save your work during the development process, Git saves time-stamped copies. This saves the hassle of trying to "roll back" projects if you delete a file or text by mistake, and eliminates horrific file-naming conventions. (For example, does FINAL_Revised_2.2_supervisor_edits_ver1.7_scream.txt look familiar?) Getting Git to interface with RStudio is the painful part, but this task goes through it, step by step, to ease the stress.

The third task also gives students the ability to interact directly with the MOOC by submitting pull requests to demonstrate their skills. This also adds their name to an online list of open source champions (aka "open sourcerers").

The MOOC's inherently interactive style is much more valuable than listening to someone talk at you, either on or off screen, like with many traditional online courses or educational programs. Each task is backed up by expert-gathered knowledge, so students get a rigorous, dual-learning experience.

Empowering researchers

The Open Science MOOC strives to be as open as possible—this means we walk the walk and talk the talk. We are built upon a solid values-based foundation of freedom and equitable access to research. We see this route towards widespread adoption of best scientific practices as an essential part of the research process.

Everything we produce is openly developed and openly licensed for maximum engagement, sharing, and reuse. An open source workflow underpins our development. All of this happens openly around channels such as Slack and GitHub and helps to make the community much more coherent.

If we can instill the value of open source into modern research, this would empower current and future generations of researchers to think more about fundamental freedoms around knowledge production. We think that is something worth working towards as a community.

The Open Science MOOC combines the best elements of the open education, open science, and open source worlds. If you're ready to join, sign up for the full course, which is, of course, free.

About the author

Jon Tennant -