As software engineers, we often struggle to balance the workload and other responsibilities. For example, when creating an open-source software (OSS) project, developers struggle to combine engineering efforts with growing the community. This often results in the low or stagnant growth of the project.
I'm Opemipo Disu - a DevRel Engineer, and I am happy to share my experience building an open-source community.
Recently, I hopped on Daytona's Global Tour and spoke at Lagos' Edition. At the event, I had the opportunity to talk about my experience building two open-source projects, balancing engineering and community management, and tips on how to build a successful open-source project.
TL;DR
Common Pitfalls: Lack of community management, poor documentation, and inadequate promotion.
Inclusivity: Implement a code of conduct and provide accessible resources.
Growth Tips: Recognize contributors and improve onboarding for user engagement.
It was great to share my experience with the audience as I shared something engineers often struggle with. In the following sections of this blog post, I will share the major highlights of my talk.
Common Pitfalls in Open Source Projects
Before my transition to be a DevRel in 2020, I noticed developers like myself found it very hard to combine engineering with other activities. Especially when building an open-source project, developers find it hard to interact with the community and provide a clear guide on how the project works.
Here are some common pitfalls that developers face when working on open-source projects:
Lack of community management: Developers spend most of their time coding and barely get time to build a community. Hence, there's no user base around the project; this will result in the project getting little or no traction. Bringing users and maintaining communication with them is key to an open-source project, as it helps with the project's growth and sustainability.
Poor Developer Documentation: Not every developer can communicate with other developers. Providing clear and concise documentation is crucial. Apart from this, it is essential to ensure the information in the documentation is accurate for potential users and contributors. While creating documentation, it's best to add contribution guidelines for standards.
Poor Developer Experience: A project's growth depends on the experience it offers developers. This includes easy onboarding, clear instructions when using a product, and a welcoming environment for users and contributions. When there's a poor developer experience, the project's user base will be affected negatively.
Poor user feedback/support: Feedback is a form of support in developer communities. When a member of a community gets poor feedback, they lose interest in the project and the rest of the community. Poor feedback from maintainers to contributors and users can lead to stagnation of the community as feedback helps to keep the project relevant.
Inadequate Promotion: Building a great project is the first step. Promoting it through blog posts, social media, conferences, and collaborations can help attract users and contributors.
One trick I've used in different instances is leveraging existing developer communities such as Dev.to, Hashnode, Medium, etc.
Embracing Inclusivity in Open Source
As much as you're trying to bring in tons of users and contributors, their safety matters, too. Inclusivity in open source means creating a safe environment for everyone, regardless of their background, skill level, or identity.
It involves implementing and enforcing a code of conduct that promotes respectful and supportive interactions, ensuring that all members feel protected from harassment and discrimination. Code of Conducts' are often attached to the developer documentation of the project.
Additionally, providing accessible documentation and resources helps to lower barriers to entry while actively reaching out to underrepresented groups and encourages a more diverse contributor base.
Looking Forward...
In my journey as a DevRel, I've learned that building a successful open-source project is as important as people think code is. Establishing an inclusive and interactive community around your project can make a difference.
Investing time in recognizing contributors and continuously improving the project's onboarding experience can help transform users into active contributors and advocates for your project. By focusing on these aspects, developers can ensure that their projects not only survive but thrive in the competitive landscape of open source.
Conclusion
By addressing common issues such as lack of community management, poor documentation, inadequate developer experience, insufficient feedback, and inadequate promotion, developers can improve the growth and impact of their open-source projects.
Thanks for stopping by to read this blog post on my most recent speaking engagement. I'm open to questions on this topic and anything related to open source. I look forward to having questions, connecting with you, and discussing how we can enhance our contributions to the open-source community. Feel free to reach out on Discord (coderoflagos), Twitter/X, or LinkedIn.