Android is Not a Single OS
Long time ago I argued that Linux is not an OS the way many people think. Most people, when they say “Linux”, think of a singular operating system like Windows and Mac OS X when it in fact refers to a multitude of distributions each of which practically qualifies as its own OS. I argued that a better way to present “Linux” is as a brand representing a rather sizable family of operating systems with a common core: the Linux kernel. Back then I actually called it a “market of operating system components” out of which various Linux based operating systems are made.
In other words; Ubuntu should be thought of as a standalone Linux based Ubuntu OS, and not so much as Ubuntu “Linux”.
Android is in fact an example of what I meant. It was never branded as “Android Linux”, making it seem as a yet another variant of the same operating system. It was branded as its own standalone OS, which just happens to have the Linux kernel and a bunch of other open source components at its core.
As Android popularity grew, and it came shipping with a wide variety of mobile devices, we’ve hit the fragmentation problem that actually reminds of the old Linux situation. The culprit is in the fact that various device manufacturers tend to customize Android, putting their own layers on top of it (usually user interfaces), and often even making core modifications. In other words, manufacturers started creating “distributions” of Android reminiscent of the distributions of Linux.
When you see manufacturers talking about “porting” a new version of Android to their device you can see just how deep the division between stock Android and their own distribution of it goes. This apparently has a lot to do with the delays that users of such devices face when it comes to upgrade to the latest version of Android. For some devices, it’s apparently not a simple upgrade at all.
Such a situation brings me back to that old argument about Linux. If a particular manufacturer’s version of Android is this different from stock Android then it’s effectively a fork, a different operating system. In that case it seems like we would be better served to call it as such. Instead of talking about everyone running Android, implying it is the same thing on all these devices, it might be better to talk about Samsung Android running on Samsung devices, HTC Android running on HTC devices, and so on. This would make it clear to everyone involved that we aren’t talking about the same Android.
Of course, it might perhaps be ideal if Google somehow succeeded in standardizing Android across all devices so that we can indeed talk about a single operating system across multiple devices, but Google doesn’t seem to be doing so well on that front so far. As a recent TheVerge article mentioned, manufacturers are unlikely to stop customizing Android for their phones, so the problem of fragmentation seems likely to continue plaguing the Android ecosystem.
So long as this situation remains calling each manufacturer’s version of Android by its own fitting name could have significant benefits for both the customers and the Android ecosystem. When a customer sees that a device of interest is running “Android” they may all too easily assume this is the same Android Google ships and advertises, only to be frustrated when they realize they can’t upgrade to the latest Google’s version.
If instead they saw “Samsung Android” or “HTC Android” or “LG Android” on the box of their device their expectations would be adjusted, and they could make a more informed purchasing decision.
And therein lies perhaps the most important benefit. If would-be Android users knew up front if they were getting a forked Android instead of Google’s Android they might opt for devices with Google’s Android far more than they are now. This could put pressure on manufacturers to include Google’s own Android themselves, in response to market demand, helping the whole agenda of reducing Android fragmentation.
But even if it wouldn’t come to that, just being clearer and better informed is beneficial enough.