One of the most overused terms in the mobile space is "fragmentation" when referring to Google's Android operating system.  It has come to refer to a variety of different issues, some bad, some good, that are facing Google as it moves forward as the most widely-used mobile OS.  Fragmentation can refer to the different types experiences that the end-user encounters.  It can also refer to the different challenges that Android presents to developers as they try to create an app that runs well on as many Android devices as possible.  You can think of these two general categories as User Fragmentation and Developer Fragmentation.  While Developer Fragmentation certainly results in and can affect User Fragmentation, they are often separate issues that have their own subsets of problems.  Some of these problems are more visible, and some of them are more problematic.

User Fragmentation

User Fragmentation includes some of the most visible types of fragmentation that phone reviewers are most up in arms about.  The types include, but are not limited to:

  1. Manufacturer and carrier skins on top of Android, changing the look, feel, and performance
  2. Phones running older versions of Android, including 1.6, 2.1, 2.0, and 2.3

When Google introduced the first Android phone, the G1, they worked closely with HTC to deliver a software experience that they could call their own.  It didn't take long, however, for handset manufacturers to start skinning their devices to try and "enhance" the experience.  In reality, the skinning, as it's called, was an attempt to simply differentiate their phones.  In late 2009, HTC themselves began skinning Android 1.6 on the HTC Hero into what they called "HTC Sense."  Motorola introduced their own version called Motoblur around the same time, despite working closely with Google to introduce the first Android 2.0 device, the Motorola Droid.

When Google unveiled the Nexus One the following January, they billed it as a pure "Google experience" device with no carrier or manufacturer customizations.  It was largely seen as an attempt to cut the carriers out of the process of selling a phone, as Google initially tried to sell it unlocked on their website.  What went unnoticed at the time, however, was that it would be one of the only phones running stock Android released in 2010.  What followed was an Android explosion, one that put Google on the map but also diluted the Android identity.  In addition to HTC's Sense and Motorola's Blur, there was Samsung's Touchwiz, LG's unnamed skin, and the different UI running on Sony's Xperia line.  In short, no major phone maker was releasing Android with the same look and feel.  They all had different homescreen layouts, different menus, different features, and performed with varying degrees of bugginess.  The only other major phones released in 2010 running stock Android were the HTC G2 and the late-in-the-year Nexus S.

Adding to Android's problems was the fact that manufacturers and carriers were doing a terrible job of keeping the phones up to date.  While Android 2.2 "Froyo" was revealed in May and pushed to the Nexus One over the course of months, phones still shipped with 1.6 and 2.1 all the way through the year.  What's worse, consumers were left not knowing if their phones would be updated, including when.  In January 2011, the Samsung Galaxy S line, released last summer, still has not received updates to 2.2.  Many phones barely a year old are forever stuck on Android 2.1 with no support from manufacturers, carriers, or Google to try and bring them to 2.3 "Gingerbread."

These issues are a huge frustrations for a tech community that is well aware of what features are missing or how terrible some of the skins are compared to stock Android.  For average consumers, though, it's not as big an issue.  The typical phone buyer takes what's available from the carrier and isn't aware of the greater Android ecosystem.  This actually hurts the Google brand as much as customers, as people don't think of their phones as Android phones, but rather, "Droids," an "HTC Evo," or a "Samsung Vibrant."  It simply downgrades the overall experience, leaving Apple's iPhone as a recognizable, premium product.  Further hurting the Android ecosystem, though, is what we call "developer fragmentation."

Developer Fragmentation

Developer Fragmentation is the type of fragmentation that is behind the scenes.  It's the stuff that the public doesn't see, but definitely feels in the long-run.  Developer Fragmentation includes all of the variables developers must account for in order to be sure that a particular app will run well on the majority of Android devices.  These issues include:

  1. Different screen sizes and resolutions
  2. Different external hardware, i.e. screen technology used, touchscreens, camera buttons, trackballs
  3. Different hardware internals, particularly processor types, architecture, speed, and amount of RAM
  4. Different marketplaces for users to download Android apps

In short, developer fragmentation makes it more resource-intensive to make Android apps.  The reason is that for every different screen size, resolution, and other hardware issue it takes more and more versions to be made to support all of the devices on the market.  It also lessens the quality of the apps, as apps have to appeal to a lowest common denominator in order to run.  Button sizes can't be optimized when you're developing for  both 3.2-inch and 4.3-inch screens.  Graphics can look odd.  Different processor types mean major differences in how apps run, and different hardware technology requires more bug testing to make sure that touch response is not more buggy than usual.

The ways this can impact the final result are dramatic.  For instance, more people working on one app diverts resources from potentially new apps.  For manpower means more risk for developing, which is why Apple's iOS App Store remains dominant in quality app totals.  In addition to raw numbers, the quality of apps suffer because of the lowest common denominator factor mentioned above.  Cross-platform apps are overwhelmingly superior on iOS, despite the fact that focused effort can result in a good app on Android.  One infamous example is what happened to Angry Birds on Android.  Shortly after Angry Birds hit the Android Market, users on some older and low-power phones began experiencing severe performance issues.  The game's maker Rovio apologized for the fragmentation issue on Android and announced it would be releasing a different version that would run better on those phones.  That was in mid-November and the updated version still hasn't arrived.  Rovio also recently discussed how the fragmentation issue affects developers in terms of the different payment systems and growing number of stores for apps.  Amazon recently announced its plans to build an Android app store.  Expect carriers, retailers, and manufacturers to further complicate the ways to purchase Android apps, further frustrating developers and keeping some from fully committing to the platform.

Takeaway

While the word "fragmentation" has almost been reduced to a buzzword in reference to Android, it is a real issue for consumers.  Generally speaking, most Android apps run on most Android phones, but that's not the whole story.  The variety of issues that contribute to developer fragmentation are what can affect a platform more than what greets the consumer visually.  While skins and custom ROMs do complicate the ability to update phones, it's the more base-level issues that affect developers and therefore the Android ecosystem as a whole.  Now that manufacturers, carriers, and other entities have gotten their first taste of making Android fit their needs, the problem is only going to get worse in the years to come.

Posted
Authordfraz
CategoriesMobile