a companion discussion area for blog.codinghorror.com

Pick a License, Any License


Also, I should note that wikipedia says that the Eclipse public license is copyleft, so I would read it a few times before using it in a project.


Ha! That WTFPL license is nice.

You do realize that thing at the top is actually some kind of license from Russian bureau of nuclear and radiation safety (or something like that)? Looks scary.


I don’t think you’re clear enough about the problem of releasing code without a license.

A lot of developers mistakenly believe that licenses are only used to prevent or control how others use your code. They incorrectly assume that when they distribute code without a license, they’ve given the code away.

In fact, licenses are necessary to give others permission to use your code.

The problem is that releasing code without a license only does one thing - it declares a copyright without explaining how others can use your code. Experienced developers and development teams know to stay away from unlicensed code because they have no legal right to use it; who wants to waste time on code that can be taken away at any time?

Code sharing sites have gotten a little better about helping users pick a license, but they still have a long way to go. If you actually read most of the license on CodePlex, they still have template names left in. How many BSD licenses still confer copyright to Berkley? Code sharing sites need to move to a wizard style approach which helps you pick a license that fits your intent. Even better would be if the OSI offered license picker similar to what Creative Commons uses: http://creativecommons.org/license/

Here’s my post on CodeProject’s lack of licensing:



If you truly (as I) believe that WTFPL would be the best default. Why not join your local Pirate Party and fight for it?


Now regarding GPL and capitalism.

If you take capitalism to mean hoarding of exclusive right to the means of production, yes GPL is anti-capitalism. If you think of capitalism as another name for free market, GPL is VERY pro free market (as it’s purpose is to stop monopolies).



Or the license was meant to say exactly what is says. Which is similar to creative commons: by-nc-nd.



@Scott - You don’t have to license code snippets in your blog posts unless you want people to actually use them. It’s simple enough to put a note in your footer that says “all code is public domain unless otherwise stated”.


Yeah, and it’s not meaningless. :wink:


The Fair License is short and a little strange and OSI approved. http://opensource.org/licenses/fair.php

Usage of the works is permitted provided that this instrument is retained with the works, so that any entity that uses the works is notified of this instrument.

I’m not sure the disclaimer is necessary, at least in my jurisdiction.


Take that, capitalism!

I think that one line, under your comment to the GPL, deserves a white-hot



Unfortunately, the MIT/BSD/WTFPL seems like simple to understand useful license. But they make no mention of software patents in regards to the algorithms that may be used in your open source project.

And that goes for Codeproject Articles, as well. So someone can find your work, patent your algorithm, and force you to pay for your own work. Nice.

L-GPL and the MS-PL both make mention that software patents. And I’m not sure, but it feels like the MS-PL makes the patents owned by Microsoft (I could be wrong, but why take the risk?).

So I always choose MIT and add a clause that says anything with regards to patents dealing with source code, executables, or documentation will need to refer to the latest L-GPL license (with license included and version L-GPL version stated).


Jeff, a humble thank you … i’m glad i read this post BEFORE throwing a little code on the barbie doll.

FWIW, here’s what i composed … i hope it never causes me the type of grief that you describe.

// Paradigm Mentors videos, notes, and source code are provided without any assumed liability.
// Amateur and professional programmers are 100% responsible for how they apply our training content to their own projects.
// Amateur or professional, you need to test thoroughly to avoid unpleasant and unexpected surprises.

// LICENSE:  Public Domain.  Authorization:  Gerry Lowry.  IANAL
// Hope:     – it would be nice to be acknowleged for my contributions.
//           – i will not lose sleep if you do not bother to acknowledge my contributions.
//           – worth reading:  http://blog.codinghorror.com/pick-a-license-any-license/, Jeff Atwood
//           – please read lines 1, 2, and 3
// Buts:     – obviously, other licences apply, partial list:
//           – MICROSOFT PUBLIC LICENSE (Ms-PL) (ask Microsoft if you’re not sure)
//           – PayPal https://github.com/paypal/rest-api-sdk-dotnet/blob/master/LICENSE.txt
//           – et alia


P.S.: i hope no being/diety fulfills your death wish in your first paragraph; without your many useful articles, we’d be less than we are from having read them.


Covering some basics of FSF & OS related areas : http://ihackthati.wordpress.com/2012/02/26/open-source-vs-proprietary-part-1/


The license I use came out in 2016 since this article, here it is if anyone want’s to use it