X
Tech

Android 3.0 - It's not a fork

If you want to talk about forks, let's talk about LibreOffice and FreeBSD. Android 3.0? Not so much.
Written by Christopher Dawson, Contributor

Do you remember that scene in the Arnold Schwarzenegger movie, Kindergarten Cop, when the little hypochondriac boy suggests that Arnold's kid-induced headache might be a tumor? His response? "It's not a too-mah."

Steven J. Vaughan-Nichols made some great points about Android fragmentation in his post, "Google has forked Android." I've railed against it as well, noting that it was seriously hampering Android application development. That being said, Android 3.0 (or Honeycomb as it's more commonly called) is not a fork.

Nobody suggested that Ubuntu had forked when their Netbook Remix was introduced. Nor is Edubuntu a fork of Ubuntu. Nor is Ubuntu running their Unity interface a fork of previous versions of Ubuntu. Just as the underlying core of *buntu 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, Dvalik, 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.

While Adrian Kingsley-Hughes didn't ever say that Honeycomb wasn't a fork, he did bring forward some very salient points in his post, "Android forking?!?!?! DON'T PANIC!" He quotes Xavier Ducrohet, Android SDK (Software Development Kit) Tech Lead:

Android 3.0 brings a new UI designed for tablets and other larger screen devices, but it also is fully compatible with applications developed for earlier versions of the platform, or for smaller screen sizes. Existing applications can seamlessly participate in the new holographic UI theme without code changes, by adding a single attribute in their manifest files. The platform emulates the Menu key, which is replaced by the overflow menu in the Action Bar in the new UI. Developers wanting to take fuller advantage of larger screen sizes can also create dedicated layouts and assets for larger screens and add them to their existing applications.

LibreOffice is a fork of OpenOffice. The two groups are taking development in different directions and have ideological differences. However, the core of Android 2.x and the core of Android 3.x are the same. Advancements in battery life in 2.x are going to happen in 3.x. Advances in parallel processing necessitated by a rash of dual core ARM-based tablets will make their way into 2.x as more and more dual-core "superphones" emerge.

In fact, the problem of fragmentation between Android 2.x and Honeycomb is far less significant than the problem of fragmentation on Android's smartphone platforms. For phones, developers must decide whether to code for the latest and greatest (currently 2.3, used by very few people), the most common (2.2, lacking many of the enhancements in 2.3), or even the lowest common denominator of 1.5 or 1.6.

On the other hand, developers who want to create tablet apps are probably going to code for 3.0. Within 6 months, the vast majority of Android tablets won't be running 2.x. The UI enhancements in 3.0 also allow for them to simply code phone apps to 2.3 that will simply run on 3.0 (albeit without enhanced resolutions or optimized screen sizes).

As the forms and functions of Android devices continue to proliferate, this sort of fragmentation will drive developers to code for tablets, specifically, or phones, or TVs, or whatever. There will be specialization that Android supports quite handily. It isn't a perfect system, but ultimately the flexibility that the open source OS enables will win out over other platforms. A fork, however, implies that the Android running on tablets will not be the Android running on phones (or whatever other devices uses the OS). Until someone takes Android, makes it Humanoid, and begins to take the development and functionality (or even the licensing) in a different direction, Android will still be Android.

Editorial standards