Apple OS X Leopard: A beautiful upgrade

Finally, a PC Unix that everyone can love. OS X Leopard is a triumph of customer-focused engineering Apple's announcement of the impending delivery of OS X Leopard (release 10.5 of Mac and Xserve operating systems) marks the public debut of an engineering achievement that dwarfs iPhone, iPod, Windows, and Linux. No other PC server vendor, with the notable exception of Sun Microsystems, invests so much time and m

Finally, a PC Unix that everyone can love. OS X Leopard is a triumph of customer-focused engineering

Apple's announcement of the impending delivery of OS X Leopard (release 10.5 of Mac and Xserve operating systems) marks the public debut of an engineering achievement that dwarfs iPhone, iPod, Windows, and Linux. No other PC server vendor, with the notable exception of Sun Microsystems, invests so much time and manpower in its system software.

Apple, OS X, Leopard
Apple's announcement of the impending delivery of OS X Leopard (release 10.5 of Mac and Xserve operating systems) marks the public debut of an engineering achievement that dwarfs iPhone , iPod, Windows, and Linux. No other PC server vendor, with the notable exception of Sun Microsystems, invests so much time and manpower in its system software.

In 10 days -- 10 excruciating days -- I and hundreds of Mac developers and VIP users can finally speak out about that which we have sworn to hold secret. Leopard is magnificent code architected from the user in, rather than from core technology out.

Windows and Linux are designed from the core out, which is to say that they are all about layered kernels, system calls, and APIs, with each layer's purpose being to abstract the layers below it. The layers grow thicker; when a layer gets unmanageably thick, a pretty new abstraction layer is created so that people don't have to deal with the ugly one. Programmers end up having endless entry points with identical purpose and having heated debates about which ones are best. But each way of doing the same thing involves varying dependencies, deprecations, and peculiarities.

Everyone plugs into OS X through the frameworks, and below that lies a stable, thin, simple, and well-documented system stack. It is not the frameworks' job to abstract lower levels of software. From a developer's point of view, the frameworks are OS X. When developers write to Apple's frameworks, they inherit cross-application integration and operational and interface consistency with no effort. For example, E-Mail, the Address Book, and QuickTime are smart, autonomous objects available to all Mac apps regardless of language and requiring no optional software. You look in the docs to find the object you need, you shoot a message at it (you can always count on framework objects being present and behaving as documented), and receive a response that you can use directly without marshaling. The whole system is about message passing among objects.

The system's hardware configuration and management are exposed as objects. If you want to know the battery's charge level or get a list of wireless networks within range, OS X has common frameworks to do it. Sometimes hacks are necessary, and when they are, they take the tidy form of superclasses of existing objects or new objects inserted into a chain of message responders. The whole thing is easy to grok, and the tools and docs are free.

Leopard is beautiful, not merely in appearance but in design, all the way down to its certified Unix core. My own core is Unix certified, and now that Apple has reworked OS X to jump the many hurdles required to bear the Unix trademark, I feel like I've returned from a lengthy self-imposed exile. Finally, there's a PC Unix that everyone can love.

I offer these raves as one who is intimately familiar with all popular microcomputer operating systems. Each OS, including prior versions of OS X, have left me wanting and looking ahead to future releases. I irritate the hell out of Apple's PR and product managers by interrupting their scripted briefings and meetings with questions that force them to say, "We're looking at that for the next release."

For example, when Apple showed the Spotlight integrated search facility at Tiger's (OS X 10.4) launch, I stole the glint from the eyes of Apple's beaming executives and asked, "What about searching across the network?" They said that they were looking at that for the next release, and they silently wondered why I showed up at a christening asking when that kid would get a job.

I remember standing in a room full of proud engineers, each of them three feet smarter than I am, telling them that a rack server without lights-out management, hardware RAID, and redundant power supplies can't accumulate enterprise cred. It seemed to Apple that OS X flat never fails to boot, which was a prerequisite for diagnosing and managing a hobbled Xserve. Apple has filled in all of those gaps, and it is constantly at that job.

I know it's difficult for people who don't use Macs to understand why an operating system gets us so worked up. The coming debut of Leopard may make you mindful of Vista, an OS that no one begged to get before it shipped and that very few rushed out to get after it shipped. Vista's penetration is largely incidental, a result of being preinstalled on new PCs. That is not how Leopard will score its wins. Apple's customers rush to upgrade, and not because some sticker on a box of software says "designed for Leopard."

Leopard is a legitimately big deal. It's underhyped compared to iPhone, and yet unlike iPhone, Leopard is a genuine triumph of customer-focused engineering. It's a pleasure and a relief to see that Apple remembers how to deliver open, affordable, standards-based products. There probably won't be lines around the block at Apple retail stores for people who can't wait to get their hands on Leopard. If they had been using Leopard as long as developers have, Apple wouldn't be able to stamp Leopard DVDs fast enough. Word will get out.