Contributing to Our GitHub#

This page is your one-stop shop for uncovering the many resources for open science that are on the GitHub! Read on to learn more about how to use our GitHub, how to engage with us, and identify resources to help you, your research team, and your organization get started with open science.

VERSO-UVM/Open-Science-101

Before contributing, please read our License and our Code of Conduct. A summary of the code of conduct is also below.

We Want Your Help!#

No, really, we do! Please come and participate in our community and help us transform to open science together!

Depending on your level of interaction with us, visitors to the site can be described as:

  • A community member: anyone in the open science community who visits the site, utilizes online tools, or attends an open science event event.

  • A participant: anyone who posts a comment or poses a question in the GitHub Discussion Space, reports a site bug or requests a new resource in GitHub Issues, or attends an event and utilizes any virtual chat features during that event.

  • A contributor: anyone who forks this GitHub repository and submits pull requests to make additions or changes to the posted content.

Everyone reading this page is a community member, and we hope everyone will post comments and join discussions as a participant. Contributors are welcome, particularly to help find and point to other open science resources.

All community members must abide by the code of conduct when engaging with us, either online or in-person.

Code of Conduct#

The code of conduct can be found here. Responses to code of conduct violations on this GitHub are based on the level of impact, which is tied to where the violation took place–either a comment, discussion post, or in a pull request (PR) to the repository. Code of conduct violations for the GitHub will be addressed in the following manner:

  • First code of conduct violation

    • Participant: Comment removed + contacted by moderator

    • Contributor: PR not accepted and removed from GitHub + contacted by moderator

  • Second code of conduct violation

    • Participant: Comment removed + contacted by moderator + ban for 90 days from space where offense occurred

    • Contributor: PR not accepted and removed from GitHub + contacted by moderator + banned from PRs for 90 days

  • Third code of conduct violation

    • Participant: Comment removed + contacted by moderator + permanent ban from all spaces

    • Contributor: PR not accepted and removed from GitHub + contacted by moderator + permanent ban from GitHub and other TOPS digital communication

  • Commit of Malicious Code

    • Immediate and permanent ban from all spaces

  • Threat of violence against an individual or group

    • Immediate and permanent ban from all spaces

Ways to Contribute to the GitHub#

There are three, major ways to contribute to the GitHub.

  • Ask a question, provide an answer, share your thoughts and contribute to brainstorming through Discussions. The GitHub discussion area is intended for general Q&A, asking for community stories and experiences, and beginning conversations on new or existing open science topics.

    • To learn more about GitHub Discussions check out their documentation

  • Suggest a change, addition, or deletion to what is already on the GitHub using Issues. Issues can be about any plans, timelines, and content.

    • Before submitting a new issue, check to make sure a similar issue isn’t already open. If one is, contribute to that issue thread with your feedback.

      • When submitting a bug report, please try to provide as much detail as possible, i.e. a screenshot or gist that demonstrates the problem, the technology you are using, and any relevant links.

      • Issues labeled :sparkles:help wanted:sparkles: make it easy for you to find ways you can contribute today.

  • Become a contributor! Fork the repository and make commits to add resources and additional materials. Here are some ways you can contribute:

    • by reporting bugs

    • by suggesting new features

    • by translating content to a new language

    • by writing or editing documentation

    • by writing specifications

    • by writing code and documentation (no pull request is too small: fix typos, add code comments, clean up inconsistent whitespace)

    • by reviewing pull requests.

    • by closing issues

In the spirit of open source software, everyone is encouraged to help improve this project!

New to GitHub? Start here!#

You can sign up for GitHub here!

For a more in-depth start, we suggest Getting Started with Git and GitHub: The Complete Beginner’s Guide and The Beginners Guide to Git and GitHub. We’ve summarized some of the most important points below.

Making a Change#

This section is attributed to NumFOCUS and Adrienne Friend.

Once you’ve identified something you’d like to help with you’re ready to make a change to the project repository!

  1. First, describe what you’re planning to do as a comment to the issue, (and this might mean making a new issue).

    This blog is a nice explanation of why putting this work in up front is so useful to everyone involved.

  2. Fork this repository to your profile.

    You can now do whatever you want with this copy of the project. You won’t mess up anyone else’s work so you’re super safe.

    Make sure to keep your fork up to date with the master repository.

  3. Make the changes you’ve discussed.

    Try to keep the changes focused rather than changing lots of things at once. If you feel tempted to branch out then please literally branch out: create separate branches for different updates to make the next step much easier!

  4. Submit a pull request.

    A member of the executive team will review your changes, have a bit of discussion and hopefully merge them in!

    N.B. you don’t have to be ready to merge to make a pull request! We encourage you to submit a pull request as early as you want to. They help us to keep track of progress and help you to get earlier feedback.

Development Model#

For accepting new contributions, TOPS uses the forking workflow. As the first step of your contribution, you’ll want to fork this repository, make a local clone of it, add your contribution, and then create a pull request back to the TOPS repository.

All documentation should be written using Markdown and Github Markdown-supported HTML.

Labels (Issues, Pull Requests, and Discussions)#

Descriptive Labels - Gives more context as to the type of feedback being provided

  • OS101 Curriculum: General Suggestions

    • General feedback for the curriculum without needing to point to a specific part of the curriculum.

  • OS101 Curriculum: Content Suggestions

    • Suggestions for text found in the open science 101 curriculum. Use Lesson and Module labels.

  • OS101 Curriculum: Graphic Suggestions

    • Suggestions for graphics found in the open science 101 curriculum. Use Lesson and Module Labels.

  • OS101 Curriculum: Knowledge Checks

    • If feedback is with relation to a knowledge check, this label is useful for this.

  • OS101 Curriculum: Bug Report

Status Labels - Used to indicate whether changes still need to be implemented on either GitHub or openscience101.org

  • OS101 Status: Curriculum

  • OS101 Status: GitHub

    • GitHub still needs changes implemented.

  • OS101 Status: No Change Needed

Module Labels - Used to point to specific module content

  • Module: 1

  • Module: 2

  • Module: 3

  • Module: 4

  • Module: 5

Lesson Labels - Used to point to specific lesson content

  • Lesson: 1

  • Lesson: 2

  • Lesson: 3

  • Lesson: 4

  • Lesson: 5

Discussion Categories (Discussions Only)#

OS101 Curriculum

  • OS101 General: General questions, feedback, and comments for the OS101 curriculum.

  • OS101 Concepts: Talk about concepts taught in OS101, theory, applications in your research, potential for OS101 concepts to help solve difficult problems, and much more.

  • Why OS101?: If you are curious about taking the curriculum but not quite sure if it is right for your career path, we encourage you to voice questions/concerns you may have.

  • OS101 Workshops: Engage in discussions with fellow researchers about a specific workshop session, or workshops in general.

  • OS101 Success Stories: What kind of success has the OS101 curriculum enabled in your research?