It's not the distro or even the Linux kernel that matter. It's the things made with Linux -- the servers, smartphones, netbooks, and other mobile devices.

Serdar Yegulalp, Contributor

August 6, 2009

11 Min Read

As the story goes, in the late eighties Bill Gates was asked about the competition Unix posed to Microsoft. He smiled and asked, "Which Unix?"

The same could be said of Linux today. Which Linux? Linux is now defined mostly by the fact that it isn't any one single thing -- no one distribution, software house, or entity has the last word on what Linux is going to be. To that end, the only "Linux" worth calling out by that name alone is the Linux kernel itself -- a kernel which is continually repackaged and distributed in a slew of different ways.

Accordingly, when we talk about the future of Linux, it's probably best to think of it as raw material to be shaped and molded, rather than as an end product. Whether it's being turned into a whole operating system distribution, an embedded system, or a single-purpose application (e.g., a software appliance), Linux is best thought of as a starting point rather than an endpoint.

What's important about looking at Linux in this light is how it shapes expectations. Most people who regularly use Linux in some form do so either at a distance (like on a server), or in disguise (on their phone or in an embedded device). I coined the tongue-in-cheek brand name "Invisible Linux" as a reference to this sort of thing: the best Linux will be the one you don't know is Linux, and won't care. It won't be Linux that's in our future, but things made from Linux.

Linux As A Windows Alternative

For a long time, the distribution was -- and to a high degree still is -- the main unit of consumption for Linux. Most people got their first hands-on experience with Linux via one of about a dozen or so popular distros. The packaging dictated the utility: Most distributions are designed to work as an end-user OS. Some (like Ubuntu, fast becoming synonymous with end-user Linux) are specifically designed to work as a substitute for Microsoft Windows on the desktop, going so far as to provide Windows-specific migration tools.

But the mere presence of an alternative -- even one available at no cost, even one where the transition from Windows has been heavily automated -- hasn't caused the kind of exodus from Windows that we've seen with the OS X-era Macintosh.

People do indeed abandon Windows and use Linux -- many with great success -- but not in great numbers. The exact usage statistics for end-user desktop Linux hover at around 1%; Linux's very protean nature makes it difficult to pin down how many installations are currently out there, or how they're deployed, or how long they remain in use.

What is clear, though, is that even after years of revision and word-of-mouth street-level campaigning (and word-of-mouth is still by far the most powerful way to draw attention to anything), "brand-name" Linux isn't being adopted by non-technical folks. A distribution is, indeed, something made from Linux -- but too much of what goes into existing distributions is beholden to Linux's past instead of its potential future (or futures, plural). The plethora of Linux distributions amounts to a double-edged sword. On the one hand, there are more choices than ever as far as what sort of Linux experience you want to have. On the other hand, those choices tend to amount to multiple repackagings of the same things.

Most of the differences between distributions amount to how certain hardware scenarios are managed, what's installed by default, and how updates and package management are handled. The underlying software -- especially the kernel and the userland applications -- remains highly similar across multiple distributions. And if those same userland applications are already in use elsewhere (i.e., in Windows builds), there's that much less friction of adoption... but there's also that much less impetus to change platforms in the first place.

The end result is that the masses of non-technical, non-IT-oriented end users are simply not defecting in droves from Windows to Linux -- they're defecting from one edition of Windows (XP, Vista) to another (Vista, 7), or from Windows to the Mac. The merits of open platforms are secondary to being able to continue doing what they've always done. Open data standards and open protocols are arguably far more important -- especially since they can be implemented most anywhere to the same net effect.

It's always possible to argue costs -- Linux costs nothing -- but the cost of Windows tends to be rolled into the purchase of a new PC, and consequently spread out over the lifetime of the machine itself. (Major end-user applications, like Office or the pro versions of Photoshop, have a much bigger wallet footprint.)

Linux And The Rise Of Web Apps

So what about the rise of Web apps, especially as a driver for potential Linux adoption? I have in the past made the argument that the software most people run these days is the Web itself (e.g., Facebook, Google, etc.), and after a while, people who have no particular platform loyalty will be fine accessing the Web from any platform or device. Two other things have become clear, though:

1) The Web as an application platform is incomplete at best, and there will always be a need for rich local client apps that aren't constrained by being run in a browser.

2) Ditching Windows or the Mac for Linux also means giving up not only much of the software that runs on those platforms, but also giving them up in their native implementations. Again, if OpenOffice, for instance, can run anywhere, why switch to Linux when chances are it's already available on your platform now? (The same goes for most any other open source application.)

There's also a third issue. Until it becomes easier in Linux-based environments for people to acquire and run binary-only software that's not included in a native software repository, getting people to move to and accept such an environment is going to be a tough sell. How To Deal With Third-Party Binaries

Another major issue that Linux must confront is how to deal with precompiled binaries provided by third parties -- which is by and large still the way most end-user software is provided and consumed.

Over time, the Linux kernel development team has hardened its stance about closed binaries in many forms -- mainly device drivers, since those are the sorts of closed binaries the kernel touches most directly. But on the whole, it's difficult to deploy a binary-only application on Linux unless the developer targets very specific revisions of the kernel.

