Many open source projects I see involve having dedicated servers, as well as the expensive infrastructure that powers it.
How are these projects monetized to cover the costs introduced during development and deployment?
Many open source projects I see involve having dedicated servers, as well as the expensive infrastructure that powers it.
How are these projects monetized to cover the costs introduced during development and deployment?
Whether or not you can make money with an open source project, depends on many things. Based on experience, I see three factors that are important:
When to use a license with strong copyleft?
Although it was different in the past, I see that small "developer-driven" companies, wanting to create a software business in a B2B context, often benefit from a license such as the AGPL.
Warning: the original authors of the AGPL consider what I am going to write next as nefarious use of the AGPL, but this is the way companies such as MongoDB, SugarCRM, and others make money.
I have my open source project of my own, and in the past 15 years I have tried making money in the following ways:
If you are a single developer looking to start a business, making money with open source software, your best chance at being successful, is by offering the software under a dual license.
Which license? Well, you have to avoid Being forked into oblivion by a more powerful contributor, so only a license with a strong copyleft makes sense. You'll understand what this means when you read the Eat me section of the ZeroMQ guide. I quote:
In the software industry, there are friends, foes, and food. BSD makes most people see us as lunch. Closed source makes most people see us as enemies. GPL, however, makes most people our allies.
How does one make money with a copyleft license? That's explained in this video. You offer the software as free, open source software free of charge for every one who obeys the rules of the license. Companies who don't want to follow those rules, can still use the software, provided that they buy the software under another, commercial license. This model is called dual licensing. The weaker the copyleft of the license, the harder it will be to sell your product.
When to use open source with a permissive license?
If you are not a developer and you want to start a business offering a service. Or if you work a large corporation (say Google, Amazon,...), then you probably won't like what I wrote in the previous section.
You want to use software and do whatever you want with it. You don't like GPL-style licenses, because those limit what you can do with the software. You may even have to pay for the software you're using! The horror!
In this case, it is in your best interest to brainwash developers into thinking that open source software should be free as in free beer, that the GPL is bad and that open source software should not be offered commercially. You'll sponsor the most radical zealots that are popular among developers looking for a role model. As a result, these developers will start producing software under a permissive license that you can use any way you want to.
Your task will be to make choices: to separate the wheat from the chaff. It is not your business to sell software:
Once you are successful enough in one of the above, you can afford giving away your software for free (as in free beer). As you have gained a monopoly, it doesn't matter if competitors can also use your software. If they are peers, they may improve the code and redistribute it, in which case you benefit too. If they are contenders just starting a new business, you either crush them (because your brand is king and your marketing budget is bigger) or buy them (and possibly kill them afterwards).
This is a great way to make money with open source software, but I see some disadvantages. The moment a large corporation decides that the value created by a project doesn't justify the investment, the "charity" will stop. Oracle dropped GlassFish, IBM backed away from Geronimo, Pivotal left Groovy,... Only when disaster strikes (like was the case with Heartbleed), these companies suddenly start raising money to "save the developers."
That's not a sustainable model for open source, is it?
I don't know if there are any numbers about this, but it wouldn't surprise me if you'd see that most of the software distributed under a permissive license is written by employees (people working for a large corporation), whereas most of the software distributed under a copyleft license is written by entrepreneurs (people owning or working for a small to medium-sized company).
Has it always been this way?
No, free and open source software has undergone an enormous change. Large companies used to distribute FUD about software that was offered for free. Often these are the same companies who are now claiming that open source software should be free as in free beer. If you want to know how it was in the early days, I recommend watching OS Revolution.
How am I making money today?
If you want to read more about my history in open source, I recommend reading the 1M/1M blog by Sramana Mitra. I founded my first open source company in 2008, 8 years after the first open source release of my product. In 2014, the group was profitable with a revenue of 5 million euro and an EBITDA of 43%. The company ranked 28th place in Deloitte's Technology Fast 500 in the EMEA region and it won first place as the fastest growing technology company in Belgium in the period 2009-2014.
There are a huge number of ways earning money with free software -- but none of them is guaranteed. Just a few examples:
There are several methods, often dependent on the type of software you've produced.
Often, it depends heavily on how much you're willing to let it impact the software experience: ads are invasive but effective, whereas a donation button is almost invisible but as such less effective.
There's a good video about this on YouTube.
Some projects sell the right to companies to use their code under a proprietary license. This is covered by Wikipedia in the Multi-licensing page. From Multi-licensing: Business models:
Multi-licensing is commonly done to support free software business models in a commercial environment. In this scenario, one option is a proprietary software license, which allows the possibility of creating proprietary applications derived from it, while the other license is a copyleft free software/open-source license, thus requiring any derived work to be released under the same license. The copyright holder of the software then typically provides the free version of the software at little or no cost, and profits by selling proprietary licenses to commercial operations looking to incorporate the software into their own business. This model can be compared to shareware.
As described in that article, a well known example is MySQL.
There is no general guide for making money using open source projects because it highly depends on what the project is about.
Some projects are combining open source + premium features (that are mostly sold to the companies) like GitHub is doing. Some projects might depend solely on the donations like elementary OS is. Other projects might be paying for the full time support for their product.
For further reference, I highly suggest you the book called The Open Source Organization: Igniting Passion and Performance written by Red Hat's CEO Jim Whitehurst.
Large projects like MariaDB or some of the many under the Apache Foundation umbrella rely on sponsorship from big companies who benefit from using the software. Others sell support/training services of their software or make alternative versions with restricted features.
Take a look at Apache Foundation and MariaDB for examples, among many others.