Distractions From Christmas

Oh no. I should be baking shortbread cookies for Christmas tomorrow. But I’ve had Linux on the mind the past few days and just read an article that exemplifies several issues related to the popular perception of Linux. I have to put off the shortbread for a bit, or I’ll end up somewhere else. Don’t worry, Kim, I’ll be getting all the cooking done I promised, and a little more.

GNU/Linux is an operating system that lets you interact with your computer’s hardware. Microsoft’s Windows is also an OS. So is Apple’s OSX. The article I will be taking as a reference is called OS shoot-out: Windows vs. Mac OS X vs. Linux published at InfoWorld.

You might infer from the title, which evokes images of people with guns trying to kill each other, discussions of OS superiority are generally heated. And also, since people are not actually firing guns at each other, you can see that the title is purposefully provocative, in the “best” ad/marketing tradition.

As expected, the content of the article is woefully short on facts, while being long on broad generalisations. This doesn’t bother me as long as the generalisations can be traced back to fact, and are not sloppy in what they lead the reader toward. I’m hoping to help cut through some of the prevailing marketing deception to give a clearer picture that is not biased.

First, it is important to know that Windows is made by a company named Microsoft. OS X is made by a company named Apple. GNU/Linux is not made by a company, but rather by hundreds (and I’m sure thousands) of companies and individuals around the world.

OS X is based upon Unix. Unix can (sloppily) be thought of as a very well-designed and academic way of doing things in your computer. GNU/Linux is also based upon Unix, and carries the “tradition” much further. Windows is not based upon Unix.

Apple and Microsoft’s primary goal is to make money. It has to be, by law. GNU/Linux’s primary goal is to do the best stuff, in the best way possible. As such, Apple and Microsoft care a great deal about the percentage of the OS market they dominate, while GNU/Linux has no care whatsoever about any market share. That’s not entirely true, though. Some GNU/Linux people see growing market share as an indication that what they have contributed is something as beautiful and wonderful as they imagined it was, while other GNU/Linux people will see their growing market share as being good progress in their effort to “free” people from the domination of purely corporate interests. The mindset is different. Apple and Microsoft development is driven by a strategy that wants to dominate the marketplace of users. GNU/Linux development is driven by a strategy that wants to create the best thing possible.

Everyone knows that Microsoft has a long history of doing bad and bully-ing things, while many people believe that Apple is an altruistic, cool and good company. The truthier thing is, Microsoft has been so bad and mean that their gigantic marketing department could not even alter the public’s perception entirely, to make them seem good. Apple focuses their marketing on the sexy and cool, while their bad behavior goes largely unnoticed. And from the fallout of these marketing wars, GNU/Linux gets stuck with an impression of freakish computer geniuses doing arcane stuff that is well beyond the reach of most users. Or rebels using piece-meal computer equipment fastened with duct tape who just hack.

Hello I'm Linux

Don’t believe the hype. The InfoWorld article suggests that Apple’s OS X may be “the best operating system available.” Yet, at the same time, they claim that the growing adoption of OS X within business is not because of IT department choices, but rather users who push the IT guys until get it. This suggests an entrenchment in Microsoft products within IT departments that Apple is working very hard to overcome. I’m happy seeing that, because Microsoft-based products have a tendency to grow considerably in cost, as you need to add functionality that other platforms like Apple’s and GNU/Linux, already have.

From the IT department’s standpoint, heterogeneous operating system environments are a problem. First, you must have people who know about each different platform. Second, there must be a way for those platforms to work together. This is where standards are important. Just like people, no matter what background you come from, if you can speak the same language, you can get stuff done. Microsoft has a long history of trying to take control of language then twisting certain words and phrases so that only people from the land of Microsoft can understand it. This influences people to wish they were from the land of Microsoft. Microsoft calls this subversion, enhancement. The GNU/Linux people call this Microsoft tactic, Embrace, Extend, and Extinguish. They seem to attempt this tactic with nearly anything created that they do not control. Fortunately, people’s creativity appears to outpace Microsoft’s capabilities to wage this tactic on every new development. Now, they must be more selective about their targets.

Standards are also important to enable the complexities of various computer hardware to function together, as a whole unit. Apple is very aware of this. It is why they choose, very selectively, which hardware goes into their Mac systems. It is also why you can only purchase OS X and run it on Apple-purchased computers. If you try making OS X run on hardware other than Apple-purchased hardware, you may well find yourself sued by Apple. Apple claims these draconian tactics are in the best interest of people, because it assures that OS X will always run beautifully, since you can only run it on Apple-purchased hardware. It’s certainly in the best interest of Apple. Microsoft doesn’t care what hardware on which you run Windows. Neither does GNU/Linux.

