Length of Open Source licenses

November 15, 2012 [Tech]

I have been choosing a license for my ficticious programming language, Pepper. One consideration is the complexity of the (combination of) license(s) used. Complexity may be related to length, so for your enjoyment, here are the lengths of some popular licenses:

Length of Open Source Licenses

Is it a coincidence I've decided to use the MIT License?

Here's how I made it (on my Ubuntu Linux 12.04 system):

#!/bin/bash

declare -A LICENSES

LICENSES[Apache]=file:///usr/share/common-licenses/Apache-2.0
LICENSES[GPL2]=file:///usr/share/common-licenses/GPL-2
LICENSES[GPL3]=file:///usr/share/common-licenses/GPL-3
LICENSES[BSD]=file:///usr/share/common-licenses/BSD
LICENSES[Artistic]=file:///usr/share/common-licenses/Artistic

LICENSES[MIT]=http://www.jclark.com/xml/copying.txt
LICENSES[Mozilla]=http://www.mozilla.org/MPL/2.0/index.txt
LICENSES[Python]=http://hg.python.org/cpython/raw-file/tip/LICENSE
LICENSES[Eclipse]=http://www.eclipse.org/legal/epl-v10.html

function wordcounts()
{
	for K in "${!LICENSES[@]}"; do
	{
		echo `lynx -dump ${LICENSES[$K]} | wc -w` $K
	}; done
}

wordcounts | sort -n | awk '{print $2 " " $1}' > data.txt

gnuplot <<END
set terminal png large enhanced font "Helvetica,11"
set output 'license-length.png'
unset key
set style fill solid
set title "Number of words in common Free and Open Source licenses"
plot 'data.txt' using (column(0)):2:(0.5):(\$0):xtic(1) with boxes lc variable;
END

rm data.txt