Open source is a viable business strategy for software vendors to disrupt existing markets and conquer new ones. Just why is it easy in some markets and hard in others? I argue that you need to cut the product in such a way that there is a clear separation between what a never-paying community-user wants and what a commercial customer needs. In addition, you need to tie the commercial features closely to your company’s intellectual property and capabilities to keep competitors at bay. If you can do that, you are in the right place. If you can’t, you may want to get out of there.
The benefits of a commercial open source business model, in which a company develops some piece of software and releases it as open source, accrue from the company’s ability to foster a successful community of users (not necessarily customers) of their product. The community finds bugs, provides innovation, and helps market the product. It helps building up the reputation of the product and the company and you want to nurture this. Still, a non-paying community won’t make you a profitable company. For this to happen, you need to define commercial features that you can withhold from the community and make available to paying customers only. This is a serious challenge: If non-paying users actually need these features, and you are withholding them, you may quickly lose the love of the community and the associated benefits.
Examples of commercial features that a never-paying community understands it might not get for free are the so-called enterprise readiness features like authorization and authentication or simply features that cost money like providing the software as a service.
As you are doing this, you need to keep the necessary intellectual property or required capabilities close to your company. Most notably, the provision of open source software as a service might be copied too easily by the large cloud providers. Amazon’s provision of Redis as a service (labeled differently for trademark reasons) and Redis Labs heavy-handed response by changing the license to prevent such competition demonstrate how difficult this separation can be.
I don’t have a simple answer to how to keep cloud competition at bay beyond never having open-sourced those features in the first place. As the Redis Labs example shows, it hurts to have to go back on your open source promise.
I am seeking to hire a Ph.D. student who would like to work on product management in commercial open source software and solve this puzzle. I have been searching for such a person for a long-time and he or she is hard to find: You need not only a good understanding of how software product vendors work, but also need appropriate research methods skills or at least the willingness to learn them. On the positive side, German universities pay Ph.D. students a reasonable salary (not just a stipend) so if you know someone or are interested yourself, please talk to me.