John Gruber doesn’t understand freedom
There must be some mistake here, because the Free Software Foundation told me last week that you couldn’t write GPL software for the iPhone.
Oh really? What they actually wrote was this:
iPhone completely blocks free software. Developers must pay a tax to Apple, who becomes the sole authority over what can and can’t be on everyone’s phones.
Ah; and what is free software?
Free software is a matter of the users’ freedom to run, copy, distribute, study, change and improve the software. More precisely, it refers to four kinds of freedom, for the users of the software:
Let’s see if they apply:
- The freedom to run the program, for any purpose (freedom 0).
- The freedom to study how the program works, and adapt it to your needs (freedom 1). Access to the source code is a precondition for this.
Study? Yes. Adapt? Technically, with the source code, yes, except, without a developer key from Apple the most useful thing I can do with the changed source code is print it out and use that as… toilet paper.
- The freedom to redistribute copies so you can help your neighbor (freedom 2).
As long as my neighbour is the App Store, I suppose.
- The freedom to improve the program, and release your improvements to the public, so that the whole community benefits (freedom 3). Access to the source code is a precondition for this.
Being free to do these things means (among other things) that you do not have to ask or pay for permission [emphasis mine].
You should also have the freedom to make modifications and use them privately in your own work or play, without even mentioning that they exist. If you do publish your changes, you should not be required to notify anyone in particular, or in any particular way [ditto].
Uhm, except Apple, right? Right?
Sorry, John. I can clearly write GPL software for the iPhone – but not free software. And if I do that, Apple can’t give it to you – not on the App Store’s current terms and conditions. They impose restrictions on the recipient of the software that the GPL forbids third parties from placing upon the recipient on pain of losing the right to distribute the software. Apple is in violation of the software’s licence for distributing these GPL applications through the App Store in the first place.
I guess those silly hippies at the Free Software Foundation were right.