Google announced a bunch of fun new services this week, however, Google also announced some more long-term plans to rectify one of the most universally-acknowledged (and debated) problems with Android: fragmentation. Fragmentation is the sword of choice for iFans to tear through fandroids whilst proclaiming their platform better, and Goog-heads will insist to their Jobsian counterparts that it doesn’t even exist. As in most situations, the truth lies somewhere in the middle of the two extremes. We’re going to take a look at Android fragmentation, what it is (and isn’t), and what Google is planning to do about it.
What Is Not Fragmentation?
“Fragmentation” is an ugly word that sounds scary and broken. In reality, the fragmentation situation is somewhat less grim than the mythology. To start with what, let’s look at what fragmentation is not:
- Fragmentation is not manufacturer skins. Sense, TouchWiz and Motoblur are all custom UIs that are part of Android’s overall openness strategy.
- Fragmentation is not alternative markets. Amazon’s App Store, for example, is another instance of competition within the Android ecosystem rather than without. More on why this is important to Google (and you) in a bit.
- Fragmentation is not different types of hardware. Sliding keyboards. 3D screens. Front-facing cameras. NFC. Big phones, small phones. This is all, again, part of the design of Android’s “open” philosophy. Choice is the goal and the goal’s been achieved.
Now. All of the above are things that Google views as a good thing for the Android ecosystem, yet has in some form or another been decried by a critical public. And in some cases, it’s a fair point! It’s more difficult for a game developer to develop a game when they don’t know what size, how many buttons, or even what form factor their user is going to be playing on, right? However, this trade off is seen as acceptable on Google’s part for one primary reason: competition.
If you take a look at the Windows world, you can see why this is important. Microsoft controls the software stack from the ground up and, frankly, it’s difficult to find a reason to justify upgrading to each new version. While Windows 7 is great (I’m using it now), Windows XP is perfectly serviceable. If you bought into Vista, then you have even less reason to upgrade. Why? Because Microsoft needs to iterate, but they have no other overwhelming force threatening their position, making them sweat and, thus, creating innovative new features. Macs exist, sure, but do any of us expect that Windows will be on a minority of computers in the next two years? Of course not! They have such a dominant portion of the market that they feel they can rest on their laurels, release mediocre or superficial updates, and charge $200 for the privilege.
Android’s approach to their ecosystem is messier, but it also ensures (or at least provides the potential to ensure) that the platform does not become commoditized. To put it another way, it ensures that even if Android becomes the dominant platform, there will still be room for competition to drive the platform forward. HTC and Samsung will continue to try to outdo each other in skins. Google will keep competing with Amazon with their app stores. Carriers will keep duking it out over the slickest new hardware. This is good for you because it ensures higher quality products and it’s good for Google because it means that they can keep the rivalries that drive innovation forward within their ecosystem, rather than fighting with a competing one.
OK, So What IS Fragmentation Then?
To put it simply, fragmentation is when you pick up your six month old Android device and compare it to your buddy’s three month old Android device, and they’re running different versions, have different available feature sets, and you have no idea when, how, or if you can fix it. It’s a unique problem in that most other consumer electronics are either user upgradeable, or you never expect updates at all anyways. Other smartphone platforms have had this problem before, but Android’s the first to bring the problem to consumers, the most cranky of the buying market, en masse.
Apple maintains tight control of their hardware and only releases a phone once a year. By the time a phone is two years old, you’re due for an upgrade and you know it. So, really, they only need to worry about keeping one generation of older phones updated (and don’t tell me iOS 4 came to the iPhone 3G; that update was a hunk of bull manure and we both know it). Windows Phone deals with this problem by keeping their hardware limited to just a few devices. Thus far, Google’s plan to combat fragmentation has been to trust the market will deal with updates in a timely manner. The result has been…..well…less than ideal. In the case of some HTC and Motorola devices, we’ve seen updates that are pushed a couple months after they’re announced, best-case scenario. Worst-case? Talk to anyone in the U.S. with a Galaxy S phone.
But that’s really just the beginning. With the arrival of the Xoom tablet, Google took the problem and made it even more confusing with the advent of Honeycomb. Up until this point, if you wanted an Android tablet, you got a big phone. Honeycomb was the first major departure from this approach. It was also entirely incompatible with the phone form factor. You can set up the Honeycomb SDK emulator to display a virtual phone and it’s pretty clear things get ugly fast.
Right now we have about three or four different “primary” versions of Android running around:
- Froyo (2.2) which is the lowest common denominator and the last major revision that saw high adoption rates.
- Gingerbread (2.3) which is currently running on only a select few phones. Many major phones still ship with Android 2.2.
- Honeycomb (3.0) which most major tablets are planning on shipping with so far.
- Honeycomb again (3.1) which is being rolled out to the Xoom right now, those 5,000 special edition Galaxy Tabs the Google developers got at Google I/O in the next couple weeks and….who knows beyond that?
I’ll be honest. It’s kind of a mess.
The problem is somewhat less pronounced right now as Gingerbread is largely a useless update, however there’s still plenty of features that new versions of Android have that others don’t. Voice and video chat are possible from 2.3.4 up, but not on 2.2. Nothing below 3.1 has resizable widgets. Not to mention certain Google applications like Reader which are still living in the Gingerbread era, despite Google specifically going to the trouble of making their Fragments API (read: tablet-friendly) backwards compatible for developers.
In the past, it’s been somewhat debatable about whether or not it’s a problem. It’s true that the nature of Android is such that the OS can cater to the needs of even those who want a crappy old phone running 1.6. Last year, I gave my G1 to a friend who loved it, until the device finally died, and now she’s rocking an old Aria. She doesn’t care about updates. Some people just plain don’t care. For those of us that do, however, we’re stranded in an increasingly messy sea of scattershot updates. Much of the last half of 2010 was ok, when just about everyone except Galaxy S owners were rocking Froyo. Now, we’re starting to have a real problem.
So, How Do We Fix It?
In what is perhaps the most shocking turn of events, Google announced this week that they’re planning to do what all the internet commenters were demanding they do from the beginning: the entire industry is going to get together and work it out. OK, maybe not the entire industry, but basically everyone you care about for sure!
In the U.S., at least, every major carrier is signed up into the new program. As well as most major handset manufacturers included HTC, Samsung, Motorola, hell even Sony Ericsson and LG signed up. And don’t worry, our European friends. Even Vodafone made a point to stop by and say hey. This coalition of the willing has joined with Google to ensure that all handsets—hardware permitting—will get “timely updates” for 18 months after they’re released. Assuming Google ever manages to adhere to the mythical 6-month release schedule, this will mean that if you’re on a 2-year contract, you should be guaranteed to have the latest and greatest version of Android for at least three releases after you buy your phone, with a remaining six months waiting for your contract to end and your upgrades to resume. In other words, if you want to, you can ensure you always have the freshest Google-y baked goods no matter what.
Of course, there’s still a couple of caveats, and not all of the details have been figured out yet. For starters, the only for-sure number Google has given is 18 months. There’s still no answer to the question of what “timely” means to a manufacturer or carrier. Nor does there seem to be any kind of indication of just which hardware will “allow” updates (and I’m sure our friends at XDA would likely differ with Google and their Justice League of industry leaders on that point). Finally, there’s no clear answer as to when this program will start. Will it apply to the upcoming Evo 3D? The Galaxy S II? We’re still not sure.
What is clear is that not just Google, but a large number of other companies know what’s up. Your cries have been heard, internet, and you’ve been rewarded with a handy-dandy slide of eleven company logos, representing a promise to keep you up-to-date. It’ll be a logistical nightmare for them, and to be sure we’ll likely have to wait even longer before we even know for sure if this is gonna work, but credit where its due: it’s not easy to get so many carriers and manufacturers to agree on anything, so this is a very good sign.
And About That Pesky Honeycomb/Gingerbread Dilemma?
Yeah. That. Well, Google’s got a plan for that, too. This week they announced Android Ice Cream Sandwich (?.x). Not much is known about the features of this new release, other than that Google says it’s going to be their “most ambitious” release yet. The goal will be to merge all Android projects and form factors into one OS that can run anywhere. Currently, that’s not quite the case, but it looks like Google recognizes this and is planning to address the issue.
Ice Cream Sandwich is being touted as the unification of not just the past of Android, but the future. Google wants to “insulate developers” from the differences between various devices, so that their apps will be write-once, run-everywhere. Also, Google reiterated that the entire project will be open source, meaning those worried that Android has now become a closed-source project since Google hasn’t released the Honeycomb source code yet should be put at ease (maybe). Beyond that, though, we don’t have many details.
Google has announced that they’re targeting a Q4 release for Ice Cream Sandwich. This is both a good and a bad thing. On the one hand, Q4 is still quite a ways away. Given that we still don’t have the Honeycomb source code (and probably won’t have any access to tablet-related Android source code until this release), it will be almost a full year of no new source code drops for Android developers. This will be a huge blow to custom ROM makers, smaller independent hardware manufacturers, and Android fanboys who argue in comment threads too much.
On the other hand, if we can count this week’s 3.1 increment as a release, then a “Q4 launch” could put us squarely in late October/early November, a historically exciting time for Google updates and, more importantly, roughly in line with that mythical six month release schedule. If there’s any time Google should start hitting some regularity, it’s now. Patience is gonna be a key virtue this year for Android fans, though. Hopefully Google will make it worth it.
Will We Survive?
It’s unclear yet if Google’s attempt to reign in the chaotic nature of their massive open source beast will be successful. The details of their deal with the wireless industry leaders aren’t known, we’ll have to wait almost a year to ever see the tablet-Android source code, and honestly, no matter what Google does, people will still complain about fragmentation. Just like people will still complain about Apple’s “walled-garden” and Microsoft’s “Steve Ballmer”. In the end, though, this is a welcome effort on not just Google’s part, but the entire mobile industry to bring a better, more timely product to consumers. For that, we all win.
As a side note, though: while this is a tech blog and we’ll all always want the latest and greatest, the best weapon in dealing with fragmentation is to realize just how great your devices are even if you never get free updates. If you own an Android device that you purchased in the last year, you can press a single button on your phone, say the words “Navigate to Starbucks” and watch as your phone triangulates your location from satellites in space, pinpoints the nearest Starbucks location, then jumps into a turn-by-turn app and tell you in short baby steps how to get there. The only thing these phones don’t do is actually take you there. And Google’s working on that too. So, relax.