Thursday, May 10, 2012

Thoughts on Fragmentation

Fragmentation is a term that is thrown around a lot in regards to the Android operating system. It basically means that there are many different versions of Android running on various phones and tablets that take away a general cohesiveness across the platform. The various manufacturers of Android devices often take many months to push out the new versions which causes unrest and general unpleasantness in the community. In the early days of Google’s mobile OS the releases came often twice a year creating large gaps in the ecosystem, recently however the development has slowed down so that there is only one major release per year that coincides with the announcement of the newest flagship Nexus device. The Nexus program is meant to be a platform for Google to show off Android as they see it and allow developers a standard device to work from that receives updates directly from Google HQ. This program is very similar to the way that Apple works with the iPhone, releasing one device a year with the latest OS and updating the previous devices shortly after (which is why we do not hear a ton about fragmentation within the iOS community). Another version of fragmentation within Android comes from the various manufacturers ‘skins’ that accompany virtually all releases except for the Nexus line of phones. Most of these skins offer usability improvements so that the consumer has an easier time using the product and to distinguish itself in the market. These skins create larger slower systems that often detract as much as they improve Android and creates confusion in the market. I read an article once speaking about the fragmentation of Android and found it really hit me as brilliant, the skinned versions of Android were in themselves distinct OS’s that do not reflect what Google is trying to implement. If you consider each skin overtop of Android as its own OS (which based on looks and certain functionalities they may as well be), the amount of fragmentation is considerably less. Currently the only phones with Android 4.0 are the Galaxy Nexus and the Nexus S, the maximum for other phones right now is 2.3 which covers a large majority of Android devices on the market, and is the highest number for all skinned Android phones currently. With a slowed down release cycle the amount of fragmentation that accompanied Android 2.3 has been the lowest it has ever been, however with the release of 4.0 we are sure to see that fragmentation rear up until all manufacturers have released their versions.

To increase release cycles and decrease the issues people have with fragmentation Google and their partners need to change the way they operate. I have one thought that could greatly reduce the amount of complaining about fragmentation even if it doesn’t actually solve the problem, and that is to include a “Vanilla” version of Android on any phone for those who want it. Part of the waiting game associated with manufacturers updates is the implementation of their proprietary skin and approval from regulators, if all of the partners offered a Google approved Vanilla build there could be an update for those interested much quicker than if it was to be released with the skin overlayed. This does not change the fact that drivers and regulations still have to go through approval and the software still has to be tested to ensure its compatability with the software but it does take out the step of retrofitting a proprietary UI. This would also satisfy many hardcore Android fans with giving speedy builds and stock Android however it would likely detract from the Nexus program itself.

I myself am a firm believer in the Nexus program and currently own devices that are updated by Google without any sort of overlay as I view the stock Android as the most usable and pleasing version (I also enjoy getting the latest and greatest in updates and software). In my opinion this is the only true Android and it is relatively free from fragmentation and always up to date (just like iOS).