Skip to content

Why I use the WTFPL license

Published on
Disclaimer

The content of this website and the samcla.us domain are property of Sam Claus (me). I control every aspect of every page of the website. This includes subdomains like api.samcla.us.

  • I could change the "Published" and "Last Edited" dates of any article to whatever I want.
  • If you copy the URL of one of the pages of my website and send it to someone, I could change the content of the page in between the time you viewed it and the time they will view it. I could attempt to make them think you are sending them some sort of neonazi manifesto when really you were trying to send them a recipe for squash.

The content of my website is hosted on various servers which are managed by companies. Technically, they could change the content. It would be difficult for your internet service provider (ISP) or some other middle-man to meddle with the content, thanks to the power of HTTPS. Feasibly, someone could figure out my credentials for logging in to the servers that host my website's content; then they could change it.

All of the stories and opinions expressed on this website are my own. (Unless my website gets tampered with by someone else like I described above.) Either way, I encourage you to question everything you read, no matter where you are reading it.

           DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
                   Version 2, December 2004

Copyright (C) 2004 Sam Hocevar <sam@hocevar.net>

Everyone is permitted to copy and distribute verbatim or modified
copies of this license document, and changing it is allowed as long
as the name is changed.

           DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
  TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

 0. You just DO WHAT THE FUCK YOU WANT TO.

Currently, most of my public repositories on GitHub are licensed under the WTFPL: Do What The F*ck You Want To Public License. See full license text above.

The problem

I have an ego just like everyone else. Actually, mine is probably bigger than most people’s. There is a part of me that demands full credit for every line of code that I write, every bit of work that I do.

I imagine that part of me is why copyright law even exists in the first place. Hell, my own dad is a patent attorney. My mom is an academic, and academia is rife with patents and paywalls.

I believe that copyrights/patents/paywalls come with too many negative trade-offs, and overall hurt everyone more than if we all just contributed to the public domain. Remember, you’re not just protecting your intellectual property—everyone else is protecting theirs from you as well! Life could be simpler..

The truth

The truth is, as a programmer, I have benefitted immensely from a wealth of publicly available knowledge on the internet. During my career as a programmer, I have scoured thousands of

  • open source libraries,
  • blog posts (often structured as tutorials for accomplishing various tasks),
  • questions and answers on websites like Stack Overflow,
  • and documentation websites.

I never even went to college, but the internet has more than made up for that, not to mention I didn’t have to spend tens of thousands of dollars on education. When I say the internet, I really mean the countless people who put in effort to share their experience, opinions, and data freely.

So is my code really mine alone, or does it also belong (to an extent) to all of the people I have learned from during this life?

How can I possibly credit them all? Where do I draw the line?

I believe the answer is simple. I acknowledge that I would not be where I am without the help of other people, and I pick up the torch by contributing all of my code back into the public domain.

More angles to consider

I intentionally glossed over some finer details in the previous sections of this post, but that does not mean I don’t think those details are of vital importance. I was just saving them for the end.

People need to make a living, and patent/copyright law helps them do so.

I believe this is a separate issue. If society works the way it is supposed to, everyone is able to make a living. Let’s say the bare minimum necessities each person requires from society are food, shelter, medical care, and love.

  1. Food is taken care of by modern agriculture. Meaningless desk jobs and other features of modern American society do not magically produce food for people to eat.
  2. Shelter: there are countless buildings in America, complete with good A/C and lighting. A lot of space is wasted on things like dedicated offices which only get used during working hours. Again, writing financial reports and arguing about copyrights does not magically produce homes for people to live and sleep in.
  3. Medical care: the U.S. has a massive medical system, and it seems to me that it is plagued by bureaucracy and excessive policy. Many laws exist to protect people, but if those laws become so complicated that they begin to interfere with well-meaning doctors’ work, then the laws may not be accomplishing their goal. It’s a trade-off we are making, and we should inspect if it is worthwhile.
  4. Love: I don’t think copyright law has anything to do with love. I think I am putting more love in by contributing my work to the public domain and admitting how much I rely on other people. Speaking of which, thank you for all the times you have made an effort to help someone (maybe even me).

People deserve to be credited (and treated with respect in general).

I agree. Well, I don’t think everyone deserves respect. I think people should be treated with respect by default, but they can lose it by being unscrupulous, and then maybe earn it back again.

Anyways, laws don’t magically enforce themselves, and the same goes for copyright law. If someone is going to take my code and use it without giving credit, I’m not sure a license file is going to change their mind. Similarly, copyright/patent holders are often not the people who did the actual work and/or had the idea.

Besides, like I said, I can’t possibly give credit to everyone who has helped me even if I tried. I would rather just spend that time trying to be a good (or even just decent) person and contribute back to the world in a more direct sense.

Going forward, I will be making a conscious effort to give people credit in my writing, but please remember that there are many more people out there who helped behind the scenes.

‘Copyleft’ or ‘infectious’ licenses like the GNU GPLv3

There exist quite a few well-known software licenses which infect derivative works. One such example is the GNU General Public License (GPL) Version 3.

Let’s say I license my tiny little JavaScript library with the GPLv3.

Now let’s say someone else makes a library that uses my library internally. Their library must also be licensed under the GPLv3. All of their code must be open source (publicly available on the internet) according to the license, and vice versa.

The same rules apply to any software (library, application, etc.) that uses that person’s library, and so on and so forth. Here is one of the relevant sections from the GPLv3 text:

c) You must license the entire work, as a whole, under this
    License to anyone who comes into possession of a copy.  This
    License will therefore apply, along with any applicable section 7
    additional terms, to the whole of the work, and all its parts,
    regardless of how they are packaged.  This License gives no
    permission to license the work in any other way, but it does not
    invalidate such permission if you have separately received it.

As you can see, this is quite a serious license. It is very cynical and assumes that the world will remain a corporate wasteland, filled with closed-source proprietary software, unless we fight fire with fire.

The way I see it, we all choose the world we want to live in. I want to live in a chill world where we all try our best. Anyone is free to use the code I write for whatever purpose suits them, so long as my code isn’t using other code with a restrictive license. Please just pay it forward and don’t be an asshole.