- AIR gets rich apps right
- AMD's ready to scale you up
- Apple's BlackBerry offensive
- Apple iPhone SDK upends mobile market
- PCs approach Mac simplicity, courtesy of AMD
- Microsoft opens up, just a little
- Vista SP1: Release to mob
- The mobile app gold rush
- Windows Server 2008: Redmond's new server OS hits paydirt
- Self-aware virtualization
October 17, 2007 | Comments: (0)
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 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.
Posted by Tom Yager on October 17, 2007 03:00 AM
RATE THIS ARTICLE:
-

- COMMENTS
I had an opportunity around 1990 to talk to someone from Next Computing, Steve Jobs old company, which was purchased by Apple if I remember correctly. It sounds like with Leopard, they have the object oriented system on top of Unix that they were working on all those years ago down to a fine art now. It simply takes talent and time, which Apple has and has invested. You have to admire and appreciate that.
And yes, I will be getting Leopard when it comes out.
Posted by: gostak at October 17, 2007 06:55 AMGreat article, and a positive point of view from a technical. I suppose, knowning how Windows is architected, and its inherient problems with memory, process and file system management, the only thing keeping me using it are the following (non of which are based on merit, only on non-replaceability)
- Media Center
- apple doesn't have an answer for this yet
>> It has a better solution than you think:
>> http://www.apple.com/imac/software/frontrow.html
- Games
- there just aren;t enough games on osx yet
>> There are tons of titles, but few that have PC or console counterparts
- Windows Mobile intgration
- os x doesn't have this builtin, missing doesn't quite cut it, and iphone doesn't have exchange activesync
>> Apple promises better sync for iPhone and iPod Touch.
>> It'll be interesting to see what Office '08 brings to the party
There you are - three things (only).
When Apple answers those (and they are well on the way) I will switch.
OH - and I'd like to be able to install OS X on a custom-built machine.
>> Do a fair price-out of components between Mac and any Mac competitor.
>> I build boxes, but not when I can get what I want already made to
>> standards that exceed my own. That's a Mac.
>> And as I've said, where you can't run OS X, run OpenSolaris.
Since you sound like a *nix person who's been in the Leopard beta, can you answer whether Leopard has made any changes on these two little nitpicks I hate working in the shell on cross-platform *nix software:
1) The "ps" command is BSD-style-only. Linux is popular, and I've pretty much gotten used to the idea that on virtually every modernish *nix platform I ever log into, "ps -ef" and such syntax is pretty consistent. Not so on Tiger. I have to remember every time to revert to constructs like "ps auxwww". This probably my top gripe on the commandline.
--Not to be trite, but aliases work well here. I have a slew that handle the SYSV/BSD gap. --Other options include ripping commands & utils out of OpenSolaris.
2) Case-insensitive filesystem by default. I feel like that was a huge mistake, given that the entire rest of the *nix market has standardized on case-sensitivity. I've heard you can change this at install time on Tiger, but I've also hear horror stories of app compatibility issues because apparently a lot of OSX devs have come to assume case insensitivity, and have hardcoded file and path names into their products with no regard to the correct case.
--Here, I think that an interim solution is to flag apps and children for
--unicase or mixed. It can't be "all or nothing," but if it must, it's to swing
--apps toward a case-sensitive world.
Wow did you really "stole the glint from the eyes of Apple's beaming executives"
Is this article about you or Leopard I can't tell.
Posted by: macfan at October 17, 2007 10:15 PMOS X has been Unix-like from the beginning so the tagline of "finally, PC Unix that everyone can love" is strange. Your analysis of OS architecture ("layers" vs. "frameworks") has no technical merit whatsoever. Finally, among large companies, Apple is very exclusive and opinionated companies, so calling their development process "customer-focused" as opposed to "brand-focused" or "philosophy-focused" is misguided.
Posted by: S L at October 17, 2007 11:43 PMThe only thing that I did not like about Leopard is the fact that it does not support a lot of older macs. I guess its time for me to upgrade.
Joe
info@steamteam.ca
Nice article. I want Leopard. It's on order.
Instead of customer-focussed engineering, do you mean end-user-focussed engineering?
Sometimes the end-user and the customer are the same person. But software produced for organisational purchasers (read customer, but not necessarily end-user) can look very different from that produced for the end-user (for instance, someone stumping up the cost for their own use). I'd characterise Word as customer-focussed, with Pages being end-user focussed.
I have direct experience of organisations in which organisational purchasers buy software that they think is appropriate for the end-user but which, in fact, is anything but.
Posted by: Jon Hall at October 18, 2007 02:25 AMI belive that leopards true value will be visible when developers will do stuff with leopard surely not possible with tiger or vista. I also think there is ti little focus on what security mindset leopard has that tiger do not. Leopard will change a lot just not at first glance. Im thinking, that's intentional. Keeping all the future strategys of leopard as base makes leopard something any analyst should tear apart but they don't seem to care much about anything other then time machine :) The thing that you say about how much apple invests in it's operating system is probably due to that it is the base of their whole strategy for the future. There are poeple and companie who do not see an operating system as something to bother with. Take phone manufacturers. It tokk like forever for them to realise the functionality is not in how many hardware buttons i can cram into the phone. It's in a balance of software and hardware. Some are still struggeling to wake up from the iphone knockout..
Posted by: Mac4ever at October 18, 2007 04:55 AMIt's refreshing to hear someone talking about the smooth running engine that ticks away under the highly polished bonnet of Apple's operating systems. Far too often I'm hearing bickering about Leopard vs Vista with people comparing what the GUI looks like but almost never hear anyone compare the stuff that really matters. I've been using Macs since the early 90's and when you look at the advances that Apple has made since the old Classic OS's it makes Windows look like something that just dragged itself out of the primordial ooze.
Posted by: Marc at October 18, 2007 06:22 AMThe only problem is that it is not free. Hopefully, Ubuntu will make its way to the top. :)
Posted by: Blog Oh Joe at October 18, 2007 06:31 AMReally good--and easily digestible--write up. I'm glad to see some attention being brought to the underlying factors that make Mac OS what it is. Too many people focus on the eye candy, which is nice and all, but the most important factors are: Does it help you get your work done? Does it make your life simpler, easier, and more successful?
The answer is yes, and you've done a very good job illustrating some of the design principals behind that.
Posted by: Alex at October 18, 2007 06:57 AMI don't understand why so many Mac users get all gushy about an OS release. It's like some weird cult.
Posted by: Streaker at October 18, 2007 08:25 AMWow. This article changed absolutely what I thought about Leopard. I used the first beta and I hated it (of course, it's a beta not intended for the end-user). I hope that the final version is as stable (apps rather than the OS itself) as it should be. Now I want to wait in line to get a grip on it.
Posted by: Alejandro Lobos Kunstmann at October 18, 2007 08:28 AMI cannot agree with you more, Tom. I've been using beta copies of Leopard and the new features of both the client and the server are astounding. Time Machine is absolutely revolutionary. I currently use Retrospect to backup my servers and clients and now I will just put out a bunch of Drobos with four 1 TB SATA drives, hanging off little Mac Minis and point the workstations' Time Machines at their workgroup Minis. HOURLY BACKUPS!!! This brings such a big smile to my face the top of my head is going to fall off.
Posted by: Ron Braithwaite at October 19, 2007 11:55 AMyou make me want to switch from my mix of windows and Linux. How does apple manage to keep such a tight hand on everything, and still inspire that kind of devotion. All mac fans tell me its simply because they are so wonderful.
Posted by: josh at October 19, 2007 02:36 PMPlaced a preorder for Leopard. Looking forward to the new OS with high anticipation! :)
Posted by: Neil Anderson at October 19, 2007 08:09 PMI'm not a Mac guy...But I might just have to check it out.
Posted by: David Mackey at October 20, 2007 12:54 AMI liked your article because like a Mac there was not a bunch of fatty useless material in it . Has anyone asked when we will allow software to morf with AI and let the machines, within boundries form there own code. What I am trying to say is If a program can talk within itself to do a function would that not in of itself speed things up. I would think that it would know its fastest path. Unless we put a bunch of stop signs in there to slow things down.
Posted by: Burt Bergida at October 20, 2007 01:27 AMApple zealots and uber-techies like you are the ones Apple should listen to least. You can't see the forest thru the trees. If Leopard doesn't have BootCamp out of beta and easier to operate than a gumball machine. This will just keep the current juggernaut going, but not add brand new users. What will add brand new users, is if Apple has created their own proprietary version of Parallels. No one wants to pay extra money for flimsy 3rd party software to operate windows within a window within OS X. Lastly, but certainly not leastly, the REAL holy grail for Apple getting REAL market share, is if they finally figure out how to make it so the computer can switch from native OS X to NATIVE Vista/XP on the fly in one second. At this point in technology, operating systems should be like channels on the TV, a quick flip to get the next one.
Yes, we all know Apple lovers think their OS is the best, and maybe it's true. But for 97% of the rest of the world, we are reluctant to invest $2,000 in a system that is a complete mystery to us, and which allows no chance to reverse ourselves. With a native bootcamp, switchable on demand, this could be achieved, and then people could try both operating systems for the extra price of XP or Vista, without very much downside.
but please, please tell me why I should be excited about Leopard? Because I have not seen one single review this year, that talks about anything exciting in this release, not for the 97% of the world using windows. Time machine? big deal, sounds complicated. search? That's what Google Desktop is for. yawn.
I would like to own an Apple, I'm still on the fence. give me a system with no downside, with 2 OSs that I can switch giving me REAL CHOICE, and I'll pay the extra money for it. But if Apple doesn't produce that, I'll be getting a Vista computer, because I won't want to learn a new OS, and I won't want to invest the money either.
And guess what Apple lovers, if Apple hadn't put iTunes on Windows, we wouldn't even be having this conversation right now, because you Apple zealots would still be stuck in a low market share quagmire. Lesson? When Apple embraces Windows, windows users will embrace Apple.
sincerely,
life long Windows user
Balanced review of this OS, warts and all:
http://www.news.com/8301-13579_3-9809571-37.html
Nice counterpoint to this, which it links to (accurately) as an "obsequious literary ode".
Posted by: Bobby at November 2, 2007 12:59 PM>>I don't understand why so many Mac users get all gushy about >>an OS release. It's like some weird cult.
You have to label as 'cultists' what you can't seem to understand (because of your close mindedness and because it makes you feel better.) We love Macs because we honestly feel they are great. We have ALL used Windows. You have NOT used Mac, or not enough to understand it. People don't love Windows. It must be because we Mac users are just weird though, not because we appreciate Mac for it's merits. Don't ever TRY the Mac because it would make YOU the weird one. And people like you would think you were weird (and would instantly discount your knowledge of computers. Meanwhile, Microsoft has forever only gotten by (on the tech front--the are masters of business tactics) by directly copying everything Apple does (and so does Dell on the hardware side) but they are 'normal' and not 'cult' people. Am I understanding you correctly here?
>>but please, please tell me why I should be excited about >>Leopard? Because I have not seen one single review this year, >>that talks about anything exciting in this release, not for the >>97% of the world using windows. Time machine? big deal, >>sounds complicated. search? That's what Google Desktop is >>for. yawn.
You should not be excited about Leopard because you don't have it. Only those of us that have it should be excited about it. You should not be afraid of it though. By your constant use of your reassuring (though totally inaccurate and overblown) 97% figure it seems you are trying to reassure yourself that, although you use a hideously inferior operating system that is years behind the competition (and losing ground fast) you like to reassure yourself that you are still in the majority. Whatever gets you though the day. Yawn.
Posted by: Brian Pickerill at November 2, 2007 07:44 PMp.s. Google desktop sucks compared to spotlight and you have to install it. Deal with that.
Posted by: Brian at November 2, 2007 07:47 PMMost of your article I really enjoyed. I love a good architecture and was sincerely excited about Leopard. It did sound a little fan-boy'ish, but I can understand how that can stem from excitement. However, after reading through numerous apple forum problems--and I mean numerous including a blue-screen of death (albeit 3rd party software-related in many cases, but in many others not related) and a blue-screen of pause)--and after reading a handful of articles (in reputable periodicals) listing high-risk security vulnerability holes, I wonder if you were a little too quick to sing Leopard's praises?
(Yeah, I know it's probably coming: let the mac defensive onslaught begin...)
There are two central issues with MS vs IX's. 1. you need
permission to put something on IX's which will run whereas
you can drop a DLL or a bat or any exe in the proper place
in MS and Voila you have a runnable (possibly virus laden)
object which runs automatically if you are smart. The IX
needs admin permission which needs to be granted. I know
the argument about attachments and downloadable files but
you sill have to take action to to make them runnable on
an IX machine. 2. The monolithic kernel on an IX machine
runs 'hardware protected' so if the kernel is solid nothing
can corrupt the basic OS on an IX machine. Although, MS
has made an attempt at this, the underlying design is message
based all the way down to the hardware in some cases. Great
for games but absolutely inadequate for security. The designer
of NT was a complete OO message man. His legacy will probably
always remain. We'll see. The monolithic kernel is also the
reason why performance will always side with IX's no matter
how hardware improves - there is just less to do at the bottom
of the OS where it really matters. The lines have blurred as MS
has tried to address security. The basic mentality of MS is to
do things for you automatically is increasingly annoying as their
decisions are not on balance hugely beneficial. The European
union stated it in their case succinctly. MS extends things to do
minor improvements which make those peices incompatible
enough to eliminate the use of standard software. Since MAC
is at a 3x run rate an is approaching 9-10% of the market, we
will finally have a real competitor. I have many macs both
servers and clients and have never installed Anti-Virus software.
On my MS machines I have never run it without slow and kludgy
virus software. Just an opinion of a 30 year developer with
kernel experience.
There are two central issues with MS vs IX's. 1. you need
permission to put something on IX's which will run whereas
you can drop a DLL or a bat or any exe in the proper place
in MS and Voila you have a runnable (possibly virus laden)
object which runs automatically if you are smart. The IX
needs admin permission which needs to be granted. I know
the argument about attachments and downloadable files but
you sill have to take action to to make them runnable on
an IX machine. 2. The monolithic kernel on an IX machine
runs 'hardware protected' so if the kernel is solid nothing
can corrupt the basic OS on an IX machine. Although, MS
has made an attempt at this, the underlying design is message
based all the way down to the hardware in some cases. Great
for games but absolutely inadequate for security. The designer
of NT was a complete OO message man. His legacy will probably
always remain. We'll see. The monolithic kernel is also the
reason why performance will always side with IX's no matter
how hardware improves - there is just less to do at the bottom
of the OS where it really matters. The lines have blurred as MS
has tried to address security. The basic mentality of MS is to
do things for you automatically is increasingly annoying as their
decisions are not on balance hugely beneficial. The European
union stated it in their case succinctly. MS extends things to do
minor improvements which make those peices incompatible
enough to eliminate the use of standard software. Since MAC
is at a 3x run rate an is approaching 9-10% of the market, we
will finally have a real competitor. I have many macs both
servers and clients and have never installed Anti-Virus software.
On my MS machines I have never run it without slow and kludgy
virus software. Just an opinion of a 30 year developer with
kernel experience.
TOP STORIES
Top 10 stories of the weekA new place to hide rootkits
Sun exec on OpenSolaris, Linux
AT&T: No free iPhone Wi-Fi info
MS to appeal E.U. fine
XP SP3 causes endless reboots
Vista as insecure as Win 2000
Google grilled on human rights
Java ubiquity an edge in RIA battle
The InfoWorld news quiz
ADDITIONAL RESOURCES

- Virtualization: A Step by Step Approach to Success
- Dialing up Agility with Business Transformation
- 5 Things You Need to Know About Storage Virtualization

- Virtual Test Lab Automation: Manage development infrastructure
- Improve Resource Utilization and Lower Operating Costs
- Protect Your Data with SSL





