Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve Open Source Best Practices #1175

Closed
16 of 18 tasks
isabelle-dr opened this issue May 28, 2022 · 1 comment
Closed
16 of 18 tasks

Improve Open Source Best Practices #1175

isabelle-dr opened this issue May 28, 2022 · 1 comment
Assignees
Labels
documentation Anything related to our documentation

Comments

@isabelle-dr
Copy link
Contributor

isabelle-dr commented May 28, 2022

Context & Issue

As we are getting more interest from contributors to this validator, improving some of our open source practices becomes a priority.
Currently, interested contributors don't have a straightforward way of knowing what to contribute, or what the process is. We would like to improve our current process so everyone has a great experience contributing to this project!

Definition of done

When all the user needs are met:

  • As an interested contributor, I can see the contribution process for the type of contribution I'm interested in doing
  • As an interested contributor, I can see what types of collaboration I could do with this project
  • As an interested contributor, I can share my interest to contribute to a new feature and I can see if others are interested in contributing as well
  • As an interested contributor, I can see MobilityData's roadmap for the Canonical GTFS Schedule Validator

How will this work?

After looking at successful open source projects and receiving feedback from our current contributors, we identified the following actions:

  • An improved contribution guideline that contains:
    • the different types of contributions we need (ex helping with a code review if different from adding a new rule)
    • what should be included in one PR (smaller precise PRs are recommended as opposed to big PRs containing several new functionalities)
    • a code review process where community members can participate
    • a link to the slack channel for contributors that are looking to discuss their feature ideas & find others interested
    • a process for contributors interested to contribute on bigger features, with a PRD template
  • a link to the roadmap on the repo
  • a more complete issue template (inspiration)
  • public sprint planning events and meeting notes that contributors can join
  • an automatic message when someone opens an issue or PR for the first time using the Welcome GitHub app (inspiration)
  • a list of collaborators and their role in the repo (inspiration)

To do

Must

  • Research on existing OS communities
  • Draft a first Contribution Guideline and get feedback from the community
  • Draft final Contribution Guideline document and add to the GH repo
  • run triage of all GH issues open

Could

  • (optional) Interview with existing OS community
  • add "needs triage" automatically when a new issue is opened
  • a message for contributors that are at their 10th / 50th / 100th PR

Materials

resources

@isabelle-dr isabelle-dr self-assigned this May 28, 2022
@isabelle-dr isabelle-dr added the documentation Anything related to our documentation label May 28, 2022
@barbeau
Copy link
Member

barbeau commented May 31, 2022

FYI, repos I've worked on have used Google's blunderbuss tool to automatically assign issues to users:
https://github.com/googleapis/repo-automation-bots/tree/main/packages/blunderbuss

You configure like a normal GitHub bot - here's an example config file:
https://github.com/googlemaps/android-maps-utils/blob/main/.github/blunderbuss.yml

We've used it to randomly assign incoming issues to one of the maintainers, but you can also configure it to assign based on the label on the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Anything related to our documentation
Projects
None yet
Development

No branches or pull requests

2 participants