Wednesday 20 June 2007

Why GNU/Linux?

The buzz about Linux, BSD, Open Solaris, and other free versions of Unix seems to swell every month. In case you haven’t tried one of them yet, you might be wondering, “What is all the fuss about?” Truly, you see passion about these systems that is seldom shown to their competitors. Here’s a brief list of where the Unix system triumph:

1. Security. Of course, the number-one touted feature. To this day, there exists no major exploits in the wild for Unix systems - no viruses, trojans, or worms. Software security laboratories such as Symantec have found proof-of-concept attacks, but really you almost can’t get a Linux box “PWNED” unless you try really hard. This is because Unix systems have security built in from the ground up. The system embeds the concept of file permissions. User, group, and administrator (”root”) all have different permissions to read, write, or execute each individual file. This also applies to any program you’re using - for instance, a virus which you downloaded through your email couldn’t do worse than wreck your own home directory, because your email program doesn’t have permissions to write anywhere else.

2. Licensing. The free Unix systems belong to the general public under the GNU general public license or the equivalents on BSD and so on. This means you never have to worry about per-machine licensing, or having the system refuse to update because it thinks you’re a pirate. You also have other options to fix something instead of waiting for some corporation that already has your money. If you’re a programmer, you can dive in and fix it yourself; if you aren’t, somebody else who uses the same system *is* a programmer and fixed it themselves, then posted the patch free for everybody.

3. Maturity. It bears saying that the original Unix operating system was first created on a PDP 7 at AT&T Bell Labs - many years before computers were commonly found in the average household. Just about everything that can happen on a computer has already happened on a Unix first, and in fact free Unix systems today continue to be the first to develop new features and introduce new programs. The first web browser, for instance, ran on a Unix system. Today’s versions of Unix have such outstanding legacy support, you can literally take a program written 30 years ago and run it on a modern distro, with no problems.

4. Stability. This is the fabled “cathedral vs. bazaar” development idea in action. Even a huge corporation is unable to match its team of programmers against hundreds of voluntary developers around the world working when they want to. And so by the time a program gets out of alpha development, it is robust enough to run reliably in deployment. A Linux system may have programs running on it misbehave, but the system itself never crashes, ever.

5. Flexibility. Since a Unix system is developed by many hands for many purposes, it is easily put to use in many different ways. This answers a frequent question: “Why are there so many distros?” Because each of those are a prepackaged solution to address unique set of needs. There are Unix-based systems running on everything from mainframes to cell phones and everything in between. Software exists for everything from a web server to an office desktop.

Note that we’re missing the “free of cost” argument. This is to deliberately dispel a myth: While it is a nice bonus that most Unix systems are free of cost, the fact that it can be had for free does not contribute significantly to why users say they prefer it. The existence of commercial systems such as Red Hat, Novell, and Xandros also point to the fact that you can charge for Linux and people will still use it anyway.

Now, for the home or office user, there are some cases where Unix still isn’t a viable option.

  • Hardcore gamers. While many games are ported to Unix systems, the vast majority of commercial game titles are still made for a Microsoft system only. The market just isn’t swaying away from that direction yet.
  • The printing industry. The graphics-to-print technology has methods such as CMYK and Pantone color matching which are heavily patented, the patents are licensed only to Adobe, and Adobe isn’t porting Photoshop anywhere near a GNU system. That’s that.
  • Other proprietary software users. Many software titles still aren’t releasing for anything but a proprietary system. Some work-arounds exist, and several technology companies are starting to warm up to Unix systems, but the market isn’t swaying in the Unix direction that fast.

Note also that we’re leaving out a common misconception about the downside of Unix, which is hardware support. In fact, Unix systems support many times more hardware than proprietary systems - if you count all of the hardware that was sold before this year. Unix systems, not having a commercial motivation, do not drop legacy support for older hardware like their proprietary counterparts do.

No comments: