Here’s a question that’s been on my mind lately:
Should I switch away from using the GPLv2 for my software?
So far I’ve been using the GPLv2, but now that it has been superseded by version 3 I’m a
bit at a loss at what to use for new projects. Do I stick with using version 2? Do I
read and try to understand version 3 enough that I’m comfortable using it? Or do I use
something else entirely?
It’s important to me that I’m able to fully comprehend the license I put on my own
software. The BSD license wins hands down in this category: it is short and written in
very simple language. For comparison here’s the number of words in the BSD, GPLv2 and
|License||Number of words||Number of lines|
A strong argument in favour of the BSD license there, but the length of each license is
not the full story. Lowering the barrier of entry is also important. You can use
BSD-licensed code in any closed-source applications—be it a commercial application
or binary-only freeware. (Maybe you’re too embarrassed of the code to release it?)
More users means increased likelyhood of receiving feedback—in the form of code, bug
reports or otherwise—that benefit all users. Thus I’d rather have a larger pool of
“free” and “non-free” users than a smaller pool of “free” users of my software, even if
the “non-free” ones use it in a commercial application and don’t directly contribute code
At this point I’ve pretty much made up my mind. Unless someone hits me over the head and
points out a glaring flaw in my arguments upcoming releases of my software (at least the
libraries) will be released under the revised BSD license.