Android 3.0: Hell Yes It's a Fork. But Who Cares?

Android 3.0: Hell Yes It's a Fork. But Who Cares?

Summary: This just in: Big screens and little screens are different and your excessive worry over forking Android 3.0 is misplaced. The real problem is the OEM and Carrier crapware.

TOPICS: Android, Google

This just in: Big screens and little screens are different and your excessive worry over forking Android 3.0 is misplaced. The real problem is the OEM and Carrier crapware.

Ok, so I go away for a few days and everyone gets their panties in a twist over whether Android 3.0 is a fork.

My ZDNet colleagues, Steven J. Vaughan Nichols and Chris Dawson have been at odds over the topic.

SJVN says Android 3.0 is a fork:

If you look at the Android Honeycomb highlights, it becomes even clearer that Honeycomb is going its own way. There is some good news for developers who don’t want to re-do their Android 2.x work for Honeycomb. As the Web page states, while “The new UI brings fresh paradigms for interaction, navigation, and customization and makes them available to all applications—even those built for earlier versions of the platform. Applications written for Android 3.0 are able to use an extended set of UI objects, powerful graphics, and media capabilities to engage users in new ways.”

and Dawson says that it isn't.

Just as the underlying core of Ubuntu doesn’t differ between the various partner projects or user interface “spins,” Android 3.0 represents far more of a UI change than a true fork. The underlying technology is Android (meaning Linux, Dalvik, and Java), 3.0 is backwards compatible with 2.x and simply gives developers the tools and UI necessary to properly exploit larger tablet screens. There are, after all, plenty of apps designed for the iPad that aren’t available on other iOS devices.

Okay, both of you, get a room. And the two of you are wrong. Well, you're both right and wrong, but let me get to the real issue at hand.

Android 3.0 is a fork. The user interface has changed, and there will be new APIs. Gingerbread and Honeycomb are distinctly different development targets even though Android 3.0 is compatible with the Android 2.x APIs. So we should freak out about this? No.

Look, sometimes you NEED to fork something in order to address a specific problem. Guess what? Apple's iOS for iPhone and iPod Touch and iOS for iPad and the Apple TV are also FORKS. Yes. They are. The only reason why nobody is screaming and yelling about it is that there is only one company making iOS devices: Apple.

The iPad's implementation of iOS has its own distinct applications that are pre-loaded into the ROM -- such as a special version of Mobile Safari, an optimized Mail app, its own built-in version of iTunes, et cetera. All of these were done by Apple to address the fact that the screen on the iPad is bigger and higher-res than its iPhone/iPod counterpart and as a result of how the devices are actually used, there will be differences in the user experience.

The UI for the main iOS shell might be the same between the two devices, but where it counts, the two versions of iOS 4.2.x are FORKS. The codebase is not identical. Most iPad apps are distinctly different binaries than the iPhone/iPod ones because they have scaled graphics and a number of other things that require changes.

Universal binaries for iPad and IPhone, while they do exist, aren't nearly as common. There may be a concerted effort to try to do more of this in the future by iOS developers and perhaps Apple in order to minimize development efforts as the devices start to share more characteristics such as screen resolution, but I'm betting that iPad apps and iPhone apps will be largely separate for some time to come.

But is this even an issue? Does anyone in iOS app development land really care if the two platforms never completely sync up? Do you ever see New Media pundits complaining about it? Of course not. The reason why nobody cares is because Apple is in full control of its ecosystem, it prohibits carriers from adding any sort of major modifications or changes, and there's only a few models of the iPad and iPhone out at any time.

As with iOS, Android also requires two distinct versions because guess what, the user experiences between a small screen and a big screen are different. And while Google chose a completely new shell (UI) for Android 3.0 and Apple didn't for the iPad versus the iPhone, both companies made changes where it counts most, in the built-in apps baked into the ROM.

Here is the real problem. It ain't the fork, folks.

If Google only had just vanilla versions of Gingerbread and Honeycomb as the two distinct development targets, and everyone ran just the vanilla versions of these platforms on their phones, the situation would be manageable.  What makes things untenable is that the Android OEMs/ODMs/Carriers and their "Value Add" that they keep putting into the the phones and tablet ROMs.

