Erik McClure

What is the Nature of Evil In LICENSE.MD?


There is a crisis in the open-source community right now. Several blog posts have been discussing the blatant exploitation of open-source developers by corporations, especially AI scrapers, and how open-source work might be enabling warcrimes. There has been a rising bubble of discontent with the current open-source model, and especially the nature of open-source licenses that are OSI-approved.

Developers, however, have been upset with the status-quo for years. Nearly a decade ago, I made a repository full of licenses written as jokes, alongside real licenses so poorly written they seemed like jokes. Eventually it expanded to include licenses that weren’t just badly written but had incredibly awful consequences.

To this day, many developers don’t seem to understand the legal consequences of what they put in their licenses, likely because they are not lawyers, and keep trying to write licenses that say “you cannot use this software for evil”. Recently, there has been an increasing number of developers who are deliberately using legally unsound licenses for their open-source software because they don’t want corporations using it.

when I was at google, their class on licenses basically said "we can't use any license that's funny" so I suggest everyone license their software as funny as possible

[image or embed]

— Foone (@foone.bsky.social) Nov 17, 2025 at 1:53 PM

NEVER DO THIS, unless your goal is to ensure nobody uses your code in anything. For things that aren’t libraries (like stand-alone applications) this is probably fine, but if you don’t want anyone using your code, please just say that alongside the joke license, it’s already hard enough to communicate with other people in a world filled with AI-slop, we don’t need to make it even harder.

I always use nonsense licenses, but my favorite has been something along the lines of "absolutely nobody is allowed to use this software" My thought was that it'd scare off anyone who either values or is bound by intellectual property, and anyone else would happily ignore the clearly silly license - razorgirl.diy

If your goal is to write a license that is so farcical that a court would rule it meaningless, you will have succeeded in releasing your code without a license, which means nobody actually has permission to use it. The copyright defaults to you, and you have given it to nobody. It doesn’t go into the public domain, there is no default open-source license GitHub grants you, it is still legally your code and nobody else can use it unless it falls under fair use. If you really hate the concept of intellectual property, the correct thing to do is to explicitly release it into the public domain - you can use the unlicense, which also has a section handling countries that do not recognize the public domain, ensuring everyone can truly use your software anywhere in the world.

Remember, everyone is bound by intellectual property. The State will happily drag you into court on behalf of someone suing you for damages regardless of your personal opinions about intellectual property. This means that I can only use code that I don’t actually have a license to if I trust that the person who wrote it will never change their mind, ever. Even if I were to somehow vet every developer of every dependency now, sometimes people just go crazy. In 2016 it was MAGA. In 2020 it was Covid. In 2025 it’s AI psychosis. Every 5 years a new group of people go insane. A license exists to protect people from your future self, providing legal assurance that the values you claim to uphold will be respected in perpetuity.

But I’m A Pacifist

Sometimes, instead of writing incoherent licenses, people attempt to write licenses that make real, honest attempts at defining acceptable moral use cases for the licenses, and it is always nightmarishly complex. Let’s take a look at one example that was particularly notable because it tried very hard to clearly define what “evil” is, yet created a license no sane person would ever agree to: For Good Eyes Only License 0.2

This license has some fascinating terms in it, like:

the penalty for Permanent Termination violations is donating 4% of the total assets (if more than €1 million) / the total annual income (if more than €500,000) or of the annual turnover (if more than €1 million per month) to a charity

To a charity? any charity? Gee, sure thing buddy, let me donate 4% of my total assets to my charitable organization that happens to be entirely and wholly owned by me, which is dedicated to scientific research into how best to replace all artists with AI. The license actually tries to deal with this later on by saying “the Licensee is obliged to make a punitive donation to one or more non-profit organisations or other charitable associations of his/her choice, which are officially recognised as such, are not illegitimate organisations and are primarily dedicated to…”, but fails to define what an “illegitimate organization” is, and includes “general scientific research” as an acceptable purpose. Trust me, you can get the IRS to recognize some wild stuff as a “legitimate charity” doing “scientific research”.

This Licence shall be interpreted on a common-sense basis and as a coherent, non-absurd and non-contradictory flow of ideas, thoughts and moral points of view.

Ah yes, the ultimate defense against people misinterpreting what you say: just tell them to not misinterpret you! Amazing!!! Clearly all legal jargon is completely pointless and can be replaced with this one neat trick of just telling people to magically figure out what you intended to say, based on your personal notion of what “common-sense” means.

The Licensee is not allowed to: behave in unethical ways or have ever been guilty of any inexcusable offences

Now, this is normally where I’d ask “and what exactly is an inexcusable offence?” but this license goes to surprising lengths to define exactly what it means. It starts by listing “intentionally or negligently supporting, committing or preparing genocide” and then goes on for several pages. At one point it defines “Ostracised weapons and methods of warfare” as any subject to the Hague Conventions, the Geneva Protocol, or “any other comparable international conventions”, which is definitely the kind of super-not-vague language I want in my software license that is attempting to define what a war crime is. It also tries to define an “illegitimate regime” with several potential qualifiers, including one that is “the state’s score in the Reporters Without Borders “Press Freedom Index” is worse than 40 (based on the 2022 scale)”. I love checking the Press Freedom Index to see if I might accidentally be supporting some random country I’ve never heard of by allowing them to download my software!!! What even happens if the Press Freedom Index stops being reliable? What if it goes away? WHY IS THIS IN MY LICENSE FILE???

Putting any of this inside a software license is simply a terrible idea. Morality is just too complicated to be captured inside LICENSE.md - it’s why we have a gigantic, sprawling legal system trying to capture thousands upon thousands of nuances and edge-cases. Even if some actions are conceptually easy to define as evil, it is almost impossible to capture that conceptual idea with words on a page, and such debates do not belong in your license file. If you don’t want evil people using your software, don’t make it open-source. Evil people were just going to ignore your license and steal the code anyway, so what’s the point?

I believe the best way to think about this is the same way we think about basic rights - even assholes should be able to feed themselves and get shelter and use free software, because otherwise someone will change their definition of asshole to mean YOU.

Post by @Xibanya@mastodon.xyz
View on Mastodon

Avatar

Archive

  1. 2026
  2. 2025
  3. 2024
  4. 2023
  5. 2022
  6. 2021
  7. 2020
  8. 2019
  9. 2018
  10. 2017
  11. 2016
  12. 2015
  13. 2014
  14. 2013
  15. 2012
  16. 2011
  17. 2010
  18. 2009