11/19/2013— Tim Ryan
Free and Open Source Software helped shape the growth of software development. Giving users the freedom to modify and control their own devices, as well as contribute freely to their development, is uniquely possible in this industry. Even today’s fashionable litmus test for hiring (“Github is My Resume”) measures open source contributions as a proxy for developer skill.
Open source is such a strong ideology that the first time someone asked “How are you going to make money off of open source?” I stuttered. The question they implied was, “Why are you developing a product and giving it away for free?” A quick reading of the freedoms that FOSS gives users seems to imply that making money is the antithesis of user freedom.
Any research into what successful open source companies do will show you that, yes, most companies don’t “make money” off open source code—they make money through services, support, or selling products with an “open core”. So what is the business motivation for releasing any part of a project as open source or under a FOSS license?
If you release free or open source code, you’re willfully revoking your legal monopoly to control how people modify or use your code—good for you! Whether you make your source code available for inspection/modification, or choose a license that lets users freely deploy that code to arbitrary devices, it’s a simple exchange: You are irrevocably trading copyright you own in exchange for other benefits.
Depending on your license, you may revoke your ability to charge money to license your code. A common solution is dual-licensing: release code under the viral GPL license and license it under a commercial license. Here, you revoke your right to keep code private, while directly selling to businesses the right for them to keep their code private. Hypocrisy! But also wildly successful, and demonstrably profitable. Not only are to targeting customers with a) money and b) incentive, you’ll also reaching to those to stand only to benefit from open source code by improving it.
These days, many companies release code under the MIT/New BSD/Apache licenses, which essentially revokes a) the right to keep code private and b) to prevent users from building closed-source products on top of them. You might look at Heroku, Nodejitsu, and others as businesses that released their entire stack under these licenses. Always-on Internet connections have made service-based businesses possible, changing licensing from “charge for access” to “charge for time/resources”.
(Interestingly, shared source—making source code available only to licensees—hasn’t seen much traction. Perhaps a solution you can debug but not alter yourself is no better than one you can reverse engineer.)
The hardest aspect of rationalizing “how you get paid with open source” is because when no money changes hands, you don’t. An open source project is not a business; it’s a trade of rights for increased development velocity, enthusiasm, or marketshare. You can build a business profiting off marketshare with ads, create powerful services around an open core, or build a profitable brand around enthusiastic supporters. Each of these benefits from open sourcing code, but is fundamentally a business in its own right. When you find business models that users are familiar with and which satisfy their needs, there is the potential to make money, not in spite of, but as a direct result of open source projects.
Code costs nothing to distribute and benefits from more eyes, not fewer. If reserving your copyright doesn’t offer business value—or actively detract from your business—get rid of it! Open source or freely license your code, build a community around it, and strengthen your core business/brand/market—that’s what you’re making money on anyway, right?
— Tim, software man