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

Comments

Phil Nash 2012-11-17

Shame you didn’t include the boost licence. I’d like to see how that stacks up (It would certainly be on the far left somewhere)

Andy Balaam 2012-11-17

BOOST is 215 – just to the right of BSD I think. I considered BOOST, but went for MIT as it’s more widely used.