Difference between revisions of "Making money as a libre software programmer"
(→Work on the internal software of a company: explicit more that it's not free software but has the same freedoms for the company.) |
PaulSutton (talk | contribs) |
||
Line 19: | Line 19: | ||
* [https://ghost.org/about/ Ghost] | * [https://ghost.org/about/ Ghost] | ||
* [https://www.canvaslms.com/open-source-lms Canvas LMS] | * [https://www.canvaslms.com/open-source-lms Canvas LMS] | ||
+ | * [https://writefreely.org/] | ||
== Write or customize libre software for a hardware product == | == Write or customize libre software for a hardware product == |
Revision as of 13:15, 23 August 2023
Contents
- 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
Case studies
Write or customize libre software for a hardware product
Product sales fund development.
Case studies
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.
Sponsorship
Organizations provide funds and benefit from the software and marketing.
Case studies
Trademark Licensing
Your trademark is licensed to service providers in exchange for a fee.
Case studies
Crowd-funding
Can be one-off or recurring.
Case studies
Support
Companies or organizations subscribe for commercial support for a specific software. The income is then used to fund the development of that specific software.
Case studies
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.
Subscriptions
End-users make payments to receive updates and new releases.
Case studies
Pay what you want distribution
End-users pay for a ready-to-run supported program from an official source.
Case studies
- Ardour
- Bandcamp Note: One cannot download music from Bandcamp without using proprietary JavaScript. See “The JavaScript Trap”. However, music from Bandcamp is DRM-free. Learn more about DRM on Defective By Design.
Sell a limited run of physical copies
Works well for games. Gives collector value to the product.
Case studies
- independent art and music
Funding from charities
In the United States, non-profit 501(c)3 charities will sometimes fund software development
Case studies
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.
Case Studies
Grants
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.
Case Studies
- Sentry Grant
- The Chan Zuckerberg Initiative
- Stripe
- Mozilla
- Alfred P. Sloan Foundation
- Andrey Petrov + Stripe Open-Source Retreat and urllib3
- Dat Project
- Django + Mozilla Open Source Support
- Segment
- Libraries.io
- 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.
Donations
Sometimes some non-profit employ people to work on free software.
Case Studies
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.