1. 13

  2. 3

    As a maintainer of a few open source projects, I agree with the author that building and managing a community is difficult and time consuming.

    It’s very easy to open source a project, but too many companies see the first public commit as the end product. If you don’t have a dedicated engineer to manage issues, field pull requests, fix bugs, answer questions, and all the other tasks required in running a project, your community will stay small.

    The two tactics I’ve used in building my open source communities are being generous with commit access and investing in automation. Many open source projects are treated as pet projects, where only the original creator has commit access. If you’re lucky to have a person contribute more than one patch, give that person commit access. They’ll feel great because they can now help out with asking for permission, and you’ll feel great because you now have more help.

    My goal with automation is simple: if a user has commit access, they should be able to manage the entire project. For my open source game, this means that the entire release process is automated, powered by pull requests. Anyone can create a pull request from master into the release branch. If the pull request is merged, then the CI system packages up and publishes the release. While I had to invest significant time into the process, it allowed me to step back from the game without slowing down development.

    1. 1

      This is an excellent approach! I’ve heard other people do similar things!