Making money as a libre software programmer
- 1 Work on the internal software of a company
- 2 Write or customize libre software on a contract basis
- 3 Write or customize libre software for an online service
- 4 Write or customize libre software for a hardware product
- 5 Sponsorship
- 6 Trademark Licensing
- 7 Crowd-funding
- 8 Support
- 9 Subscriptions
- 10 Pay what you want distribution
- 11 Sell a limited run of physical copies
- 12 Funding from charities
- 13 Funding from other non-profit organizations
- 14 Grants
- 15 Donations
Contrary to what some may believe, working in libre software does not mean you cannot make money as a programmer. Libre software is not anti-business.
Here are ways programmers could make money today while respecting user freedom. You will also find case studies exemplifying each business model. Successful projects and programmers often employ a mix of these methods. Makers of proprietary software also employ these methods sometimes to increase revenue or because they do not make enough money from licenses due to unauthorized copying. However, we do not list proprietary software here.
Work on the internal software of a company
Many companies hire programmers to work on software internal to the company. As the company has the same freedoms than with free software, the software can be considered free for the company. And since the software isn't distributed under nonfree licenses, it can't harm its users.
This is a common job for programmers already.
Write or customize libre software on a contract basis
Customization services are commonly offered by software companies. Just look for "Open Source Customization"
Write or customize libre software for an online service
Service sales fund development. Excludes Service as a Software Substitute
Write or customize libre software for a hardware product
Product sales fund development.
There are specialized companies (like bootlin, collabora, etc) that can be contracted to write hardware support code (like drivers, bootloader patches, etc). Most of the work in these companies are probably oriented toward non-consumers uses cases (industrial computing, products for business use), and sometimes they are contracted to work on making hardware oriented toward consumers (like crowdfunding projects) work with free software.
Sometimes there are also aligned interests between individuals using free software and businesses. For instance the automotive industry has requirements to keep supporting their products for long period of time (like 10 or 15 years). So having a free software GPU driver helps drive down the costs as with that they can simply use upstream Linux and drive down maintenance costs.
Another interesting case is sysmocom that works on upstream free software communication software like software to build GSM networks. While their GSM base station use nonfree firmwares, the rest of the work is free software. They were for instance contracted by a maritime company to replace equipment that wasn't adapted to maritime conditions (heavy, uses a lot of bandwith on an expensive satellite link) with more adapted equipment driven by free software.
People at companies like Red Hat and Canonical also sometimes have to work at making hardware work with free software. Years ago, Matthew Garret did that for instance.
Companies like Libreboot/MiniFree also contracted other companies like Raptor Engineering to make Libreboot computers work better.
Puri.sm also make hardware oriented toward consumers. While the computers they sell contain nonfree software (such as the Intel FSP, or nonfree firmware to initialize the RAM in their librem5 smartphone) their employees also work on PureOS, which is a GNU/Linux distribution endorsed by the FSF.
Organizations provide funds and benefit from the software and marketing.
Your trademark is licensed to service providers in exchange for a fee.
Can be one-off or recurring.
Companies or organizations subscribe for commercial support for a specific software. The income is then used to fund the development of that specific software.
Some organizations or state departments do require support contract for every software they use. The French education does that for instance. Since they use free software they also need to pay for support contracts.
One of the companies providing support is for instance Nextcloud, and the details about its business model and the pitfalls of the startup model was well described in a Libreplanet talk. Red hat also has paid support.
Paying for support can also potentially be more efficient as the employees of the company making a specific free software product often have more in-depth knowledge about the product than the employees of the company using that software.
End-users make payments to receive updates and new releases.
Pay what you want distribution
End-users pay for a ready-to-run supported program from an official source.
Sell a limited run of physical copies
Works well for games. Gives collector value to the product.
- independent art and music
Funding from charities
In the United States, non-profit 501(c)3 charities will sometimes fund software development
Funding from other non-profit organizations
In the United States, 501(c)(6) organizations include Business leagues, Chambers of commerce, Real estate boards, Boards of trade, and Professional football leagues. Business leagues represent the interests of an industry. Most industries would benefit from funding some libre software projects. Similarly, Chambers of commerce represent the interests of all industry in a trade community. Most would also benefit from funding some libre software projects.
Grants are monetary gifts that do not require repayment. Oftentimes the grantmaker receives other benefits from giving you the grant, such as access to you, demonstration of impact, a report of your work, or tax benefits.
Grants can come from many places, including companies, software foundations, philanthropic foundations, and the government. The technical and legal aspects of a grant vary greatly depending on where it comes from. For example, a company might give you a "grant" but legally treat it as a consulting invoice. A philanthropic foundation can only make grants to nonprofits, so you would need to be a nonprofit yourself, or (more commonly) find a nonprofit to sponsor you. If you're unfamiliar with grants, the best way to understand how grants work is to talk to someone who has received one before.
- Sentry Grant
- The Chan Zuckerberg Initiative
- Alfred P. Sloan Foundation
- Andrey Petrov + Stripe Open-Source Retreat and urllib3
- Dat Project
- Django + Mozilla Open Source Support
- NLnet: Funds a lot of projects. Requirements: Having some link to Europe (people in the project living in Europe, etc).
This page was a featured resource in July 2019.
Sometimes some non-profit employ people to work on free software.
The Wikimedia foundation employ several people to work on technical tasks. Some of the task include maintaining and improving the software used by Wikimedia projects and their contributors and/or users.
This page was a featured resource in July 2019.