Last week's Windows & .NET Magazine UPDATE editorial about Linux garnered predictable feedback from Linux fans, and many readers misunderstood what I was trying to communicate. Part of the problem is weaning people away from long-held beliefs about Linux that often aren't based in experience and real-world use but rather on anecdotal evidence that's been forwarded around the Web like modern myth. And part of the problem is that I have a limited space here in which to express my thoughts, and I can't always adequately describe my stance in the allotted space.
I wanted to get the point across that Linux has some problems, and they aren't necessarily obvious. Some respondents questioned my experience with Linux and noted that because I write for Windows & .NET Magazine, I'm obviously biased to the Microsoft point of view, which isn't true. I first installed Linux 7 1/2 years ago (using a Slackware distribution that required multiple sets of 3.5" disks), and I’ve maintained a dedicated Linux server in my home office for years. I'm amazed at how much the environment has matured over the years--especially the desktop-oriented ease-of-use features--but the reality is that Linux still isn't as mature as Windows. Taking that idea with my comments last week about Linux bringing forward the "cruft" of UNIX, we have a "worst of both worlds" scenario: Linux looks and acts like UNIX but isn't as mature, stable, or scalable. Also, compared with Windows, Linux is harder to use, administer, and troubleshoot.
When people discuss Linux, they often focus on the same few areas. One obvious area is cost, which is often misunderstood to mean only the software's up-front cost. Out of the box, Linux is usually free or nearly free, but the product's true cost includes much more than that. At the enterprise level, Linux, as a UNIX clone, is ultimately much more expensive to run than Windows because of its complexity and the lack of administrators experienced with the environment. Organizations incur these expenses through support costs or downtime.
Many people also split hairs in an attempt to bypass some of the more obvious complaints about Linux. For example, I hear again and again that "Linux is a kernel, not an OS, so it's not fair to make apples-and-oranges comparisons to Windows." Please. It's true that dozens of different Linux distributions exist, and each bundles applications and various services with the underlying Linux kernel. But obviously, when I--or most people--write about Linux, we're referring to the complete environment. Linux benefited in the early days from the disparate range of available distributions, but these different versions make the environment confusing and harder to support today (e.g., most Linux vulnerabilities affect most common Linux distributions).
Speaking of vulnerabilities, I specifically avoided concerns such as security and reliability last week. Historically, the Linux community has glided along, foisting unproven claims about Linux's superiority in these areas when compared with Windows. Recently, however, testing and real-world experiences are beginning to prove otherwise, and in time, I believe that Linux will be categorically proven to be less secure and less reliable than Windows.
I'm not saying that Linux is a complete wash. Looking over the competitive landscape, Linux offers some advantages over Windows in certain situations and is a better solution than commercial UNIX implementations and Apple Computer's Macintosh OS X in many other situations. For example, Linux stands out in the low-end Web serving market. But I reject any blanket statements about Linux superiority: The environment has only recently gained major backers such as IBM, and it will take years, if then, for the Linux community to match the processes, development standards, and research and development that Windows now enjoys.
So why do I bother writing about Linux, especially in Windows & .NET Magazine UPDATE? Am I trying to smear the competition and spread fear, uncertainty, and doubt (FUD)? No, not at all. I'm trying to offset the wild claims that come--unchallenged--from the other side. In reality, most enterprise environments are heterogeneous, and it's more important for administrators to consider cases in which using Linux makes more sense than using Windows than to worry about pseudo-religious matters. For example, as corporations retire legacy UNIX systems, your choices are threefold: You can upgrade to a newer, more expensive commercial UNIX version and related hardware (Sun Microsystems sells such solutions); you can migrate your applications to Linux, typically on Intel-based hardware, which has inexpensive up-front costs but higher long-term costs (because Linux is based on UNIX, simple application conversion is often possible); or you can migrate to Windows, which, depending on the applications and services you need, might be expensive and time-consuming at first but will probably pay off in the long run, thanks to Windows' scalability and total cost of ownership (TCO) benefits. Microsoft sells solutions such as Services for UNIX that make this transition a little easier.
Are any of these choices obvious? No, and naturally you'll base your decision on your own requirements. But that's why the whole Linux versus Windows debate is silly. Both environments offer unique benefits, especially for enterprises seeking to move away from expensive UNIX environments. Just pick the technology that meets your needs, now and in the future, and make sure to base your decision on facts, not conjecture.
Hey, I'm a Linux fan. In fact, 18 months ago, I confided to a friend that I expected to be using a Linux desktop full-time within 1 year. That switch never happened for a variety of reasons--one of them being that the Linux desktop-environment wars have somewhat stagnated Linux's desktop growth of late--but I still keep the faith. Watching the technology evolve so quickly is exciting, but that doesn't mean Linux is on par with Windows in many areas, at least not yet. But it's getting there, and I'll keep watching.