From OSX to Linux
My iBook went kaputBook this week which prompted me to take a new look at Linux after using OSX for two years. After all I had some old PC hardware around, but didn't have any extra macs.
I've had mixed feelings on OSX while I was using it. I didn't give it much thought until I was reading Linus Torvald's autobiography a few weeks ago. BTW: great book! There was a whole chapter on Jobs, Apple and OSX. Believe it or not, Linus was offered a job at Apple by Jobs himself. (Cut the head of the snake?) Linux spoke about 'paying for a downgrade' with Apple's half closed and half open OS.
After the idea was floated in my mind I began to wonder if that's just what I had done. OSX is based on the Mach kernel and BSD like open source layer called Darwin along with the GNU tools like gcc and bash. On top there is a totally closed source desktop and GUI toolkit-- in fact there are two incompatible toolkits, Carbon and Cocoa.
Here's the kicker. While the closed UI layer is very nice, It's actually the open source guts that started bothering me. It's just not a great Unix.
Frustrations include the bizarre and totally substandard swap file. Darwin will start with a small file and actually create additional swap files as it needs. This process is painfully slow, often grinding the drive for a good ten seconds as it tries to add or delete a huge file. In other words-- it's junk. While it's open in the sense that you could take a few years off and try to rewrite it-- there's nothing practical you can do.
Another headache was finding and installing Unix software for it. While some of the most common stuff like MySQL and Samba is either pre-installed or works out of the box, if you go for something even slightly out of the mainstream like Postgres your in for headaches.
The XServer is just a hacked version of XFree and there's no port of Gnome or KDE for it.
The final straw for me was when I heard that the new release of OSX will be late because programmers were pulled from the OS group so that they could work on the iPhone. This was pretty strange to me and it suggests that no one even is working on OSX while people are clearly busy working on Linux.
Linux now has tons of high end features like a logical volume manager (LVM) and RAID. While the GUI definitely isn't as nice as the Macs it is much cheaper to set up dual or triple displays. The first Mac that has a PCI slot is $2000.
So long story short, while OSX makes a great desktop machine, it makes a middling Unix workstation. The truth is that the Unix layer is mostly there just to power the UI layer and not a lot of work was put into making it useful by itself. If the Mac is what you need than it's a quality product. But if you are like me and thought you would kill two birds with one stone and get your desktop and Unix all in one nice package you'll likely be disappointed.
What is more practical is to actually buy a Linux workstation and use an entry level mac to log into to do word processing, write games etc. An imperfect solution for two imperfect operating systems. Alternately you may travel into the future twenty years when Linux is going to make all closed operating systems obsolete.