Commentary: Why Apple's Unix approach is the right way

Unix makes a great server OS, and Apple has been expanding its open-source reach quite a bit, acquiring companies and putting the system into Mac OS X. Yet Apple is focused more on desktops--where Unix has very little presence--than servers. Stephan Somogyi explains why this is a smart move.

As we all know, Unix is a great server operating system. It's been around for a long time, so all its newness has worn off (this is good, since many IT managers seem to be easily alarmed by shiny new things).

It's compliant with all the important late '60s Computer Science buzzwords (protected memory, pre-emptive multitasking, and so on) that contemporary marketeers compress into "modern operating system." And there's loads of widely available server software source code to meet most needs.

The one thing that the sum of all Unix development efforts has not succeeded at, however, is staging a successful takeover of the individual desktop. Sure, there are infrequent examples of people deploying Unix (of whatever flavor) on the desktop, but those are exceptions that prove the rule. Despite lots of elbow grease being applied by the GNOME and KDE camps, Unix-on-the-desktop is nowhere near as much of a slam dunk as Unix-as-server.

Apple thinks differently, and is doing a credible job of proving it. Apple's acquisition of NeXT gave it a BSD-based Unix OS, which became the foundation for Mac OS X. With the March introduction of its next-generation operating system, Apple has taken on the formidable task of creating a Unix desktop OS usable not only by mere mortals, but even by average bears.

This tack is a novel inversion of the path of least resistance. Apple could've tried to compete in the workgroup server market--a place where it's had decent success in the past--and worked on the client version of the OS while the server variant established itself. Instead, realizing the desktop was more important, Apple is focusing its efforts there.

Today's Mac OS X 10.0.4 is still a long way from being a tried-and-true mature operating system. Make no mistake, folks, the simple act of adding "Unix" to an OS's buzzword list doesn't magically endow it with the reliability that can be achieved only via field testing. OS X's kernel, which includes its I/O infrastructure, is brand new, and in some cases an unfinished work in progress. While the forthcoming 10.1 looks like it's going to address many of the particularly glaring omissions and bad features of 10.0, it's going to be at least build 10.2 until Apple's new OS is considered ready for mission-critical work.

But that's ok. As long as successive major releases of the new OS continue to offer improved usability, and third-party developers--both Classic Mac developers and increasing numbers of previously Unix-based ones--have what they need to deliver the software that customers want, Apple is moving in the right direction.

When the time comes for OS X to be taken seriously as a server OS, all that open-source software will still be there, better than ever. By that time, the more industrious individuals in the community will already have made the necessary source modifications so that the packages compile without problems under OS X, and everyone will be happier for it.

The Unix nerd in me certainly wishes that the BSD underpinnings in OS X were more current--at present, they're based on the two-year-old FreeBSD 3.2--but that's a problem that Apple wants to fix. As a result of hiring Jordan Hubbard, one of the main FreeBSD developers, to manage its BSD engineering efforts, I expect good things to happen on that front.

But to the typical consumer, the Unix guts of an OS are less important than the user experience. And that's where Apple has traditionally been strongest. That said, there's still plenty of stuff that I don't like about Aqua; the bloat of all the user interface elements currently tops my gripe list. But if the demos of 10.1 are any indication, Apple's notorious not-invented-hereism is, at least to a limited degree, giving way to listening to the many squeaky wheels among its early OS X adopters and applying grease judiciously.

By focusing on the desktop first, Apple is solving a previously unsolved problem, and it's not hampering Mac OS X's suitability as a Unix server OS one tiny bit. This approach seems backward when viewed from a Unix vantage point, but is precisely the right thing to be doing.