Open source technology and infrastructure development is a very powerful way to make scalable software. Open source can also allow a more diverse community to build products that are flexible enough to solve for a broader set of use and edge cases.
Contrary to popular belief, many of these open source projects are developed in house at large technology companies (e.g. Google – Tensorflow, Angular, Android, Chromium; Facebook – React, PyTorch) and not all small independent groups collaborating on projects in the open (e.g. WordPress, Telegram).
In this post we talk about some of the advantages and issues of open source as well as some of the specific business models are built on open source projects.
Advantages & Issues
I spent a few years working on WordPress (at Automattic) and here were a few of the advantages and issues that I observed during my time there.
The biggest advantages of open source exist in leveraging the community for product development, hiring and product distribution.
- Product Development: The community can act as a decentralized product management function and help with QA, Localization (language, local integrations), and support.
- Long Tail: Open source allows users with very specific requirements or use cases to build these themselves which frees up the core development community to focus on the core use cases and platform. Anyone can add customizability and depth to the product.
- Diversity: Open source allows for more geo, cultural and variety of use cases for the same product which ultimately makes the product better for a more diverse and global audience.
- Hiring: For businesses that are built on top of open source technology, they can access a pool of talent already engaged in the project from the community — richer data on potential candidates and better hiring funnels.
- Distribution: Open source projects are typically free to try which leads to more bottoms up adoption. A single developer can make a decision to use open source technology which then ultimately propagates across an organization vs. relying on top down decision making.
The advantages that come with having a strong community can also lead to drawbacks as well.
- Community building: A core part of building open source products is building the community of users, developers and supporters of the project. Building community takes time and many open source projects take longer to get off the ground (when not incubated in larger companies with specific use cases) but are often more resilient at scale.
- Bar for completeness: New features in open source projects often have a higher bar for shipping, and it’s harder to run fast experiments and iterate (with data/feedback etc) – localization and accessibility increase the amount of product an development work to ship even for experimental features.
- Decision making: With a more decentralized product management function it’s harder for smaller groups to hold a vision of the product and make significant product evolutions without alienating members of the community. This often leads to slower iteration, but better adoption once the community embraces the changes.
- Bigger pie, smaller share: When building an open source product you’re often expanding the size of the addressable market but only capturing a portion of that for yourself. Closed loop companies that own all their technology, data, and users can monetize those users more aggressively but also may lead to divergent interests to their community of users over time.
For a product with as broad a use case as WordPress, I think that the advantages greatly exceed the issues and this is reflected in WordPress continuing to grow market share and now powering 42% of the web.
There are also a number of examples of both widely adopted open source software and successful business models and here are just a few companies who’ve built successful businesses with open source products.
There are a few high level categories of business models built on top of open source projects:
Hosting is one of the primary sources of revenue for many open source companies. Often, the creators of the technology have a brand halo effect around them can attract more users to their hosting service over others in the market.
Cloud hosting can make open source products easier to access over self hosting which requires more technical skill and investment. Hosting can include the following features (not a full list), which users are often willing to pay for:
- Authentication to allow for secure signon
- Permissions/Roles for access control
- Encryption (especially important in specific industries)
- Backups and changelogs (to recover previous versions)
Support and Consulting
Many successful open source projects have a rich community of freelancers, agencies and consulting services providers who are specialists in the technology and platform to help users most effectively leverage these tools. Open source projects are often more flexible but flexibility can come with complexity in set up and ongoing management, as the products are less streamlined for specific use cases. In the WordPress world there are many agencies that will help you set up and manage your site and provide ongoing site maintenance and support.
Even for do-it-yourself cloud hosted products like WordPress.com, support is an important part of the service that they provide and people are willing to pay a subscription fee for ongoing support for their site. WordPress.com has hundreds of support folks called “Happiness Engineers” to help users troubleshoot and perform light customization to their site.
Paid Extensions and Marketplace
Open source products often have an “open core” which has a base level of functionality that is immediately useful but for more complex use cases or advanced features users may have to pay for these as paid extensions. These extensions are often offered as in-house proprietary features to further differentiate the product (and the cloud hosted version paid tiers).
Some open source projects also have marketplaces where developers can build their own extensions for users. This marketplace can be free, but could also be monetized by the platform using revenue share or installation fees (much like Google/Apple do with their app stores).
Onboarding and Bundling
Finally, there are now more companies that are building streamlined products for more specific use cases powered by open source technology.
This could look like a full “bundle of products” tightly stitched together to solve a very specific use case (e.g. a site template for dental practices with all the right images, plugins, scheduling and payment systems with all the workflow and integrations totally templatized). This could also include very thoughtful onboarding flows, starter content and tutorials built on top of the open source technology.
Users are willing to pay for speed, ease of use and convenience of accessing their intended use cases right out of the box even if there is some sacrifice of flexibility to start faster.
Here are a couple of articles that I thought were thoughtfully put together on open source business models as well, in case you’d like to dig in further: