Mobile Linux


A lot has been written about mobile and embedded device platforms lately (aka. ‘phone’ platforms). Usually articles are about the usual incumbent platforms: Android, IOS, and Windows Phone and the handful of alternatives from e.g. RIM and others. Most of the debate seems to revolve around the question whether IOS will crush Android, or the other way around. Kind of a boring debate that generally involves a lot of fan boys from either camp highlighting this or that feature, the beautiful design, and other stuff.

Recently this three way battle (or two way battle really, depending on your views regarding Windows Phone), has gotten a lot more interesting. However, my in view this ‘war’ was actually concluded nearly a decade ago before it even started and mobile linux won in a very unambiguous way. What is really interesting is how this is changing the market right now.

IOS and Windows Phone (and to a much lesser extent RIM’s latest effort at continuing to be a company) are anomalies in a market that is otherwise completely and utterly dominated by Linux already. Reason: it’s free and continually improves through being used and being worked on by those who use it. After 20 years of evolving this way, it’s pretty good and there are few commercial incentives left for any company to even try to compete with it. While these anomalies are interesting, they are in my view a temporary and minor distraction in a extremely large device market that is mostly Linux based today. There are actually very few companies left that ship something with a chip in it that don’t use Linux. Mostly these are either specialized embedded systems or left overs from last century’s IT bubble (i.e. Microsoft and Apple). While that is still a multi billion dollar market, the Linux market as a whole is much larger and growing rapidly.

No sane company would invest the billions necessary to compete with Linux without a credible strategy for recovering that investment. Companies that have historically done so will need a way to recover their investments in order to continue to invest billions in keeping their software up to date. I’m talking about Microsoft and Apple. In my view, the question is not if but when they will give up investing in their proprietary platforms. My guess is that might be as close as a few years for Microsoft (though they are stubborn) and due to better technical & architectural alignment with Linux, possibly a bit longer for Apple (i.e. they are well positioned to get quite a bit of mileage out of IOS still). I don’t see future where either platform is relevant beyond more than a decade or so though.

Recent additions to the market in the form of Jolla, Tizen, Ubuntu, and Mozilla are all 100% Linux. They merely differ in the window dressing, which is mostly open source as well, and the way they conduct themselves in the open source community where words like patents, openness, standards, etc. can make or break a company. Otherwise for all practical purposes, those platforms (and Android) are in fact just one platform: Linux. They run the same kernel with the same drivers, they use the same libraries, they use the same open source components, and depend on the same open source developers. There’s only one platform left and its called Linux.

Any barriers for application compatibility between the various Linux platforms are increasingly artificial: there’s no good technical reason for applications not to be portable between them. Indeed Android applications run fine anywhere Dalvik runs, which is pretty much anywhere people bother to compile it. This would include IOS and Windows Phone if the Apple and Microsoft chose to do so. Indeed it runs fine on all common Desktop platforms (as part of an IDE). Several of the new Linux platforms (and even some non Linux ones) run Android applications just fine out of the box (Jolla, Ubuntu, RIM’s QNX thingy, etc.).

This is the point that world plus dog seems to miss and also the reason why the ongoing power shifts in the industry are about to become a lot more interesting. The main driver is going to be the exponentially dropping cost of the hardware and software development necessary to deliver a decent user experience using Linux. It’s gotten to the point where a small startup can do this in a few months. Until about five years ago, this required very expensive high end hardware and significant investments in software development. A few companies tried and mostly failed by compromising on things like amount of memory and cpu. Nokia’s Maemo and Meego devices are a good example of a decent attempt crippled by unfortunate hardware choices and corporate infighting. While a lot of companies failed with Linux, they all contributed software R&D back to the community. Companies like Nokia, Motorola, and Samsung have repeatedly failed productizing Linux (before Android) but in doing so delivered enormous economic value in the form of open source contributions that have been critical to those that did succeed with a Linux strategy (like Google and Samsung).

When Android was introduced into the market  things changed very rapidly.  Built on these contributions, it moved the whole industry to where it is today. In the five years since then most proprietary phone operating systems have been relegated to the very low end of the market or have disappeared entirely. Nokia still seems to do OKish  there with their S40 platform but Symbian has long been killed off (years too late IMHO). Samsung seems to do similarly well in that market with their own proprietary platforms but uses Android for their more significant offerings.

