For the last eight years, I have seen articles proclaiming that Linux is almost ready for the Desktop. In fact, on sites like Slashdot, comments along those lines tend to get modded as ‘Funny’. But the tide seems to be turning. AMD is reportedly backing an open-source project that is looking to port the Android operating system onto PCs powered by x86-based processors.
If this sort of initiative gains momentum, will it finally see Linux make it to the mainstream market for desktop computers? And if so, is it too late? Nowadays the tech-media would have us believe that everything is shifting into the cloud. The tablet and the mobile phone have become king. The desktop computer is dead. In this article, I want to look at some of these claims and see whether Linux has any hope as a mainstream desktop operating system.
Death of the PC?
With mobile computing dominating the technology media, it is very easy to start to feel that it has become the norm. In fact, some have been bold enough to claim that the PC is dead, and some are following Steve Jobs in his declaration of a ‘post PC era’. While it is true that the PC market is somewhat different to what it was some years back, I tend to hold a much more conservative view and fall more in line with Richard Keggans’ opinion posted on Technorati earlier this year. It is clear that the large majority of business is still done on PC workstations and the Microsoft Windows still holds around 86% of the global market share. Meanwhile, Macos X holds a clear 6% and Linux owns a meagre 1%. To put that into some perspective, iOS is used by around 4% of the global population and Android by another 1%. These figures come from NetMarketShare, so they are skewed in the sense that they are calculated based on end-user internet usage. Still, it is quite sobering to realise how small a portion of the market is actually mobile based. That means that there is still hope for Linux if it is going to make it onto the mainstream desktop.
Aside from the statistics mentioned above, it is true that mobile platform usage is growing at an unprecedented rate. It is also true that all of those mobile users probably also use other devices to access the internet, so the proportions in those statistics are further skewed. The hope for Android in all of this, is that if people have familiarized themselves with the platform running on their mobile phone or tablet computer, they will be far more amenable to using the same platform on their workstation computer. Its not the vision that so many Linux advocates have hoped for, but its a good start.
Specialisation and the Cloud
One thing that mobile phones and tablets are teaching us, is that people don’t care as much about the platfrom when it comes to these sorts of devices. That’s largely because they are bought as commodities to perform pretty specific functions. Admittedly, expectations are growing and the list of functions that a phone needs to be capable of supporting seems to get longer by the day. However, I don’t expect to use my phone as a full-scale gaming console. I certainly don’t expect to use it to write lengthy articles for Memeburn. If it doesn’t run most of the applications that I need to do my work on a daily basis, I don’t see it as a flaw in the phone’s operating system. In the end, I believe that we are platform agnostic when it comes to phones because we know that they are not ideally suited to many of the functions that we expect to be able to perform on other devices, such as the PC.
So, when it comes to non-mobile devices we are a bit more picky about platforms. There are two core reasons that those statistics I mentioned earlier are so heavily biased toward Windows platforms. The first is because Windows is used ubiquitously within the large majority of workplace environments. That’s because applications that are commonly used within the workplace are frequently designed to run on Windows platforms. A great example of this is Microsoft Outlook and Microsoft Exchange. Since Outlook is really the only mail client that can take full advantage of all of the features offered by Exchange, it is the most sensible client to use within these environments. While there is an Outlook client for MacosX and OpenChange has produced a library to use inside of Linux, neither option really competes with running Outlook natively on its home platform. Indeed, there are a host of other business applications that are native only to Windows that make the use of an alternate platform almost impossible. The other huge factor, for the dominance of Windows within the marketplace, is the games market. With dedicated Games Consoles becoming more of the norm, this card is likely to be playing out its last rounds. Nonetheless, it is clear that the many users who still game on their PCs are held captive to the Windows market.
It is this specialization that makes platform adoption so strong within the realm of the PC. But technology pundits are telling a different story today. Data is rapidly moving out into ‘the cloud’ and our business applications are increasingly web-based. Cloud based computing is all about escaping the bounds of your local computing platform, so that you are able to perform all of your computing activities on any device, wherever you are. If this is the case, it strongly suggests that businesses will have a powerful cost incentive to switch to using Linux workstations within the enterprise. With the exception of many 3D games, home users will also find that using Linux on their PCs will reduce cost of ownership and will help to minimize many security issues. But if all of our data is sitting out in the cloud and all of our applications are running out of a web browser, does it even matter if we are using Linux or Windows, or should we now be worrying about what web browser we should be using?
The truth of the matter is that there are many limitations when it comes to cloud computing. Firstly, with all of that ‘ease of access’ comes a range of security implications. Then you have migration costs. If you’re a business and you have working software, you’re not likely to migrate unless there are real business pressures that are forcing you to do so. And then, just as with other platforms, the applications that you tend to use, just might not have made it out into the cloud yet. These factor slow down adoption, and while straight technologists and the media are really excited about the prospects of cloud computing, realistically most businesses are still at least a decade away from having all of their applications out in the cloud. That leaves one last hope for Linux adoption. Virtualisation.
Many years back, when I wanted to run Windows applications, I had one of two choices. The first option was to run in a dual-boot environment and restart my computer whenever I wanted to access anything in Windows. That was a nightmare. Often I only wanted to do something for five minutes in Windows, and then carry on working in Linux. Option 2 was far friendlier. Wine, ironically named so because ‘Wine is not an emulator’, is an emulated Windows environment that allows you to run many Windows applications under Linux. It works pretty well, but it has its fair share of bugs and certainly there is a long list of software which just won’t run under Wine. In the last few years though, PC computing power has reached a level where the average home computer can run multiple virtual operating systems at once. There are a number of ways to run an Operating System image within a virtual machine under Linux, but VirtualBox is probably one of the most user-friendly.
By running a Virtual Machine on your PC, it is easy to take advantage of the best of both worlds. You can choose the platform that you feel most comfortable running and then load a virtual machine to access the applications that are platform specific. This provides the enterprise with the chance to allow end users to switch platform while still maintaining existing software and services. For businesses, virtualization helps to reduce costs and ease maintenance significantly, and as a result it is something that many businesses already make use of in some form or another for their server infrastructure. But it is high time to start exploring virtualization for the common workstation.
As a long-time Linux user, I would say that Linux has been ready for the desktop for years now. But, if Linux has any hope of mainstream desktop adoption, projects like the Android x86 will help to drive this. The fact that many users are already familiar with the Android interface makes it easier to adopt. Of course, for Android to gain any respect in the enterprise workplace, it needs to improve its reputation with regard to security. While Android isn’t your usual idea of a Linux distribution, its Linux core offers many of the benefits that Linux advocates believe in. The fact that devices are slowly converging, means that having a common platform to work with across your devices is very appealing to end users.
As applications and data move out into the cloud, it is clear that your workstation platform will become less and less relevant. But we have a long way to go before we get anywhere near there. Linux can, and does, offer many opportunities along the way. Lower costs and generally good security are appealing to businesses and home users alike. For any Linux distribution (including Android) to make it onto the mainstream desktop, those virtualization tools will need to become a lot more seamless. That’s not far away. I was particularly impressed by Ulteo OVD, which allows you to access both Windows and Linux applications from a single virtual desktop. This flexibility to run different applications on a common desktop served by different underlying operating systems is a powerful concept. You can run Linux quite happily, while using virtual machines to handle all of your application platform requirements.
When Linux finally makes it to the Desktop, it will not be anything near to what any of us ever meant.