Adrian Kingsley-Hughes has written a piece on ZDNet titled “Being open source is killing Android” where he shared some interesting views on Android. In the article he identified fragmentation as Android’s biggest problem.
Chances are high that you said that the biggest problems facing Android are fragmentation (too many different versions and device form-factors), and the fact that users don’t get updates in a timely fashion.
Whether fragmentation is a problem or not depends on who you are talking to. Average users are not affected by this so-called fragmentation because Google has solved the problem by separating the operating system from applications and services.
Users can continue to get upgrades to Google Play Services and apps even if they are running an older version of Android. I am running the latest version of apps and games including Netflix, Plex, YouTube, HBO Now on my 2012 Nexus 7 and Samsung Galaxy devices. These old tablets are running the same version of apps as is my latest Pixel C and Nexus 6P.
That contrasts with iOS where older iPhones and iPads can’t get the latest version of apps, thus rendering such devices insecure and less usable.
Kingsley-Hughes asks what can be done to fix this and opines that turning Android into a proprietary product is a possible solution.
One possible exit for Google out of all this chaos would be to take control of Android itself and move the project from being an open source project and turn it into a proprietary project.
Here’s why I think this is a bad idea:
1. Open source is a development model
People tend to misunderstand open source. Open source is a software ‘development’ model; it’s not a software ‘delivery’ or ‘business’ model. How Google delivers Android to devices has literally nothing to do with how it develops it.
2. Open source excels at zero fragmentation
Chrome OS is an open source-based operating system, just like Android. But from the very beginning Google used a different mechanism to deliver updates to Chrome OS devices. It used a transitional image-based approach where there are two images of the operating system installed on the device: one version runs and the other sits in the background. When there is an update available it replaces the non active and older version of the OS. When a user reboots the device, it switches the OS to the latest version. As a result the device is always updated without user intervention.
Core OS, a Linux-based distribution targeted at servers, also uses the same model. Chrome browser is based on open source which remains updated as well.
Mozilla’s Firefox and Thunderbird also remain updated without user intervention. You can deliver seamless updates in open source software.
3. Proprietary software is not the answer
The belief that closed source somehow magically solves fragmentation is misplaced and unfounded. Windows is the most proprietary software you can find and it’s a fragmentation nightmare. Windows XP has over 10 percent market share, Windows 7, 49 percent, Windows 8: 2.45 percent, Windows 8.1: 8 percent and Windows 10 19 percent.
The worst part is that Windows XP still runs on 95 percent of ATMs around the world making all of those ATMs extremely insecure.
Internet Explorer also faces the same fate when it comes to fragmentation, despite being a proprietary technology.
Even Apple struggles with iOS and macOS updates despite the fact that they have absolute control over their software and hardware and both operating systems are proprietary.
Linux is not a mess?
Kingsley-Hughes compared Android with Linux and stated:
Android is a practical demonstration of the sort of mess that Linux would have become if it had enjoyed widespread popularity with hardware OEMs. Someone, somewhere has to be in charge, and put the interests of the platform over profit margins and market share.
I hate to break it to Kingsley-Hughes, but Linux does enjoy widespread popularity with hardware OEMs. Linux is a heavyweight in all areas except for desktop. Though things are changing as Chrome OS is eating Microsoft for breakfast, lunch and dinner.
Linux is so popular that now even Microsoft has developed a Linux-based operating system for networking on Azure. Let’s not forget that the share of Linux machines has increased from 25 percent to roughly 33 percent on Azure. So, Linux is spreading its wings even on Microsoft’s own turf.
Supercomputers of the world run on Linux, your routers, printers, Comcast X1, Tesla….everything runs on Linux.
In spite of this widespread use of Linux by different industries and contrary to what Kingsley-Hughes wrote, Linux is actually a mess. Thanks to it’s open source development model, the Linux kernel community continues to patch holes and makes a release every two months. You can still find systems running older and unsupported versions of Linux on them. In an interview Greg Kroah-Hartman, a leading Linux kernel developer told me that companies need to come up with mechanisms so that their systems remain updated. He praised Chrome OS and Core OS for their update mechanism.
Once again, open source has nothing to do with software updates. It’s a totally different problem.
What causes fragmentation?
The root of the problem is the desire of OEMs to differentiate themselves from the competitors by slapping their own custom skins and bloatware. Carriers preload a lot of apps to create an additional source of revenue.
What delays updates for such devices is that these OEMs and carriers have to test their own ‘bloatware’ against the latest version of Android. Since there is no monetary incentive for ‘upgrading’ the OS of the existing devices, they delay it. They make money by selling more devices, not by keeping them updated.
If there are monetary incentives, they will keep these devices updated all the time. So if Google wants to fix the fragmentation issue on Android it has to find a way to remove these players from the system updates process.
And that’s exactly what Google is going to do.
Google doesn’t have to make Android proprietary
While Google has already solved the problem of keeping the apps updated on old operating systems by totally bypassing OEMs and carriers, Google is now working on bringing a Chrome OS-like update mechanism to Android. With the upcoming release of Android, dubbed N, whenever a new version of Android is available it will be downloaded on the device, just like Chrome OS and when a user restarts the system it will switch to the new version without any muss or fuss.
As a fellow journalist I admire Kingsley-Hughes’s writing. This blog in particular seems to have been written to provoke reaction from the open source community. As someone who has been covering Linux and open source for more than a decade now, I felt compelled to address some of the points raised in that blog.
The bottom line is that open source is actually better suited at handling fragmentation than any proprietary technology in the world. Before you think about making Android closed source, just have a look at the mess that Windows and Internet Explorer fragmentation is.
Circling back to the point that open source is killing Android, the fact is: nothing is killing Android. On the contrary, Android is thriving and continues to eat iOS and Windows market share.
If any fellow open source users are reading this story, please weigh in with your opinion in the comment section below.