The only major end-user application I can think of that has multiple Linux edition binaries supplied "in the wild" (i.e., as downloads apart from something in a repository) is the Opera browser. Back in 2000 or so, Corel attempted the same thing -- they offered WordPerfect and their graphics applications suites as binary-only products, along with their own Linux distribution to run them on -- but had too few takers to make the effort worthwhile.

Consequently, mainstream software makers rarely target Linux as a platform unless they're a) developing an open source product, b) writing for a platform-neutral implementation, c) restricting their focus to a particular kernel implementation, or d) using the Linux kernel in a total end-to-end programming effort where it's simply one piece of software among many others.

The end result is that Linux has become less of a developer or even programmer environment than a compilation environment -- a place for source code to be deployed rather than compiled code. A starting point, again, rather than an endpoint. The endpoint, as seen in products like Android, often has little to do with Linux as a distribution: It's a product unto itself with little connection to other things made from Linux, except in the sense you can probably compile the same software there.

In the eyes of Linux advocates, what's at stake here is not how Linux will support arbitrary binaries -- it's that whether or not any attempt to do so will "dumb down" the kernel and make it something it's not meant to be. Their vision of Linux as an ecosystem is predominated by the mechanics of open source software, where access to source code at every point is paramount. If someone else wants to take what they've done and serve it up in a binary-only sauce (as per the dictates of the GPL), then they're welcome to. And that may well be what happens as far as binaries are concerned. The Rise Of The Server (And The Service)

If there is one area where Linux is bound to remain relevant, competitive, and innovative, it's in the server arena. Here, Linux's ubiquity, malleability, and proven value all come to the fore. It's widely enough used that most usage scenarios are familiar territory for the deployers; it can be customized freely to suit wide ranges of needs; and it has shown itself to meet or exceed needs in the real world, time and again.

When Linux is used as a server, and as a platform for services, it embodies the premise that you're not using Linux per se, but using something made from it. Most people don't care that Google runs Linux; they care about Google's plethora of consumable services.

The open-source-advocacy crowd, however, does care. They don't want the best software development to be caged up in a form where it's not accessible to other developers. From that has come GPL version 3, which essentially requires that software developed under its terms to have its code released when it's used as a service. Linux itself is not released as a GPLv3 product, however -- which means the kernel and its attendant GPLv2-licensed items can continue to be repackaged as services.

Even apart from this, the repackaging of Linux as an end product distinct from Linux-in-the-abstract can take many forms. Consider SUSE's new SUSE Studio, or the wide range of existing software-plus-hardware appliances built on a Linux base. What the end user sees is not "Linux" but often other interfaces that are familiar: Web-based management consoles, for instance.

Going Mobile

Another area where Linux-as-raw-material is growing in relevance: mobile technologies, or in plain English, phones. The biggest, or at least most visible example so far is Android, Google's Linux-based phone OS. Also now in the running is Intel's Moblin. Both use Linux as raw material -- and the end results are quite unlike the Linux distributions most people are familiar with.

So far, the appeal of using Linux in these contexts has largely been in terms of lowering internal development costs, rather than attracting end users who specifically prefer one variety of phone over the other. Handset makers and carriers, rather than phone operating systems, tend to drive adoption. To that end, Android hasn't created a mass exodus away from the iPhone, or even the Blackberry -- at least, not yet. Android is still far newer than either of those, and Moblin even newer than that.

But the sheer malleability and aggressive ongoing development of Android makes it deeply appealing to device makers, both now and for quite some time to come -- especially when the possibilities of phones in many markets (such as the U.S.) are just now barely beginning to be unlocked. Relevance Is In The Hands Of Users, Not Creators

The final decisions about the relevance or future directions for any given technology aren't in the hands of pundits or journalists (me included), or even the people creating and marketing such things. It's the users -- the people who employ such things in the context of getting a job done.

What Linux's bend-it-shape-it ethos means to end users is that they'll come into contact with Linux in a great many forms in the years to come. It also means they're not going to be directly aware that any particular thing they are using may be Linux -- and in many cases, it won't matter one way or another as long as what they have works. The emphasis there will be on delivering a polished finished product, not banking on digital street cred.

Consequently, Linux may not be destined to replace Windows or the Mac unless it provides an experience that's self-evidently superior in every way. This doesn't mean it's impossible: Look at how Firefox gained a significant share of the browser market in a relatively short time.

But a whole OS is far tougher to get right compared to a single application (which runs on that OS, and elsewhere besides) -- especially when the OS in question is an inherently malleable entity. The OS is, in some sense, an application unto itself -- and an application that exists in so many different permutations that to talk about it as a platform might simply be beside the point.

And maybe that's where Linux's future is most relevant and important: in its success as a server OS, an embedded-device system, and as raw material to be sculpted to economically fit needs for which no system exists. As long as developers continue to have reasons to work on it, and others continue to need to deploy it, it will continue to be relevant.


For Further Reading

Free Operating Systems That Aren't Linux

Windows 7 Vs. Linux: OS Face-Off

Invisible Linux: The Details

InformationWeek's Open Source Blog

About the Author(s)

Serdar Yegulalp

Contributor

Follow Serdar Yegulalp and BYTE on Twitter and Google+:

Never Miss a Beat: Get a snapshot of the issues affecting the IT industry straight to your inbox.

You May Also Like


More Insights