Saturday, June 21, 2014

Telirati Analysis #4 Ubuntu vs. CyanogenMod - The Battle for the Future of Popular Open Source Distributions

The productization of CyanogenMod

Cyanogen released a "one click" installer for their version of Android. You can find it in the Play store here:

This is the biggest Android news of the quarter, other than the release of Android 4.4. This is a big step toward productizing aftermarket ROMs for Android. There are hundreds of thousands of users of aftermarket "ROMs" - operating system builds - for Android devices, but this step will open a market of tens to hundreds of millions. Updating an old device, or switching away from OEM bloatware is now as simple as using an app.

Google has good reason to celebrate this development. This is how Google can keep users of old devices happy without taking on a big, messy job themselves. Google has a new, big competitive advantage.

This can only happen with an open system. Apple can't do this. Microsoft can't do this. It's one more reason Android can do things other operating systems can't, and why Android can access markets other OSs can't. 

But there is another side to the popularization of aftermarket Android ROMs: CyanogenMod and similar products are going to be instantly propelled into the first tier of open source OS distributions, and will have a profound effect on the future of open source software.

Open systems: security,  privacy and convenience

We want to get our work done as quickly and easily as possible, we want to keep our work and our personal communications secure, we want to be free from commercial and other intrusions, and we don't want to expend more effort than necessary to have this. For many of us the answer has been Ubuntu, especially if our work is software development.

Open systems are likely to play a larger role as critical deployments in governments and industry around the world grapple with whether they can trust closed commercial products.

The drive toward mobile devices

The dynamics of open source have played out gradually over several decades, and largely in the world of PCs, since PCs were the most congenial devices for the broad distribution and use of open source software.

Now Mark Shuttleworth and Canonical are driving Ubuntu toward relevance in the mobile device market. They have to, or Ubuntu is stuck on PCs and, perhaps, low-cost PC-like devices. The latest and most visible manifestation of this drive is the attempt at crowdfunding Ubuntu Edge, a handset product made to work with Ubuntu's phone variant.

Whether that was a wise move or not, the result would have been a pocketable device that could be used like a desktop computer when needed. That's very attractive. My work-on-the-go bag would become very light compared to lugging a Core i7 laptop running Ubuntu.

But most people don't need desktop functionality in their phone, and CyanogenMod is built for that great majority of mobile device users. Moreover most deployments that would use an open source distribution will rapidly become dominated by the use of mobile phones and apps running on mobile phones. This is where CyanogenMod will have a profound impact on open source software: It is likely that CyanogenMod or other aftermarket Android "ROM" will become the mainstream kind of open source software used in both critical deployments that require open source software and consumer use of open source software.

Can Android be enough for everything?

Traditional Linux distributions come with a wide variety of productivity software including mature desktop productivity suites, image editing, video, and music applications. In many cases, mobile apps lack maturity and features by comparison with these tools.

But it would be wrong to expect that desktop document creation will remain superior to what one can do on a tablet or other mobile device. It is likely that novel collaborative features will emerge on mobile devices simply because they are mobile and contextual, and because high volume and large demand will pull highly competitive products into the mobile market. The workplace itself is likely to shift away from people sitting in cubicles facing computer screens, toward enabling people to be moving around interacting with each other.

Before Linux distributions began making the transition to mobile, Linux based OSs, like other PC OSs, was open to any kind of development toolchain and any runtime environment for applications. Ubuntu carries this forward into mobile devices. You can develop Ubuntu touch applications with any tools you prefer. Some Linux-based mobile open OSs favor the Qt toolchain, and some rely on Web apps and a Web runtime to provide app sandboxing.

This is in sharp contrast to Android, which is very much a Java operating system, with a VM that processes Android-specific bytecode. The Android development toolchain that looks familiar to Java developers, but the base classes diverge from Java standard base classes. If you are writing an Android app you are writing for this environment and, with the exception of a few cross-platform toolchains that claim to provide Android compatibility, with the Android Java-based toolchain. While there are many open source apps for Android, the open source developer community hasn't yet focused on Android.

Obviously, commercial software can fill in for open software for many purposes, but Android needs more open source software to provide assurance of privacy and security.

The future of open source distributions

Is the future of open source personal and institutional mobile software going to come from the traditional providers of open source software, such as Ubuntu, as they go mobile, or will it come from Android-based open source distributions like CyanogenMod?

Open variants of Android are carried on the momentum of Googles' prompt-enough release of Android in the Android Open Source Project, by Google depending on aftermarket ROMs to fill in gaps Google themselves cannot fill, and by Google's need to simplify Android porting to mobile hardware so that OEMs can keep up with Android updates, especially security updates. Corporate deployments of Android may find aftermarket OS distributions more amenable to their mobile device management frameworks and regulatory compliance requirements. Big high-value problems, big volume, and pressing individual needs are addressed by Android-based open source distributions.

Other open solutions sprang from the need to modernize and embrace mobile, or the market would run away from the traditional PC-oriented open source OS. Privacy and security will probably have a positive effect on both PC-based and mobile open source distributions, but, so far, that effect has been slight. These OS market entrants and their OEM and carrier partners will have to build compelling ecosystems and features to drive growth.

You will have a choice:
  • Mobile versions of familiar open source OS distributions like Ubuntu Touch
  • Open versions of Android, and perhaps, other mobile platforms, like CyanogenMod
  • Open platforms like Mer-derived Sailfish with Android compatibility
  • Open platforms that depend on Web apps, like Firefox OS, and Tizen
Our prediction is that CyanogenMod and perhaps other similar Android-based products will bring fundamental change to the way open source software is used and perceived. Linux distributions that don't want to be left behind in what is likely to be a revolutionary change in their market will have to be nimble and offer unique advantages of their own. Open source application developers will have to grapple with Android's Java-based runtime as a new market for open source applications software. Customers who may not now be aware they are part of a revolution in open source software will come to shape that market with their requirements.