Why I’m not a member of the FSF!
Posted by markharrison on July 10, 2007
There is much discussion on the Internet about a licence called the GPLv3, produced by the FSF.
This is the successor to a licence called the GPLv2 – the GPLv2 is wildly important, not least because the core (the so-called kernel) of Linux uses it, so it gets used to do everything from run Google’s server farm, to power the TiVo under your telly.
The GPLv3 has taken a long while to write, and introduces what the writers call “additional freedoms.”
I’m over-simplifying here, but the core of the GPLv2 is that if I release a program under the GPL2, and you take a copy, then you can use it and modify it. (Compared to, for example, the licence for Microsoft Word, which gives you the right to use only, but not modify the code.) As a quid pro quo for getting these additional rights, you agree that if you modify it, and then release those modifications, you have to pass on the same rights and obligations to anyone else who takes a licence. (You can charge, but you can’t take away their right to modify further.)
The GPLv3 introduces a slightly different set of rights and obligations. For example, the makes of TiVo use “digital signatures” to mean that, while you can take their Linux (GPLv2) code, and modify it as you wish, you can’t re-upload it back to your TiVo. This legal under the GPLv2, and a number of people, including Linus Torvalds (the original author of Linux) have said that, publically, that they are happy with this. The GPLv3 makes this explicitly a no-no, so TiVo could not start using GPLv3 code on their products.
As a programmer facing a given project, I believe I should have the freedom to choose between:
- Writing from scratch and licencing in a “closed” manner
- Writing from scratch and licencing under GPLv2
- Writing from scratch and licencing under GPLv3
- Writing from scratch and licencing under any other licence I choose
- Taking an existing closed product, and agreeing to a proprietary co-development licence
- Taking an existing GPLv2 product, and develop it, and accepting the constraints placed upon me by so doing
- Taking an existing GPLv3 product, and develop it, and accepting the constraints placed upon me by so doing
- Taking an existing product under another type of licence, and accepting the constraints placed upon me by so doing
Where I disagree with the authors of the GPLv3 (the FSF), is in two places:
- I can’t accept the characterisation of the GPLv3 as an update to the GPLv2. As far as I can tell, it’s a completely different thing, that gives a different set of rights and obligations.
- I can’t accept any characterisation of the GPLv3 as the “ethical” choice.
Saying “If you choose to take this, then you have to accept both the rights and the responsibilities, but it’s your choice whether you take it in the first place” strikes me as ethical and moral.
Oh, and Linus has said, publically and forcefully, that he wants to keep the Linux Kernel on GPL2 – that’s his choice…