As much as Google's Dan Morrill, open source and compatibility program manager in the Android team, might want to argue that "fragmentation" of the Android platform is "bogeyman, a red herring, a story you tell to frighten junior developers," it's also very real.
The problem with Android is two-fold. First, there have been six major releases of the platform in little more than a year and a half. No matter how you try to cut it, that's an awful lot of revisions for developers, OEMs and customers to deal with.
The second problem is that according to Google's own data, three of these revisions are still in wide use:
Android 2.1 is the dominant platform, but Android 1.5 and 1.6 makes up form more than half of those accessing the Android Marketplace, and this of itself means that there's already fragmentation of the platform.
But is this a problem? Well, I think that six major releases in the space of 19 months has been a problem. That pace of change speaks of Android's geeky origins. For Joe Average, this created an ultra-confusing marketplace where operating system versions changed every few months. It also meant that compatibility issues were inevitable.
But this rate of change is not sustainable. Android chief Andy Rubin outlines how the pace of change is slowing down:
Our product cycle is now, basically twice a year, and it will probably end up being once a year when things start settling down, because a platform that's moving — it's hard for developers to keep up. I want developers to basically leverage the innovation. I don't want developers to have to predict the innovation.
While this will help in the long term, in the short term it's not going to make much of a difference. Fragmentation will always be an issue, but with careful management, new versions of the Android platform shouldn't make the earlier version immediately obsolete.
As Android becomes more mainstream, the platform will have to offer owners, developers and OEMs more certainty - something that geeks won't be happy with.