Google unveiled the first Android-powered cell phone last week, a T-Mobile-branded device dubbed the G1. Comparisons to Apple's iPhone were immediate -- and that is a good thing for Android, when you consider what a raucous and contentious week it was for iPhone developers.
Initial G1 reviews were generally positive, but several reporters complained that when they asked about specific missing applications and features, the reply came back that third-party developers "are welcome to add that." In open source circles, that sort of comment is often regarded as a dodge, what a proprietary vendor says when dumping source code over the wall with no intentions of developing it further.
But at least it is possible to add functionality to Android phones. And it's possible to study the Android platform and discuss the value of pursuing it before you decide to invest your resources.
Not true for the other mobile newsmaker of the week. iPhone application developers had a rough go of it -- Apple changed its acceptance policies, it deniedseveral high-profile apps acceptance into the iPhone App Store for dubious reasons, it shut down one developer's attempt to distribute his app independently, and, finally, it ordered developers not to discuss their rejection in public or else face loss of SDK privileges. It was a big enough story that App Store policies momentarily became the target of satire.
Change is coming
I can't help but think back to April, when we ran an analysis of the iPhone Developer Program's compatibility with free software licenses. After consulting with the Free Software Foundation's licensing compliance officer, we concluded that there was no legal way to participate in the iPhone Developer Program and make your software free. The GPLv3 is right out, because it features an "anti-TiVoization" clause targeted specifically at code-signed platforms like the iPhone. But more importantly, the draconian nondisclosure agreement (NDA) required to access the iPhone SDK ruled out any distribution of source code -- regardless of which free software or open source license the developer preferred.
As you would expect, Apple defenders chimed in, insisting that the NDA should be -- and in fact would be -- interpreted liberally by Apple, permitting discussion and publication of iPhone apps' source code. Well, no. Apple said that the blanket claims of the NDA were as broad as the letter of the contract made them sound. Not only did Apple's legal department view the APIs and function calls described in the SDK as covered by the NDA, it even viewed correspondence between developers and Apple as covered.
Last week's negative press must have finally reached a tipping point, because on October 1, Apple announced that it would do away with the existing NDA and replace it with something new in the coming two weeks. iPhone developers were thrilled at the news.
We will have to wait until the new agreement arrives before assessing how different it is. In the meantime, don't forget that the far-reaching terms of the NDA was only one of the problems. Apple still gets to decide which apps make it into the store, it can remotely kill apps it doesn't like, and we know that any registered developer who tries to distribute an app outside the iPhone App Store will be shut down.
Apple's defenders showed their support for the company on Mac news sites that covered last week's iPhone App hijinks, protesting that Apple was perfectly within its rights to reject iApps that it does not like -- such as those that perform useful functions that Apple may decide to offer in a future version of its product.
They are absolutely correct -- Apple is within its rights. The problem free software advocates have with the iPhone Developer Program isn't that Apple acts beyond its rights, it's that Apple's rights are the only ones considered, detailed, and protected by the terms of participation.
I've watched Apple too long to expect any significant number of iPhone developers and iPhone owners to call for big change. Some might; the rest will rationalize Apple's App Store policies and takedown notices, then resume business as usual. Only a tiny fraction might genuinely consider the benefits of a more open mobile device platform.
I would really, really like to see a top-notch free software-powered cell phone, both because I want one and because the majority of the public and the mobile developer community won't truly "get it" until they see it in action. Apple's mini-totalitarianism might shock some of them as it did last week, but they will have to see the better alternative in the flesh before they understand.
Maybe Android will be that free cell phone platform, maybe it will be OpenMoko, or even Nokia's open sourced Symbian -- I don't know. But the clock is ticking. And if it isn't here in the next year and a half, I may just ditch the "cell phone" model entirely, and start carrying a WiMax-enabled Maemo tablet running a SIP client instead.
In fact ... now that I've said it, maybe that's the correct choice right now.