Right now, each OEM has their own special UI layer and apps that they like to throw on top of the existing OS that Google releases. HTC has "Sense", Motorola has "Blur" and so-on, all with their own various API additions and specialized apps that in many cases replace basic vanilla Android functions. This is what is creating problems for developers, not the actual versions of Android.

Android software developers target their apps against Google's Android SDK, which simulates the various versions. Most Android developers aren't the Rovio Mobiles of the world who can afford to buy one of every flavor of every device from every carrier, it just isn't practical.

Your average Android shop is a one or two man operation, who maybe has a few devices on-hand to test against besides their SDK Android simulator. So when their application blows up on the latest Motorola/HTC/LG/Samsung/Dell/Sony Ericsson whatever, they've got no easy way to regression test if it works fine on their test devices, even if it is the same version of Android on the new model on which it is breaking.

I'd liken this situation to the average PC consumer who cannot buy PCs with "Pure" Microsoft Windows on it. Instead, they get systems with "crapware" and other OEM garbage and utilities that may bog down performance and cause application issues.

There's an entire cottage industry of crapware-removal utilities in order to get your PC running "Pure" Windows 7. And some end-users will go as far as blowing away the OS on their PC and re-installing Windows from scratch using retail Windows DVDs in order to get that "Pure" experience.

The solution to the Android problem is simple: Short of forcing OEMs/ODMs/Carriers to standardize on the "Pure" versions of Gingerbread and Honeycomb for their smartphones and tablets, Google needs to lay down the law and require that anyone who wants to have access to the Android Market (device certification) has to start with a vanilla base and then install the "Value Add" components on the Micro-SD card/internal flash storage and not in the ROM, so that consumers have the option of reverting to a "Pure" Android if they want to.

And if consumers want to re-install those components, they should be able to do it from carrier or OEM-hosted 3rd-party App Stores, or by carrier/manufacturer specific sections of the Android Market.

I would also go as far to say that Google needs to make clear rooting instructions and the ability to use 3rd party ROMs, such as an official Google ROM or even custom ROMs made for vertical and enterprise use an absolute requirement for vendor certification for their devices.

The issue of warrantee invalidation of a rooted device by a carrier or manufacturer is certainly up for debate, but the consumer absolutely should not have to jump through all sorts of hacker hoops to install alternative firmware if they are fed up with update delays or refuse to use "Value Add" software. It should be a simple, painless and standardized process.

The fact that the only way I can currently get a consistent Android experience on my year-old DROID and my HTC EVO 4G is via using CyanogenMod's version of Gingerbread or Froyo rather than the stock offerings from those two vendors or Verizon or Sprint is embarrassing for the Android developer community to say the least.

Now, I realize that factors such as differences in device drivers on hardware makes standardization on a single ROM image difficult. However, as I discussed in a previous article, much of the pain of managing ROMs and OS updates could be alleviated by using a built-in "microvisor" to virtualize the OS.

This would give users choice between the "Vanilla" official version from Google or the "value-added" carrier version or even custom versions like CyanogenMod that might fit their needs better, and would also provide the tools for enterprises to securely partition "Bring your own" devices between personal and corporate data and applications.

Do we really have a "forking" problem, or does Google simply need to lay down the law with the OEMs and Carriers to reduce their "Value Add" crapware on Android devices? Talk Back and Let Me Know.

Topics: Android, Google


Jason Perlow, Sr. Technology Editor at ZDNet, is a technologist with over two decades of experience integrating large heterogeneous multi-vendor computing environments in Fortune 500 companies. Jason is currently a Partner Technology Strategist with Microsoft Corp. His expressed views do not necessarily represent those of his employer.

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.


