Ariel Costas's Personal Website

The Permissive Trap

By Ariel Costas - September 14, 2021

Imagine you spend months researching about something, and get to some conclussions that can be applied in real life to make life better for everyone. You share this with the world, and some corporation comes, takes your idea, makes one or two small changes and doesn’t share them, but still profit from giving them to others in a restricted way.

Now let’s say it’s software: you spend months building a program that solves certain problem, you share it with the world under a Free license for anyone to use, study and share. But some Big Tech company comes, takes that hard work of yours, changes a few things and distributes it under a proprietary license, without sharing the improvements or allowing others to learn from them.

This, dear reader, is the Permissive trap, where people think using “permissive” licenses is good because it has more freedom than “that viral licenses” like the GPL.

Copyleft and permissive, what does that mean anyway?

Copyleft is the best method for sharing a work in a Free as-in-freedom manner and making sure it always remains like that, and every change contributes to improving other’s versions, and thus contributing to the society. Examples of this license are the GNU General Public License and the CreativeCommons BY-SA (or any including the Share-Alike clause).

A permissive license is that one that doen’t implement copyleft measures, thus allowing anyone to take work under that license and share it with others under a different license. This licenses are quite common in “open source” software, being the most common licenses the Apache and the MIT Expat license.

Why copyleft is ethical and “permissive” isn’t

A Free license is a license that grants your certain freedoms, in the case of Software:

  1. Running the program however you wish, or not, for any purpose.
  2. Studying the program’s source code and modifying it to do whatever you want it to do.
  3. Distributing copies of the original program, and getting paid if you decide to.
  4. Sharing your modified version with others to contribute to improving other’s computing.

If you receive a program with these freedoms, and you exercise them, the least you should be required to do is to give these freedoms to the people you give this program to. For this reason, the same Libre license must be preserved on derivated versions.

Some people might think well, if I don’t permit relicensing, the program doesn’t give total freedom. It could be a valid point, but let’s consider this: if you receive a program with freedoms, it isn’t just you can use these freedoms to restrict others' freedoms.

When you make a program proprietary, you’re restricting those freedoms you were given. That’s unjust and not ethical.

Programs that use the permissive trap

Obviously, corporations know how licensing work and they have a marketing department willing to do anything to sell more copies of their proprietary crap.

Their dirty technique consists on the following: creating a program under an “open source” (they avoid the term Free Software, because it would mean their other programs are ¬ęproprietary¬Ľ) license. That’s okay, anyone has the four freedoms… until they make certain parts proprietary and share the binaries under a proprietary license.

Let me give you an example, Microsoft VSCode, a popular text editor. Ignoring the fact that it’s built on top of Electron (doubtfully Free), VSCode is Free Software under the MIT/Expat license, which allows for proprietary versions to exist.

Microsoft takes that Libre code, adds their telemetry and proprietary modules with important functionality and releases it under a proprietary EULA while claiming that it’s “open source” and that “Microsoft <3 Open Source”.

There are more examples, like Android: the AOSP is Free/Libre, but almost all ROMs from manufacturers come under an abusive EULA, packaging with it surveillance (aka telemetry), backdoors and more similar malware.

So next time, when choosing a license, please consider whether corporations' freedom to restrict their users is more important than preserving users' (and maintainers') freedom; and choose a copyleft license; even if it’s a library.

If you just contribute code but don’t maintain a package by yourself, please consider if you would like your voluntary work to be used by others to profit by creating an unjustice. I personally wouldn’t contribute to non-copyleft projects, unless specific cases.

Feel free to send your comments via email, I’ll read you and answer!

Happy hacking