Palm Pre Edges Android as Developers' Darling
Judging by buzz alone, the Palm Pre seems to be current the hot smartphone among developers. It's no surprise, considering how much effort went into its developer platform. Palm is banking that a strong developer community will build a grassroots movement behind the Pre that can drag the company back from the brink of obscurity.
But Palm wasn't always the mobile developers' darling. Back when the Pre was but a glimmer in Palm's eye, Google Android was the smartphone OS du jour. Like Palm, Google has taken the value of a strong developer community to heart, releasing the Android code as open source and offering developer previews of its latest technologies. It even went as far as to give out free handsets to developers at this year's Google I/O conference.
[ iPhone developers are frustrated too by the Apple App Store's "ayatollahs" and slow bug-fix updates, as InfoWorld's Bill Snyder explains. | Considering Palm Pre development? Read the InfoWorld Test Center's Mojo SDK review first. ]
But all is not well in Android-land. A year after the platform's launch, second-generation Android handsets are now available to U.S. consumers, but they're hardly leaping off the store shelves. According to the research firm Canalys, Google Android commands only about a 3 percent share of the smartphone OS market, while Apple's iPhone has shown an astounding 627 percent growth in the past year.
No surprise that Android developers are starting to grumble. Google is learning the hard way that building a developer community isn't enough; you'd better also have the goods to back it up.
Android After the Honeymoon
On paper, Android seems like a developer's dream come true. In the past, mobile developers were saddled with arcane toolkits and closed, proprietary OSes, but Android is all about openness. Compared to Apple's iPhone OS, Android would seem to offer a better value proposition to developers in almost every respect. But that's all conceptual. Unfortunately, while Android looks good on paper, in the real world, execution is what counts, and so far Google's has been lacking.
Compared to Apple, Google's developer documentation is scanty at best, and it doesn't help that the Android OS still seems to be something of a work in progress. No problem; early adopters are usually willing to overlook a few growing pains in a new platform -- and that goes double for developers.
That is, they would overlook them -- if they could get their hands on the hardware at all. These days, a growing segment of the software development community lives outside the United States, where Android handsets are still hard to come by. How many developers actually flew in from Bangalore to get their free Android phones at the recent Google I/O conference?
Worse, the handsets themselves present a moving target. An iPhone is an iPhone, more or less -- there are a few models on the market, but they're subject to Apple's tight control of the platform and predictable release schedule. Android developers, on the other hand, are told to ready themselves for an explosion of new devices, each with its own unique characteristics.
That variety is good in principle, but it makes developing on the Android platform challenging, particularly for the lucrative games market. What screen resolution will the user's handset support? What kind of input devices will it provide? How much power will its processor have? On the iPhone these are known quantities, but when coding for the Android platform it's all up in the air. Inevitably that uncertainty means some apps will perform poorly on some handsets, which in turn means disenchanted customers.
Does Google Really Care about Developers?
To see that disenchantment in action, look no further than the Android Market. According to games developer Larva Labs, sales on Google's app store have been abysmal, even though its products top the bestseller list. Little wonder, when Google makes it easier for customers to return products than to buy them. Customers can request a full refund anytime within 24 hours, but before they can start downloading apps they have to sign up for Google Checkout. Dissatisfaction with the Android Market has led to a lively discussion on Google's developer forums, with no clear resolution in sight.
Something better change soon. In fact, the whole Android experience should serve as a wake-up call to Google. Here is a company that's been content to leave shipping products in "public beta" for years -- "Don't mind the outages, it's just a beta!" -- but that attitude simply won't fly in the cutthroat world of mobile development.
Judging by Google's track record, I wouldn't blame developers for wondering just how committed the search giant is to the Android platform. Yeah, we get the message: What's good for the Web is good for Google, and a solid, Web-enabled mobile phone is good for the Web. But where does that leave independent developers -- the ones who are building apps to run on the Android platform, not just in the browser?
A strong developer community isn't the only key to a successful platform; a great user experience is even more important. But Google isn't likely to broaden its market if it continues to alienate software developers. Google is asking independent developers to stake their businesses on its OS. Instead of treating Android like a hobby, it should step up and do what it's asking its developers to do.