These low end devices have a few things in common: they are cheap and they are designed to make you want to buy the more expensive offerings from the same vendors. The cameras are shit, the screens are tiny, the form factors are ugly, cheap, and plastic. They are weird compromises between being cheap, slightly more desirable than the competition, but not quite as desirable as the more expensive stuff, which is where these companies enjoy much nicer margins. Strategies employed by manufacturers to make these devices less attractive than they could be include not updating the software, thus artificially differentiating newer devices from older devices; excluding certain high end features; crippling the application ecosystem; and generally not supporting devices beyond the product life cycle on the market of typically 6 to 12 months. Hardware vendors treat software updates as an afterthought and drag their heals delivering them or preferably not at all if they can get away with it. The only reason people buy these devices at all is because there is nothing better that they can afford.

In short, this market is ripe for some major disruption. Enabled by Linux and powered by cheap hardware, it is inevitable that the current smart phone market as such will morph into a general purpose device market that covers everything from the very low end to the very high end. Anything with chips inside basically. These devices will mostly run the same software (i.e. Linux) and they will run it well. There are few good economical arguments for running anything else and even fewer for running it poorly.

Three things will be very different though:

  1. These devices will update over the air very often delivering both software fixes and improvements. Companies that fail to keep their software up to date will have a hard time competing against those that do.
  2. There will be tens of billions of them. People will have at least one and generally more than one just because they can and because it will be convenient and cheap.
  3. The key way to make money from these devices will be through added value in software and services. Any margins made on the actual hardware sales will pale in comparison to the profits made through the software and services ecosystem on top of the hardware. This is majorly disruptive for any company whose core value proposition is primarily hardware driven.

Over the air updates will enable software makers to ensure users have the latest software. Unlike hardware vendors who currently control the ecosystem, software makers have no interest whatsoever in ensuring people use outdated versions of what they make. Rather the opposite. Facebook wants you to use today’s version of the service, not what they had five years ago. Same for Google, same for Twitter. Etc.

Google did something interesting a few years ago. They basically told the mobile phone industry: you are shit at making software; from now on, we’ll do it for you since you are obviously never going to get your act together. Quite arrogant and pedantic but they were right. The result is an industry that has grudgingly rolled out Android because of a distinct lack of any similarly compelling or credible in house alternatives and because not doing so meant being slaughtered in the market. My former employer Nokia is an example of what happens to companies that fail to adapt. However, the likes of Samsung, HTC, and others still drag their heals when it comes to timely updates and also continue to cripple devices with their own attempts at making software. The main reason is that they want you to buy a new device from them as often as you can afford. This fragments the market from a software perspective and is highly annoying for both users and software makers who are confronted with inconsistent, half working. crapware that never gets updated, is difficult to use, and is difficult to test for.

Now another interesting thing is happening: software makers are taking over phone manufacturing. The whole business has gotten cheap enough that they can afford to do so and it suits their need to have users run their latest and greatest. There’s no good reason why you would let the likes of Samsung, HTC, LG, Huawei be in charge of the user experience. They’re just incompetent middlemen that are hopelessly inept at doing anything with software.

The most popular LG phone is the Nexus 4. Reason: Google commissioned it and controls the user experience and software rollout. The only problem for LG is that Google will continue to support the device long after LG stops making them. That serves Google’s interests but not necessarily LG’s.

There is no good reason why other software makers won’t be able to do something similar. Apple does this already but has built its fortune on the notion that its products are exclusive, expensive, and 100% Apple produced. Apple software serves to sell the hardware package. Generic, cheap, but high quality hardware and software components challenges this business model. Google is not a hardware company. They’re a search and advertising company. They’ll do hardware at a loss to support that business. Not the other way around.

Software vendors are going to cause cheap hardware to flood the markets to help them grow their user base to basically the entire population of this planet. Dipping hardware prices allow them to do this from a hardware perspective and mobile Linux provides everything they could possibly need from a software perspective.

Google is already doing it. Amazon is doing it. Facebook has been rumored to plan doing it. Mozilla is doing it. Ubuntu is doing it. Loads more will do it. In doing so, they will transform the mobile devices market.

The real story in the mobile market is that this is happening now.