Foss: pick a license

3 min

TL;DR

Here be dragons – TLDR comes last

Introduction

A while back on Reddit, someone asked, if FOSS wasn’t really unpaid R&D. Or rather, they stated it. While I can somewhat see their reasoning, I have to disagree with them. FOSS isn’t unpaid R&D. The problem is the companies that use your software. The simple fact is, FOSS is layered and you need to pick your poison:

  • Permissive licenses: Everybody can use it, shippable, SaaS, or just offering a service based on the software is permitted.

  • Copyleft: Limits the shippable part, but Saas and service-based is still permitted

  • Networked copyleft: Limits almost all parts.

And by limit I mean: The way or how (greedy) corporations can use your software.

Reasonable people can still use it, the greedy ones won’t because it forces them to share insights they don’t want to share if you opt for copyleft licenses. The problem for the developer is:

Do I want to protect myself from “abuse”? If so how much “abuse” am I willing to take? Much - permissive, less - copyleft, none - networked copyleft.

Pick one

Most people pick a license because they see others use a particular license. Everyone uses MIT, BSD, Apache, or whatever. And yes, people will invoke the right to use your software as the license grants them.

As a developer you must look at the use case for your product, and be honest about how you want to ship it. If you want wide-spread adoptation, you’ll need to pay the price of permissive licenses. Companies don’t want to share their proprietary code. If you don’t want your shit to be used by greedy corps, use copyleft and if you want to prevent SaaS from misuse, networked copyleft.

Most of the time at least, the linux kernel is GPLv2, git is GPL v2 and these are widespread.

For myself, I use three layers of licenses.
I use a permissive license if I think the thing I’ve build is infrastructure. And by that I mean, if it cannot be used to create a product by itself, I make it permissive. If someone could ship it to customers and charge money for I make it copyleft, most often GPLv3. Now, if they can just provide it as a service, AGPLv3.

The notable exception is, if I fork something I often keep the same license. There isn’t a need to change the license in those cases.

Free work

Anyways, I agree with companies not giving back to the software developers making software, while simultanous asking for support. Microsoft and ffmpeg come to mind.

The problem of FOSS isnt companies, it is FAANG and the likes. Big cooperations that swallow up small software shops because they just have more money and leverage than you have. They giveth none, they taketh everything.

But it not just FAANG, it is other companies too. Companies treat GPL/AGPL as a legal scarecrow. They don’t want to give back. And thus they create a steady supply of people (devs) that only want permissive and parrot the GPL is infectious rant.

I absolutely believe that permissive is good, most of my work is either BSD or MIT. However companies such as Google, Amazon, etc, have the moral obligation to feed the people they use the software of. FOSS was created in a different landscape and these giants are causing severe disruption. They have money and the amount of resources that countries even cannot compete with. Copyleft is a problem for corporate greed. It isn’t a problem for corporate sponsorship and good corporations.

https://www.software.ac.uk/blog/be-prepared-pay-open-source-and-deal-consequences