Dissecting Android's openness

Oh, Steve Jobs, you certainly do know how to get tongues wagging. During last quarter's earnings call he attacked Google's stance that Android is the superior mobile OS because it is "open," restating the debate into terms of "integrated versus fragmented" instead -- with iOS on the integrated side, of course. He went so far as to cite Tweetdeck's analysis that it had to deal with "more than one hundred" flavors of Android when developing its Twitter client -- something that seems to have ruffled its feathers.
Google's Andy Rubin responded with a rather elegant tweet (shown at the top of this article) that claims to demonstrate just how open Android really is, although our own Victor Agreda Jr wasn't convinced of the relevance. However the real story of how open Android is and isn't -- and of what that means -- is far more complex than can be captured in a tweet.
Firstly, an explanation of what Rubin's tweet actually means for the non-nerds amongst us: it's a set of build instructions for the Android OS. If you have the correct (free) development tools installed, these steps will download and compile the operating system, just like that. Google contends this is the true power of "open" -- open for people to use freely.
It goes further than that, though. The core Android operating system has been released under the Apache Open Source Licence. This gives anyone who cares to do so the legal right to download the code, modify it, compile their new versions, and give away or sell that altered version. That's certainly pretty open, right? I could write and distribute my own OS using pieces of Android.
Things aren't quite that simple though.
Open, closed, and ajar
if you cast your mind back, you may recall that famous Android modder "Cyanogen" was served a cease-and-desist order by Google to stop him from distributing his modified images for Android handsets. If Android is open source, and people are allowed to modify it at will, then what grounds did it use to do that? It turns out that the important part of the phrase above is "the core is open source." Some of the stuff you actually see when you turn an Android phone on is not open source at all. Well, I say "some"...
The Open Android Alliance is trying to build a centralized collection of open source replacements for all the not-open pieces of the Android picture, and it is currently targeting the following components: the Market (app store), instant messenger client, email client, mapping application, YouTube client, calendar application, setup wizard, and contacts syncing framework.
Many of these pieces can be substituted from other vendors, though. As you might expect, there are numerous IM clients, mapping and navigation tools, and so forth available for Android. However, if you follow Rubin's instructions to the letter, the operating system that comes out the other end will lack all of these pieces. It's Android, Jim -- but not as we know it. Ever wondered why the early wave of cheap and nasty Android tablets we are currently, uh, "enjoying" lack the Market app? It's not because the companies couldn't be bothered to add it. It's because Google controls who does and doesn't get access to these closed source components and has chosen not to let the tablet companies get them (with the notable exception of the Samsung Tab).
There's yet another wrinkle too: unlike most open source projects, like Firefox or HandBrake, Google doesn't expose the up-to-the-second version to the public eye. Rather, it releases the entire tree of source code for each version of Android, as the release also goes to users via the handset manufacturers. This means competitors cannot get sneak peeks at what's coming in new Android releases, but it also means that people outside of Google find it harder to meaningfully contribute any improvements they have written. Some industry figures such as Leslie Grande (former Apple and T-Mobile executive), Andreas Constantinou (industry analyst for Vision Mobile), and Joe Hewitt (developer of Firebug and Facebook for iPhone, amongst other things) have questioned whether Android is meaningfully open source at all, describing Google's control of the platform as "oligarchical" and the definition of "open" at work here as "watered down."
Still, though, the core parts of Android are open source. That's more than Apple can boast, right? Well, not so fast. iOS, like OS X before it, uses the Darwin kernel, and that's open source. Safari on both of Apple's platforms uses the WebKit rendering engine, and that's open source too (and indeed, is used in Android). If I had the sufficient skills for kernel debugging, I could, in theory, find and fix a problem in the kernel, submit the change, and that change would appear in a later version of iOS.
So, the bottom line: it's not entirely accurate to say that Android is entirely open or that iOS is entirely closed, although it is fair to say that the former is far more open than the latter. Geeks like me love to obsess over fine details like this, but what does all this mean to end users?
What difference does open make?
The most obvious advantage Android's openness can bring to the user experience is allowing developers more flexibility in the apps they can ship. There are a number of innovative Android applications, such as Locale and Swype, which are not allowed under the rules of the iOS App Store. It is possible that some startup out there right now is working on a truly game-changing Android app that turns the current mobile market on its head, in the same way that companies such as ICQ, Skype, Facebook, and Google itself were able to establish themselves on the Web.
The second advantage is that a more open platform leads to more interest and confidence from developers. Not only can they write apps that interact with the OS in deeper ways, but they can also write those apps with confidence that, once they get to the end, an arbitrary decision by a content gatekeeper won't stop them from selling their apps. Sadly, the same is not true of the App Store, where if Apple doesn't like you, you're out of luck -- and you don't find out that's happened until after you've written the program. Apple has relaxed and explained its rules lately, but it's still a far cry from Android where even malware can make it in. And of course, if all else fails, Android developers can distribute apps to users directly (called "sideloading") without going through the central Market at all; the iPhone has nothing similar to that unless you jailbreak.
Google's argument that "open leads to better quality" is entirely correct, of course, which is why Linux is the dominant desktop operating system. Wait, what? The cold reality is that whilst I, as a geek, get warm and fuzzy feelings from using open source software (Linux was my primary desktop platform for over five years), people don't care about openness -- except when it means they get better stuff. And whilst it seems obvious that open can lead to better stuff, it's far from a guarantee.
Open... but for who?
Android's open nature is a two-edged sword, because it also leads to fragmentation -- the stick that Jobs was using to beat it with during the conference call. Up until the iPhone's release, the carriers had been accustomed to the ability to fiddle with the software on the handsets they supply to their customers in any number of weird and "wonderful" ways. Most of the modifications were not good. They were generally paper-thin efforts to make the customer spend more money with the carrier in some way, often had UIs that conflicted with the phone's base software, frequently slowed it down, and in some cases, outright crashed it.
Apple's cast iron grip on the iOS platform utterly locked the carriers out of this. Pick up an iPhone anywhere in the world, on any carrier, and the only differences in the user experience will be the network name displayed at the top left and carrier support for tethering and visual voicemail. Psychologically speaking, the user of the phone isn't really a customer of the carrier -- he or she is a customer of Apple. The carriers become commoditized, interchangeable, replaceable. That's not good business.
With Android, the carriers can wrest some control back. Android's built-in openness means carriers can make all sorts of modifications. Consider the first release of Skype for Android: it was exclusive to Verizon devices and engineered in such a way as to use up your voice minute allowance when used for calls to non-Skype numbers over 3G (and with Wi-Fi calling disabled!). These restrictions were later lifted with an all-carriers release that supports Wi-Fi -- but meanwhile, Garmin navigation software will be exclusive to Asus Android handsets. AT&T even closed off the ability to sideload apps on some of their Android handsets, although clever hackers soon figured out a way around that.
Which brings us from carrier modifications to OEM modifications. Android handsets are made by a wide range of companies who buy their components from the same suppliers, are constrained by the same laws of physics, and operate with the same design parameters. It can be difficult to make products stand out. To counter this, HTC gives its handsets the Sense UI, and Samsung created TouchWiz. This spurs innovation (the OEMs might think of something Google didn't) at the price of unification (if I have a phone that uses Sense, I might not feel comfortable getting one that uses TouchWiz; or if I'm locked into my contract and I see some great feature on a TouchWiz phone, well, tough. I can't have it).
Google is attempting to discourage this behavior in future releases of Android, but it remains to be seen how much hostility the company will generate in the attempt, or how successful it will be.
The bottom line
Apple would have you believe that Android is a hopelessly fragmented user experience. Google would have you believe the iPhone is patrolled by ruthless gatekeepers that are strangling the innovation out of the platform.
Both companies are trying to sell you things. Both companies are a little right and a little wrong.
The real winner here, though, is the consumer. The fierce competition has led to two vibrant platforms characterized by breakneck invention, and it seems likely that the sort of decades-long software monoculture we've seen on desktop computers in the form of Microsoft's 90+ percent market share is unlikely to happen in the smartphone world.
Share
Source: http://tuaw.com/tag/android
Categories
Oh, Steve Jobs, you certainly do know how to get tongues wagging. During last quarter's earnings call he attacked Google's stance that...
Add a Comment
I don't see many references to the Skyhook lawsuit against Google for "allegedly abusing its control over Android to exclude competitors for geolocation services" [1]. Skyhook's CEO comments: "The message that Android is open is certainly not entirely true," the CEO explained. "Device makers can license technology from other companies and then not be able to deploy it."
[1] http://www.electronista.com/articles/10/09/15/skyhook.says.google.geolocation.anti.competitive
No one seems to mention or appreciate the fact that in the Android developer world, all 3rd party applications are coded in one language (sand-boxed Java) while Google's own proprietary applications like Maps, GTalk, Apps and Mail are done in another (pure C).
It must be said that for all this paradoxical talk of the "walled garden" approach to iOS App development, Apple's proprietary apps on the one hand and all 3rd party iOS apps are coded in the same language, Objective C.
How's that for (literally) double standards?
Just wanted to say, "Bravo!". I commented and complained that the initial post seemed a like a kneejerk fanboy response that wasn't very well thought out, and not up to the usual TUAW level of quality.
This was above and beyond though. A honest and detailed look at 'open', not just a quick dismissal lacking facts. A full round of applause from me.
apple and google are in 2 fundamentally different businesses.
apple wants to sell customer experience by way of excellent hardware and software. one could argue the best way to maintain the customer experience is to keep tight controls over hardware and software (OS). example - can't repurpose the buttons on the iphone.. like using the volume controls to operate the shutter on a camera app, or the change to the rotation lock switch on the ipad. keeping in mind what they sell (cx) tight controls make sense.
google wants to sell you NOTHING, but you still pay - in the form of information. so it makes sense for them to distribute an operating system for free. the more units deployed, the more info they gather.
apple won't let me "do what I want" with their products - run OSX on non apple hardware - the same way google won't post their search algorithms on github or use 3rd party code in their ad infrastructure.
both are open, both are closed. it doesn't depend on how you look at it, it depends on what they're selling.
that's not to say apple doesn't want your info, or google doesn't want you to have a good customer experience.. but you can easily tell where their priorities lie based on which aspects of their products are "open" or not.
My security consultant friend has an iPhone and scoffs at Android as having many open security issues (most of which are app-related).
I think I trust his view of mobile security.
"And of course, if all else fails, Android developers can distribute apps to users directly (called "sideloading") without going through the central Market at all"
Not true, look at the BackFlip. AT&T doesn't allow loading of non Market apps. (I think, correct me if I am wrong)
$ repo init -u git://androit.git.kernel.org/platform/manifest.git
-bash: repo: command not found
openness fail
To be fair to Google, that's not an openness fail. It just means you don't have the right (free) development tools installed.
November 08 2010 at 2:53 PM Report abuse Permalink rate up rate down ReplyMy top 3 are:
JB IOS
Android
IOS
I think you're absolutely right about the openness of Android and the integration of IOS. Apple could completely dominate if they learned from their IOS hackers.
Openness is a type of freedom, and freedom itself is a paradox. If you had absolute freedom, you could do anything you wanted, up to and including killing someone--i.e., taking away that person's freedom. Find the most freedom-loving person out there and they'll still admit that a person's freedom should be limited to the point where you aren't allowed to take away someone else's freedom. The hazy part start where you try to decide exactly where to draw the line.
It's the same thing here. Android is so open that handset makers can install apps which the end user can not remove. The handset makers are using Android's openness to make it more closed to the consumer.
Purely open is not good. Purely not closed is not good. The best spot is somewhere in the middle, and the definition of "best" will differ from person to person. Apple and Google are both betting that their position will result in the most money. That's it. Period. The end.
I enjoyed this article, but I think you are conflating two separate issues a little. The Android OS being open source does not relate to the way Google runs the Android market. The OS could continue on as open source at the same time that Google could choose to lock down the Market in the same way as the App Store - requiring approval for apps and so forth. Because both are being created by the same entity, it makes sense that both have a similar levels of openness, but they are not tied together so that if one is open the other has to be. Similarly Android could be closed source while the Market was "open" (not requiring app approval), which is what some people want Apple to do with their App Store.
November 08 2010 at 12:32 PM Report abuse Permalink rate up rate down ReplyDeals of the Day
more deals- Cases for New iPad at HandHeldItems: Extra 20% off, $2 credit, from $3 + $3 s&h
- $15 Apple iTunes Gift Card for $8 for new Saveology customers
- Philips Fidelio Docking Speaker Station for iPhone / iPod for $38 + $6 s&h
- Retro 80's Case for iPhone for $11 + $2 s&h
- HHI 360 Dual-View Stand Case for new iPad w/ $2 credit for $12 + $3 s&h
- HHI ReElegant Smart Cover Companion Case for new iPad from $5 + $3 s&h
32 Comments