This presentation is an introduction on how to monetize open source. I will cover the following topics including, why build open source software? How do I make money if my software is open source? What if I have great ideas but no time or skill to build it? How do I incorporate pure open source businesses like Red Hat and Canonical into a personal strategy?
How To Make Money Open Source is an ePub book which helps the entrepreneur learn to apply the Floss Model in their business and create predictability by turning the business into a source code, where it can be scaled and managed easily.
Offering paid support is one of the most straightforward revenue streams for all kinds of open source projects. As a project maintainer, you have a lot of knowledge about the codebase. This puts you in the position to offer consultancy or support services to companies that want to use your code.
On the other hand, offering paid support doesn’t provide a scalable business model for open source projects. Because most projects are maintained by a few developers, there’s limited time for them to offer support to companies. Bear in mind the time required to improve the functionality and maintain the codebase.
In conclusion, it’s an effective way to earn some money as an open source maintainer and keep the project going.
Bug bounty programs
Bug hunting, or as it’s usually known, bug bounty programs, is a way of earning money either by reporting errors on other systems or by solving them and submitting your pull requests with the code that fixes them. These programs are usually part of the entire vulnerability audit of the software being tested and accompany other internal processes the developers are implementing.
There are very big companies who submit their products for this type of treatment, and when we say “big,” we’re not kidding. With a basic search, we can find some interesting options, but in order to keep with the theme of “making money from open source,” here are some examples of high-paying organizations with bug bounty programs on their open-source products:
- Mozilla: They have two main programs, one for their actual software and one for their websites. Offering to pay up to $10,000 on the first one and up to $5,000 on the latter.
- Apache: This web server is probably known to most (if not all) back-end developers. Through its program it pays bounties of up to $3,000 to those able to solve the most critical bugs.
- Google Android: Also interested in making the most stable and secure mobile OS out there, Google offers up to $150,000 dollars for the most critical problems found and solved (yes, you read that number right).
There are many different lists of bug bounty programs, but you can find a good, up-to-date one on this website. Overall, this option is quite lucrative if you are able to put in the hours. That being said, you also need to specialize your knowledge and focus on security bugs if you want to reap the big rewards.
Last but certainly not least, aside from bug bounties, you can also get paid by fulfilling OSS (open-source software) bounties over at BOSS, a relatively new initiative that has lots of potential. Here, project owners can submit development tasks that they pay for on completion. This is certainly not as lucrative as the above programs but also requires less of a focus on security and can be tackled with a more generic software development profile.
Sell Value-Added Enhancements
Although the basic open source software may be free, you can create and sell add-ons that provide additional value. For example, the open source WordPress blogging platform includes support for themes or visual layouts. Many free themes of varying quality are available. Several businesses have come along, such as WooThemes and AppThemes, who sell polished themes for WordPress.
Either the original creators or third-parties can make and sell enhancements for open source projects, making this option a great opportunity for making money.
Make it your calling card for companies looking to hire
Now this one is a bit of a curveball, mainly because it isn’t a direct way of making money from any OSS products you might release. Instead, it represents a way for you to use the popularity of one or more of your open-source products to give you access to companies you normally wouldn’t have.
Maybe you’ve been wanting to get noticed by Microsoft but haven’t had any luck with your job applications. A good option might be to make some useful contributions to its open-source products, such as TypeScript—you could become a regular maintainer for its main product, creating some good OSS support tools (e.g., frameworks around TypeScript or tools to automate the development process), or even one of the main authors of its product.
Whichever way you choose to do it, if you provide quality content for the community that has grown up around a particular open-source product, you’ll get noticed and thus, companies will find out about you and might even consider hiring you to work on their products.
Paid Feature Requests
It’s not easy for smaller projects to earn revenue. Often, these developers have a daytime job besides maintaining an open source project. Therefore, they are limited in time to maintain their project.
Yet, if you happen to find a couple of companies using your project, you can offer paid feature requests. In other words, you develop new features based on a company’s request. In return, they pay you for developing the features they want.
It’s one of the most straightforward models to make money from open source software. Even a small project can find a few companies that are interested in using their open source software. Often, it’s cheaper for them to hire you as a freelancer to develop the new functionality they need than having their developers spend time figuring out the codebase and adding new functionality.
Suppose a company forks an open source project to add new functionality themselves. In that case, this means they’ll have to maintain their fork and merge new updates from the original codebase to their codebase. This can sometimes become messy and increase maintenance complexity.
Getting the users of your open-source product to pay you a fixed salary every month might sound like a highly unlikely scenario—after all, who are you to demand a monthly salary? By definition you’re releasing your code for others to use for free. While that’s true, many coders are requesting voluntary donations from those using your products.
Examples where this is happening include:
- ChatSecure. This free chat app for iOS states clearly that it receives different types of donations.
- Git. Yes, this extremely popular open-source tool can be used for free, but it also clearly states that it accepts donations via PayPal or even checks.
- Transmission. This BitTorrent client discreetly adds the option to make a PayPal donation at the bottom of its homepage.
There are many ways you can ask for donations and, depending on the popularity of your product, you’ll get different results. Remember that only a relatively small percentage of your users will care enough (or even have the funds) to actually contribute.
Taking donations to the next level
There are platforms created specifically to help freelance creators who work solely based on donations.Patreon lets you build an entire community around your work where supporters can make monthly donations (just like you’re being paid a tiny salary). If you build a large enough community, you can turn those donations into a living. What many creators do with this platform is provide free products to the larger audience outside Patreon while giving premium service to those interested in paying even a small amount. This translates into exclusive content, which again translates into extra work, so be mindful that, although the Patreon way can be very profitable, it also implies an increase in workload. Such an approach would only be recommended to those who are committed to turning OSS into their main income stream.
One final thought about this point: Whether you’re trying to monetize your activities through asking for donations or if you’ve decided to go all the way and sign up for Patreon, you’ll need to create a community around you. Getting donations is more about connecting with your users rather than just making your open-source products available to them. Yes, they need to be able to check your software and make use of it to the point they find it very useful, but if you want them to spend money when they don’t have to, then they also need to understand the importance of helping you directly.
Since May 23, 2019, GitHub introduced GitHub Sponsors.
“The world runs on open source. None of it would be possible without the global team of maintainers, designers, programmers, researchers, teachers, writers, leaders—and more—who devote themselves to pushing technology forward. These extraordinary developers can now receive funding from the community that depends on their work, seamlessly through their GitHub profiles.”
The primary benefit of using GitHub Sponsors is that they charge zero fees. 100% of sponsorships go to the developers. The feature aims to reward developers for maintaining free software. Yet, alternatives exist to receive sponsorships, such as Open Collective or Patreon.
(Source: Babel sponsors on GitHub)
Sponsorships are a great revenue stream for well-established open source projects that require more funds to stay afloat.
Have you ever wanted to make money from your code but didn’t know how? Or maybe you’re a big believer in open source and want to figure out how to go about it? This book will teach you how to do that with examples and explanations!