Log in or register to join the discussion
  • If Google pulls it off, kudos

    But let's face it, should is a word that we live on in the computer industry. Nothing is absolute. Apps [i]should[/i] run without any modifications under 3.0. But that doesn't mean they all will, we don't live in a perfect world.

    As for the idea of Google laying down the law, they have to be careful. Android is open source and can be used by anyone else. There is nothing stopping them from doing so, and if you were going to do something like that all you need to do is start an app store of your own and charge 20% instead of 30%. Then all the developers would upload their apps to your apps store as well. It's not like they would have to code anything different and they'd get a bigger cut.

    And what could Google do really? They would continue to release the "pure" experience so the OEMs and carriers would continue to do whatever they please with it. There are definite advantages to closed source and because of it Apple and Microsoft get to "lay down the law". Google is in a tough position.
    • RE: Android 3.0: Hell Yes It's a Fork. But Who Cares?

      @LiquidLearner [i]As for the idea of Google laying down the law, they have to be careful. Android is open source and can be used by anyone else.[/i]

      Which is why in the article I referred to "certification", Only certified, licensed devices have access to the App Store.

      This obviously wouldn't cover the myriad of Tier 2, Tier 3 vendor devices from China and Taiwan, but certainly you would expect almost anything sold by a carrier or in big box retail by a Tier 1 vendor (Motorola/LG/Samsung/HTC/Acer/Toshiba/Dell) to be certified by Google.
      • Perhaps


        I actually think the Tier 1 vendors pose a bigger threat. They have the resources to build custom app stores or, worse, form an alliance of Tier 1 vendors with a combined app store, that charges less than Google, and developers will upload their apps there all the same. And there is absolutely nothing anyone could do about it.

        I don't agree with it and I really wish Google had the ability to put the smack down on bloat. They may have some pull with the Google apps but as Bing continues to improve it will become a better and better alternative. I use both on my Droid 2 although for now I just use Bing to verify the accuracy of Google Maps (bad experiences) and to to find local nightlife when I'm out of town. But I certainly see the potential for real competition from the app.

        I hope it doesn't come to that and Google has some way to put a stop to it. I really like my Droid 2 but I should be able to run stock 2.2 without any additional BS if I want to.
      • What does Google have to gain by attempted strong-arming?


        The ability for phone manufacturers and carriers to pile on their stack of crapware is what makes Android so appealing. Driving handsets away from the Android Market will only serve to fragment Android more than it already is.

        How long do you think it would take Verizon or Amazon to make their own app store? Oh, wait, they already did.

        In short, Google has no leverage to make any of the changes you propose stick. In fact it will just piss of their partners, and make a worse experience for customers ultimately. None of your stated priorities are in Google's best interests.
      • RE: Android 3.0: Hell Yes It's a Fork. But Who Cares?

        @jperlow Really? Really, are we going to go there? This sounds like the first step to ban rooted devices.

        I'll just cut to the quick. I disagree.
  • Still not a fork.

    This isn't what classically meant by the use of the word "Fork". With a "Fork" the product splits with both products going forward. This isn't that. Here the old version of Android is being replaced with the new one.

    I blame Google's marketing people for the confusion. They say: "Android 3.0 is the first version designed from the ground up for tablets".

    This is simply wrong. What they mean is: "This is the first version of Android designed to be deployed on BOTH smartphones and tablets".

    This "ground up" stuff is mumbo-jumbo, probably so as to not upset OEMs who deployed previous versions on tablets (which, let's face it is a bad idea).

    Why they don't mention smartphones is more baffling, I think they were trying to make it simple and pithy.

    So what we're left with is "Android 3.0 is a major version upgrade" and the major feature is support for physically larger displays (as opposed to just higher resolutions - this is like what Apple do, the pixel resolution of an iPad isn't much different to an iPhone 4, but the UIs are VERY different, this is the Android version of that).

    Development of 2.x stops and Android becomes 3.0 - probably soon smartphones will start getting 3.0 (there might be a little cross over as Apple did when doing the iPad...)
    • Except that you're wrong.

      Android 3.0 is coming for tablets. Whether or not there is an eventual 3.0 for phones is irrelevant. The next OS upgrade for Phones is not 3.0. The next upgrade for phones is 2.4, also known as Ice Cream Sandwich.

      But thanks for playing.
      Michael Alan Goff
      • It's going to start reminding me of graphics cards


        Android OS 280GTX Turbo Edition, designed for super-awesome tablets.
        Android OS 270GTS, designed for mainstream tablets
        Android OS 260GT, designed for high end smartphones
        Android OS F250, designed for feature phones

        Not that it would be a terrible thing... Just that naming is going to get confusing as hell.
      • I didn't say there was anything wrong with it

        I actually think this is a good idea. Imagine if they didn't try to stuff a phone OS on a tablet (iOS) and was able to make an experience that made tablets even better. That is what I imagine 3.0 will be.

        It's kind of a good thing that they fork, it will mean that they're serious about giving people the best tablet experience instead of an "also done" thing.
        Michael Alan Goff
      • RE: Android 3.0: Hell Yes It's a Fork. But Who Cares?

        @goff256 The point is they will merge (like Apple did). If what do they call versions beyond 2.9? (okay, I know 2.10 or 2.9.1 - but really?)

        The naming strategy shows the direction.

        Not least because if this is a true "fork" then it's a disaster... So it isn't.
      • How is it a disaster if it's a fork?

        And how does each of them having a 3.0 mean they're going to unite? If you have 2 different 3.0 products, they're still not the same product.

        Unless you know something nobody else does.
        Michael Alan Goff
      • RE: Android 3.0: Hell Yes It's a Fork. But Who Cares?

        @goff256 Right so we have Android 2.x and Android 3.x ... and you don't think it's likely they will unite?

        What happens at 2.9 (not that I think it'll get that far...)?

        If Google didn't want to have "Android" as a single product (if it even is a "product") you think they wouldn't have come up with a different name? I think you're being deliberately obtuse.
      • One More 2.x Release Doesn't Make This a Fork

        @goff256 <br>The announcement for Android 3.0 specifically says that it "maintains compatibility with ... other form factors." In other words, even though it is the first version of Android to be developed with tablets in mind, it will still work with phones/handhelds.<br><br>If Google releases another 2.x version, that doesn't make 3.x a fork. One last 2.x revision for companies that aren't ready to make the switch does not mean that 3.0 is not suitable for phones. This doesn't make Android 3.0 a fork any more than the existence of Windows NT Service Pack 6 made Windows 2000 a fork of NT.
      • RE: Android 3.0: Hell Yes It's a Fork. But Who Cares?

        @goff256 Mathias Duarte, the lead designer of Honeycomb said that Android 3 will be available for all Android devices across all platforms. Regardless if it's a phone, tablet, or car interface. He said that at CES when interviewed by Engadget!!!

        Honeycomb will be much more customizable in terms of what physical platforms it will run on. For example, you can have physical buttons or not like was demoed on the Xoom tablet, or like you might have in a car dash.
  • Hello

    >>I?d liken this situation to the average PC consumer who cannot buy PCs with ?Pure? Microsoft Windows on it. Instead, they get systems with ?crapware? and other OEM garbage and utilities that may bog down performance and cause application issues.<<

    The statement is not exactly a lie. You just bent the truth about 270 degrees. I bought my HP, its crapware and all. But not one piece of crapware could run unless I chose for it to do so. I simply deleted it.

    I realize this is a difficult concept for an iNutzoid to grasp, but it's a fact.
    • RE: Android 3.0: Hell Yes It's a Fork. But Who Cares?

      @sackbut I was with you until this gem: [b]I realize this is a difficult concept for an iNutzoid to grasp, but it's a fact.[/b]

      Civility is something that a troll like yourself has difficulty in grasping and it's a very simple concept... a wee bit over your head perhaps.
      • I just think it's funny


        He called Perlow an iAnything... I don't seem to remember JP being that big of an Apple fan. Virtualization and open source yes...
      • RE: Android 3.0: Hell Yes It's a Fork. But Who Cares?

        @athynz <br>Well said athynz. It's a sad fact of life that people like facebut can only feel good by attempting to make other people feel bad. In their mind, they think that they are being intellectual, but in reality they are sad little boys who spent most of their time in a toilet playing with themself. The fact that two people bothered to reply to his troll post will keep him masturbating for days.
      • RE: Android 3.0: Hell Yes It's a Fork. But Who Cares?

        @LiquidLearner<br><br>He chose to use the word "iNutzoid" which is (purposefully) derogatory towards everyone who uses or likes Apple devices.
      • ptorning, I would not say that was a definitive statement

        [i]"iNutzoid" which is (purposefully) derogatory towards [b]everyone[/b] who uses or likes Apple devices[/i]

        That is an assumption. There are many types of people that have varying degrees of attachment to items.

        Some are people that use Apple, others are people that feel Apple defines them as something other then what they are.

        There are many I personally know that own an iPhone while prefering a Windows7 PC, while others I have met own Macs.

        Then there are those that must own every Apple product, as with a Rolex watch, whether they use them or not, even if it is not the most finacialy smart choice at the time.
        Tim Cook