Now, suppose you need to do something that’s never been done before. In both OS X and Windows, you can, to a degree. But Microsoft and Apple only allow you access to the way your computer functions in limited ways. A Microsoft or Apple employee will have had to imagine already something similar to what you wish to accomplish, if even in abstract terms. You only can access your computer in ways they allow and control. In GNU/Linux, you have absolutely no restrictions, and you can see or change everything, if you choose to.

This is why strange, new things are often created using GNU/Linux. I was amazed on my tour of astronomical observatories that the use of GNU/Linux was so prevalent. The world’s fastest supercomputers, the Large Hadron Collider, little microwave communication towers or sensing stations – anything that might require very low level access to a computer hardware system – Linux is likely the best choice. Not always. But when it is not, Windows or OS X certainly is not. Unless you are designing your new computer hardware system specifically for Windows or OS X.

Which brings us to hardware drivers. Hardware drivers are pieces of programming that live, pretty much, between your OS’s “brain”, and a given piece of hardware that must communicate with that brain. Sometimes strange hardware can avoid the necessity of having a special driver, if that hardware follows standards. But if it does not follow standards, or cannot, then the people who made the hardware are generally the people who write the driver. Almost always they will write a Windows driver. Often they will write an OS X driver, now that Apple has gained more market share. Rarely will they write a GNU/Linux driver. Two very notable exceptions to this are the primary video card manufacturers, Nvidia and ATI. They have been creating GNU/Linux drivers for a long time.

As the InfoWorld article points out, hardware driver availability is a headache in Linux. There is some truth to this, but there are also benefits to this, as well as headaches. When a company produces a hardware product and does not write a Linux driver, it is usually only a matter of time before an employee of that company, or a Linux user somewhere in the world who likes that hardware, writes one themselves, and then gives it out to the rest of the world. Once this is done, Linux forever supports that hardware. Here is the benefit in that:

My workstation computer system has a few pieces of strange hardware. When I install Windows on it, I have to go hunting for the disks that came with that hardware, so that I can install the drivers, so my computer can boot with Windows. It sometimes takes me a long time to find those driver installation disks, and I have to hope that they are still good. However, with Linux, I don’t have to go find any disks, because Linux knows about the hardware. The drivers have become part of Linux. Apple faces the same problem as Microsoft in this, if you purchased any hardware that did not come from Apple, for your Apple computer system. It is far less effort, and fewer steps, for me to install, say, Ubuntu, than it is to install Windows. And I can’t install OS X, because my hardware was not purchased from Apple – and even if I did, the nice Mac guy might come chasing me with an ax.

But the key point is fundamentally a perceptual one. What is reality, and what is marketing? It’s not always easy to tell in a technically complex field. The InfoWorld article mentions virtualization software, where OS X users and Linux users can actually run programs written for Windows. However, they also say, “Because Linux distributions run on Windows-compatible hardware, it’s straightforward to use desktop virtualization software.” This makes it sound like GNU/Linux is trying to run on hardware meant for Windows, and mentions nothing else. Actually, Microsoft’s Windows runs only on Intel’s x86 hardware platform (and derivatives) while GNU/Linux runs on this, and many others — even Apple’s former hardware platform, before Apple, also, moved to this “Windows-compatible” hardware. GNU/Linux systems are not limited by hardware platforms the way Apple and Microsoft are.

For the end user, who normally purchases computers based upon the x86 platform, and yes, that includes Apple now, that flexibility is not so important. What is important is being able to use the computer, in ways that matter to you. Similarly important, to some, is “doing the right thing” by not supporting companies that seek to control what you can and cannot do.

I know, from an IT perspective, it is far less expensive and much easier to maintain a huge fleet of GNU/Linux systems. But as IT people, we are there for the end users. Most of them have no idea what using GNU/Linux can be like. Many now know what using OS X can be like, and they are asking for more. As always, the best place to look is individual experience because it reflects the diversity of need. The rhetoric of marketing wars, or “shoot-outs”, distract from reality.

Explore. Have an open mind. Educate yourselves. Learn to distinguish between marketing and reality. The best choice is not always the best choice. Nor is the worst, the worst. Openness, and open minds. Trust. Intent. Even purpose. Motives.

GNU/Linux does not mean that everything should be free, as in never make money. It means, what is out there, ought to be free, as in liberated, not hidden, and no hidden agendas, either. That distinction has taken a very long time to settle in, and probably will take a very long time more.

Think of it as a big, Merry Christmas gift, that will always be there, year ’round, waiting for you to open, under that big as the world tree. It’s a gift for people, as well as businesses. And for some reason, it’s a gift that makes a lot of people shoutin’ mad. Strange, isn’t it?

I’ve put the cookies off for far too long, saying more than I intended, and not nearly enough. Merry Christmas to those of you I won’t see or talk to. This isn’t a very holiday thing to write, I suppose. A bit of a digression, too, though not completely, from the material consciousness/spirit issue lately. But Merry Christmas anyway! I’ll never get all this cooking done now… damn distractions. Oh, Merry Christmas!