Apr 12, 2003

Why Run Linux on a Mac?

I don't understand why anyone would bother running Linux on a Mac. For $99 you can purchase Mac OS X and get real live tech support for problems that (probably won't) pop up. There's a lot of technical reasons you should run Mac OS instead of Linux.

Here are some of them.

  1. PowerPC hardware, PowerPC operating system

    Linux has its origins on IA32, Intel's 32-bit architecture. Every platform Linux has migrated to since then has been beset with porting problems — Linux runs 32% more efficiently on Intel than PowerPC. This is very telling as PowerPC is in general much faster per clock than Intel. Somewhere in the translation from PowerPC to IA32 something got lost.

    Mac OS is 100% native for PowerPC. The Mach kernel has been optimized for the G3, G4, and 970 since Apple began writing the operating system back in 1996. Why choose a hacked and kludged OS from another platform when you can have an environment tailor-made for the system you'll be running it on? Mac OS certainly isn't plagued by same driver problems Linux is (in)famous for.

  2. Control over the source code

    In Linux, the development model is highly irrational: anyone is allowed to submit patches, and one man (Linus Torvalds) sorts through gigabyte after gigabyte of amateurish code, attempting to integrate it into the kernel. Apple's model is much more modern and decisive: the code for the low levels of Mac OS is available for anyone to download and modify, while the more complex parts of the system (QuickTime and OpenGL) are kept closed-source so those that know better — the Apple programmers — are the only ones allowed to tinker.

    The results because of these differing development models are clear. Apple released a major update to the OS once a year, and releases about five minor updates to the OS, as well as several dozen security patches and driver updates, in the interim. Since March of 2001 we've gone from 10.0 to 10.2.5! Linux is still stuck at some sort of bizarre in-between 2.5 kernel patch and won't move on to 2.6 until well after Apple has released Mac OS 10.3.

    It's not hard to see the difference here is a bunch of kids playing with source code instead of doing their homework vs. highly qualified professionals pushing their skills to the limits. The Mac OS user benefits.

  3. Graphical user interfaces

    I don't even think I have to touch on this. While Linux offers several GUIs from GNOME, KDE, and Enlightenment, Apple offers only one. But here we have a case of quality vs. quantity. Apple controls the GUI for its operating system while anyone can hack and modify the various Linux GUIs as they please. This has led to a lack of desktop standards and a whole lot of bickering and flame wars over human interface guidelines. Most of the GUIs for Linux are simply poor knock-offs of the Windows 95 interface.

    Apple's Aqua and QuickTime graphical interfaces are faster, more elegant, and very consistent. A Mac user can sit down at any Mac and (assuming someone hasn't installed Linux) get right to work. With Linux, it's hit or miss as to whether the user will know what to do when he logs in! Getting work done is the most important aspect of a computer. After all, it is just a tool. Linux fails in this area miserably — you're forced to edit and tinker and kludge and hack to make things perfect. A Mac allowes you to just sit down and roll up your sleeves and get some work done. I don't have time to play at my job.

  4. Software!

    I've used Linux before and the headache of downloading drivers and libraries and making sure the versions all sync up are too mucvh to handle, especiallly considering one has to compile these applications. On a Mac, I mount a disk image and drag the .app file to /Applications, and I'm done. Hell, most software for Mac even installs it there for you.

To put this last point in perspective, let's look at a recent task I performed under both Linux 2.4 and Mac OS 10.2.

Sendmail and sshd were both cracked recently and needed updated. The guys who code these programs were on the ball and had patches ready and waiting just hours after the security holes were discovered. Both a Linux box and my dual 1.42GHz Mac system needed updated. Here's a breakdown of how this went on my Mac:

  1. Go to the Apple Menu's Software Update item.
  2. Check items to install.
  3. Hit the install button.
  4. Wait for Mac OS X to download, install, and optimize the updates.

Total time: Four minutes

Now here's how it went in Linux. I was severely unimpressed:

  1. Download the source code for sendmail and sshd.
  2. Check the readme file for library and driver version requirements.
  3. Download new library files.
  4. Compile new library files.
  5. Update older applications not compatible with new versions of library files.
  6. Compile source for sendmail and sshd.
  7. Email a mailing list about errors during compilation.
  8. Wait a few days for the correct response.
  9. Recompile new sendmail and sshd.
  10. Update Linux kernel with patches.
  11. Reboot Linux.

Total time: 200 minutes (over the course of 3 days)

I don't think I need to go on anymore — these examples are pretty common. Anyone willing to shell out the money for a Mac is smart enough to know you should run Mac OS X. I just don't get the mentality of the fringe who shells out several grand for an Apple system and runs an operating system on it that makes it harder to work with and cuts down productivity.

No comments:

Post a Comment