Bruce Perens (co-founder of OSI) has coined the term crayon license:I've been calling these crayon licenses, taking a line from an old Monty Python sketch about a dog license with the word dog crossed out and cat written in, in crayon.The licenses referenced are typical well-intended free software licenses that have been written by programmers in simple, easy-to-understand, non-legalese language.  Some typical examples are the WTFPL and the somewhat more elaborate Artistic License 1.0.Perens seems to imply that such licenses may pose a problem for developers using them, or for the open source community.How can these licenses be a problem?Or is Perens wrong about them being a problem?
How can a crayon license be a problem?
licensing;law;crayon licenses
There are several issues:License proliferation - The more licenses we have floating around, the more work everyone has to do to understand them.  Case law for one license will not necessarily apply to a differently-worded license, even if they're both intended to achieve the same effect.  And if everyone starts writing their own licenses, this becomes significantly worse.Legal uncertainty - If a license is vaguely worded, it may not behave as we would like in a court of law.  When you write a vague computer program, the compiler will (normally) refuse to compile it; the grammar of the programming language disallows ambiguity at the syntactic level.  The program may not mean what you think it means, but it does mean something.*  This is not the case when you write legal code.  If it's vague, the court will have to guess, and they may guess wrong.Contra proferentem - Ambiguity in a contract is normally interpreted in favor of the non-drafting party (with the rationale that it's the drafting party's fault for creating the ambiguity in the first place).  It's not immediately obvious to me that this necessarily applies to an open source license, but if it does, it would greatly exacerbate the previous point.You might accidentally make a non-free license - One crayon license actually in use is basically MIT/X11 + The Software shall be used for Good, not Evil.  This is considered a non-free license (don't take our word for it, the FSF agrees), and resulted in at least one bug report asking for downstream software to be removed from Debian.  This caused actual person-hours to be diverted from software development to deal with silly licensing issues that never should have arisen in the first place.* I am ignoring the issue of undefined behavior in C and C++ because they aren't really relevant to this analogy, but if you like, you can think of vagueness in a contract as like undefined behavior, but perhaps less evil.