As seen on forbes.com
The next trillion-dollar enterprise software sector will be driven by companies creating platforms that win over developers. As I’ve previously discussed, developers are prone to adopt API-based services to save time. But, what type of software do developers love most? Open source. Tens of millions of developers worldwide utilize open source platforms because they can access the code, tinker with applications, contribute to projects, and take part in a community. Thus, software companies built on an open source foundation have the potential to become billion-dollar businesses.
However, effectively monetizing open source software, which is by its very nature free, is a huge challenge.
In a series of articles, I will describe the current thinking on how to build a successful open source company—one that not only wins over developers, but also has the potential to generate hundreds of millions of dollars in annual revenue. In this piece, I’ll unpack the first two steps needed to create the framework for a commercial open source company: managing software governance and building a community. In future posts, I’ll delve deeper into other key issues needed to build a profitable open source company, such as business model selection and navigating competition with public cloud providers.
Step One: Decide How Your Open Source Project Will be Governed
Before even thinking about how to make money, entrepreneurs must decide how to structure and govern their open source projects. A common governance model emerging today is one where the open source company exerts a strong influence over how the project develops, welcoming members of the community to contribute yet ensuring all collaboration works toward a well-planned product roadmap. Companies such as Elastic and MongoDB pioneered this open-but-controlled model and emerging winners such as HashiCorp and Kong are also succeeding with this framework.
Exerting strong influence on the development of features and functions, coupled with maintaining primacy over the roadmap, is critical for open source companies attempting to build commercial businesses from their projects. However, there is a fine line between exerting influence and becoming too controlling. If a company is perceived by its community as tone deaf to users’ needs and looks to be building the software entirely on its own, it risks appearing like a classic “closed-source” software company.
The trick is to clearly communicate your governance model early on. Entrepreneurs should explain to developers how the project is being managed, who the project leaders are within the company, what is allowed in terms of outside contribution, and whether the project is being overseen by a third-party foundation such as the Cloud Native Computing Foundation or the Apache Foundation.
Several emerging private open source companies, such as Confluent and Databricks, base their commercial offerings on open source projects that are part of trusted third-party foundations. (Confluent and Databricks base their businesses in large part off of Kafka and Spark, respectively, which are both Apache Foundation projects). Foundation-based governance can limit the level of direction a company has over an open source project. However, if the project’s founders and a critical mass of the most committed evangelists are employed by the company, they can still exert significant influence.
In any event, a company should explain where it has ultimate decision-making power and where it allows community members to add to the project. For example, a governance model may state that all core features and functions are controlled by the company, but developers may fix bugs, create extensions, and build connectors to third-party software.
Step Two: Build a Community
Once you’ve created and communicated a governance model for an open source project, it’s time to build a fervent, committed community of developers. This type of community doesn’t just “happen” and will typically take years of hard work to foster. Early founders are critical community-builders. Often developers themselves, open source entrepreneurs understand the developer mindset. To start building community around a project, founders can go to developer conferences and hackathons, take part in online discussions, and write technical articles about the project. They can share tips about the source code and discuss ways to use it to build innovative applications.
When building an open source community, the bottom line is total transparency. Members of an open source community are a company’s partners and evangelists. They extol the virtues of a project, write about how they are using the code, and contribute to the technical success of the project. Companies should always treat their communities with respect, asking developers for their input on new features and functionality. It is critical to be fully transparent about which features will remain free in the core open source and which will be premium.
In my next article, I will delve into how to design an open source business model that both supports a developer community and paves the way toward recurring revenue. I will do a deep dive into how to build, manage, and execute such a model. Because once you’ve structured the governance of an open source project and built a committed community, the next step is to start to monetize.
Note: My firm, GGV Capital, is invested in HashiCorp and Kong, and I am a board member of HashiCorp.
Thanks to Aghi Marietti, Armon Dadgar, Joseph Jacks, Dave Kellogg, Dave McJannet, Erica Schultz, and Jay Kreps for their kind and patient assistance on this series of posts.