Ideas around building an open source community

Coming across an article from the O’Reilly blog post about the handling of an open source project at Google, I just want to share a few extracted ideas.

How the TensorFlow team handles open source support

  • All their engineers are part of a rotation system: one engineer is responsible for one week in one the areas StackOverflow questions, pull request reviews, GitHub issue triage, debugging failing tests. While this makes him/her less productive it limits the overall disruption.
  • They keep track of there feature requests and bugs via GitHub issues.
  • While they have created a mailing list as well GitHub issues serve them better for discussions, e.g. of architectural changes.
  • They are using detective work e.g. git blame to find out the right person to answer particular questions.
  • They have the long term goal to spread critical expertise within and outside Google to have more people in the community who can provide help.
  • The see the creation of guidelines, e.g. for bug triage as one way to achieve a more wide spread work distribution.

Though some points seem similar to the Bahmni project most of the article was very Google specific.

So here some ideas from some other websites to make this thread worth reading.

How to Open Source at Zalando

Open Source Guides

Building Welcoming Communities

  • “Make it easy for someone to use your project.”
  • “Be responsive.”
  • “Document everything”
  • “Meet contributors where they’re at”

Finding Users For Your Project

  • “Go where your project’s audience is”
  • "Find people experiencing the problem that your project solves. "
  • “Ask for feedback”
  • “Helping newcomers, sharing resources, and making thoughtful contributions to others’ work will help you build a positive reputation.”
  • “Sometimes, it takes a long time before people notice your open source project.”

Best Practices for Maintainers

  • “Documenting your processes”
  • “Communicate your expectations”
  • “Let others build the solutions they need”
  • “Require tests and other checks to improve the quality of your code”
  • “Take care of yourself first!”

Badge App

https://bestpractices.coreinfrastructure.org/

The Badge App is a certification program from the Linux Foundation for open source projects to encourage people to follow best practices for open source communities. I assume the certification is free and might help to grow the Bahmni community.

The Badge criteria can be found on GitHub. Here some examples:

  • “The project MUST provide a process for users to submit bug reports”
  • “The project MUST publish the process for reporting vulnerabilities on the project site.”
  • “At least one static code analysis tool MUST be applied to any proposed major production release of the software before its release, if there is at least one FLOSS tool that implements this criterion in the selected language.”

FLOSS Weekly

If you would like to spread the word about Bahmni one of the project leaders could write an email to Randal Schwartz at merlyn@stonehenge.com. He can give you the opportunity to present the Bahmni project to the open source community.