So, you’ve just finished creating your open-source project. This is your first open-source baby, and you’re really proud of what you’ve accomplished. But, the road ahead is challenging. From millions of public open-source repositories, how do you stand out from the crowd? Are there any tricks and tips for building a thriving community of developers around your project?
We’ll tell you this much: it’s not a walk in the park. However, by following the strategies outlined in this article, you’ll manage to foster the growth of a healthy community and help your open-source project reach its full potential. Let’s explore the best practices!
Table of contents
Make It Easy for Everyone to Use Your Project
How did you manage to put together that table from Ikea? Or find that amazing park outside of town? You followed instructions!
The same applies to building an open-source community. Creating an ecosystem around your project is just as important as creating the project itself. A strong ecosystem will help you attract more users and stimulate community growth.
At the end of the day, it’s developers we’re discussing. When these talented souls find a tool that can make their work simpler for them, they’ll grab every chance to not only use that tool but also improve it.
But what makes an excellent ecosystem? Is it:
- the technical documentation?
- the readmes?
- or the API?
It’s everything. However, just like good code, proper documentation is difficult and time consuming to write. Are there any best practices to take into consideration? There are a few ✍:
- Write the documentation in an engaging and transparent manner.
- The documentation needs to detail all aspects of the project.
- Include examples of how to use the software.
- Update your documentation regularly.
- Write documentation that is easy to contribute to.
Clearly Explain How to Contribute
Interested developers who want to contribute to your project need to have all the information at hand to get started and work at full speed. To avoid having developers spending time searching for the documentation they need, make it easily discoverable. Consider creating a dedicated section for your Contribution file.
In fact, according to GitHub, 93% of people consider incomplete or outdated documentation to be a major problem. Improper documentation can make a person not want to come back.
To avoid this scenario, here are a few tips ?:
- Explain your community how to contribute, as clearly and as simply as possible.
- Create a Contribution file and keep your documentation up-to-date.
- Label your documentation appropriately so that it’ll be easy for newbies to scan your issues and get started. For example, create files like “for newbies”, “small bugs to resolve”, or “improve documentation”.
- Lastly, don’t forget to make people who land on your open source project feel welcome. Thank them for their interest in your open source project, using clear and accessible language. A few words of kindness can prevent someone from leaving your project.
Build Personal Relationships
Internet collaboration can often feel lonely and impersonal. If you’re going to be collaborating with all these people remotely, you’ll need to form closer relationships. You want your community of developers to know you as a person, and not just as a GitHub account.
To make your community more personal, you might find the following best practices to be quite useful ?:
- Create communications channels using a tool like Discord. Discord is a free open source voice and text chat tool. It that was built for gamers, but developers have found it to be a super useful tool for their open source projects. It can facilitate the sharing of ideas, asking questions, and forming personal relationships.
- Welcome newcomers to the group and getting them up-to-speed with current developments.
- Identify your greatest contributors and help them advance. Invite them to chats and calls to expand their knowledge of the platform. Consider referring them to individuals and companies for collaboration. The more your community members grow and upgrade their skills, the more experts you’ll have on your platform.
Make People Feel Included
Your open-source community might be more willing to contribute to your project if they feel a sense of inclusiveness. The more you make others feel part of the project, the more enthusiastic and motivated they’ll be to stick with you through thick and thin.
In case you’re wondering what are the best ways to make your open source community feel included, here are a few ideas ?:
- Listen to their feedback, both the positive and the negative. You might find the most useful information in hard-to-hear feedback.
- Make sure you’re available on different channels so that users will have an easy time communicating with you.
- Consider having a developer mailing list that will offer your users ongoing information. Everyone who’ll subscribe to the list will receive information like latest blog posts, public releases, and major announcements.
- Another great idea would be to write a blog where you’ll thank your contributors. Here’s an example.
- Instead of you fixing some easy bugs, mentor a person who’d like to contribute.
- Include a Contributors file in your open source project and list every person who’s made a contribution. Just like Sinatra has done.
- Let your most trustworthy contributors be maintainers of your open source project. Give them commit access and offer them the chance to maintain the projects to a professional standard.
Set a Code of Conduct
Your open-source project might bring together people from all over the world. Surely, diversity can be incredible, but it can also lead to major conflicts between your open source community.
According to GitHub, negative interactions between users in open source are quite common. Nearly 18% of people who're active in open source communities have been faced with a negative interaction with another person. Moreover, 50% of them have been a witness to a negative communication between other people in open source. The most common negative interactions are impoliteness, name calling, and stereotyping. A whopping 21% of users said they stopped contributing to a project because of a negative interaction.
Your open source community needs to offer a harassment-free experience for all users, regardless of their age, ethnicity, gender, nationality, sexual identity, or religion.
So, in order to foster an open and welcoming environment and avoid negative interactions, you should consider enforcing a Code of Conduct. If you need help getting started, take a closer look at the following tips:
- Address negative incidents quickly to retain your contributors and foster collaboration.
- Address negative interactions politely and publicly. You want to send a message to contributors that negative behavior won’t be tolerated on your open source project.
- Give people the tools to act against negative interactions and protect themselves. Blocking a user is one of the most efficient ways for empowering people to take action.
- Make the code of conduct file visible to your open source community by linking it from your Contribution or Readme file.
- Another tool that you might find handy is an open source project called Contributor Covenant. It’s a code of conduct that open source projects can use to solve issues with civility, harassment, and discrimination.
Take a look at the Django Code of Conduct and the Citizen Code of Conduct for further inspiration.
Conclusion
We genuinely believe that building a thriving open source community around your project is possible. You can do this by being 100% transparent with your users, building personal relationships, making people feel included, and setting a clear code of conduct.
Investing time and effort to create an enthusiastic community is worthwhile. After all, all those open source products you’re using every week are fueled by thriving communities like the one you’re trying to build.
The community you’ll build will only get you closer to your long-term goals of making the product the best tool on the market. The most crucial thing you need to remember is that your relationship with the open source community is a two-way street. Earn their support and engagement by building an environment in which they will also benefit from the collaboration.
To sum up, in order to build a vibrant open source community, you need to:
- Make it easy for everyone to use your project.
- Clearly explain how to contribute.
- Build personal relationships.
- Make people feel included.
- Set a code of conduct.