Review: Mac OS X Shines Vs. Windows Vista
Hidden behind all of this hoopla, however, is the fact that as much of an improvement Vista is over XP, its main competitor, Mac OS X, still stacks up really well -- and even tops Vista in several important areas.
There are nearly an infinite number of ways to compare complex beasts like operating systems. I'm going to skip low-level issues, like comparing driver architectures. Most people just don't care about things like who has the superior kernel. People care far more about the parts they see and work with, so that is what I'm going to deal with here.
Steady Evolution
While Vista is indeed a major update to Windows, there's a lot of it that is, quite frankly, just Microsoft making up for lost time. The last non-server release of Windows was in 2001 with Windows XP, with only a single major interim update in Service Pack 2. In the same time, Apple has been steadily releasing updates to Mac OS X on what was a yearly schedule, now around every 18 months.
This means that while Mac OS X has been steadily evolving through 10.0, 10.1, 10.2, 10.3, and 10.4, and is now working toward 10.5, Microsoft was waiting on what would become Vista. When it was obvious the original Longhorn OS wasn't going to happen, it took the Windows Server 2003 code base and used that for the basis of Vista. It also chopped quite a few features out of Vista, most notably the WinFS object-based data storage and management system, which had been promised in various forms since the first blurbs about Cairo in the early 1990s.
Microsoft had two serious issues. First, it had to make this update of Windows revolutionary enough that it came close to justifying the delay. Second, it had to come up with something that would stand up well with its main competitor in the desktop OS market, Mac OS X. Has it succeeded at both? I'd argue that the former's almost a nonissue: Vista will sell well, because the world won't have a choice. As far as the latter, well, probably, but you'd be hard-pressed to say Vista's better than Mac OS X.
In a nutshell, Vista vs. Mac OS X is Revolution vs. Evolution. It's about a massive, long-delayed upgrade that has to account for almost six years of progress by its competitors, versus a well-executed strategy of regular updates. While updating an operating system is never something that can be called easy, Apple's strategy has been the better one for keeping its OS on top of things, something Microsoft has admitted to in a roundabout way.
English Rules
For Mac OS X, it's the classic English butler. This OS is designed to make the times you have to interact with it as quick and efficient as possible. It expects that things will work correctly and therefore sees no reason to bother you with correct operation confirmations. If you plug in a mouse, there aren't going to be any messages to tell you "that mouse you plugged in is now working." It's assumed you'll know that because you'll be able to instantly use the mouse. Plug in a USB or FireWire hard drive and the disk showing up on your desktop is all the information you need to see that the drive has correctly mounted. It is normally only when things are not working right that you see messages from Mac OS X.
Windows is ... well, Windows is very eager to tell you what's going on. Constantly. Plug something in and you get a message. Unplug something and you get a message. If you're on a network that's having problems staying up, you'll get tons of messages telling you this. It's rather like dealing with an overexcited Boy Scout ... who has a lifetime supply of chocolate-covered espresso beans. This gets particularly bad when you factor in things like the user-level implementation of Microsoft's new security features.
To put it simply, you can work on a Mac for hours, days even, and only minimally need to directly use the OS. With Vista? The OS demands your attention, constantly.
Active Windows
The user interface (UI) of an operating system is the set of rules and procedures that define how you use an OS. Much has been made about the changes in Vista, with the new transparencies and effects, but is it better or just different? I'd have to say a little of both. Vista is definitely continuing the gradual convergence of the OS UI and the Internet Explorer UI.
You can see in the screenshot of the System Properties window an IE 7 window and a Computer window that, if you were to remove the tabs and the toolbar from the IE window, you'd be hard-pressed to tell the difference. This is not a bad thing. From an education perspective, the more consistent your UI is for things like window controls, the easier it is to learn how to use that UI. That's not to say that consistency should be a straightjacket, but that wherever possible, things should work the same.
(click image for larger view)
Vista
\
Windows Explorer, IE 7, and the System Control Panel windows seen by Vista users.
\
\
With that in mind, note that, even though the IE window is not front-most, the "back" button looks as though it's active. The non-IE windows are more consistent in appearance, but if you didn't know that the red "x" or close widget in the front-most window shows that it is the active window, it would be somewhat easy for a new user to get confused about which window is the one he or she is really working in.
Those with some experience in Vista will note correctly that I'm not running the full Aero interface with all the transparency effects. Two points on that: First, there are a lot of home computers out there that don't fully support Aero yet are able to run Vista. Second, in my usage, the window transparency, while nice, is not what I'd call an "instantly obvious" indication of window status.
You'll see in the screenshot of the same kind of window layering in Mac OS X that, even with the similarity of the brushed metal windows in both the Finder and Safari, it's more obvious which window is active. None of the Safari widgets show as active, while the Finder window, being active, has the "live" controls, and the window controls all have a unique color. It is far easier to tell at a glance which window is the "active" or front-most window, even if the positioning is not obvious.
(click image for larger view)
This consistency that has been a centerpiece of the Mac OS is something that, even with Vista, Microsoft still can't manage to pull off. Although there are many different UI styles available in Mac OS X, even within those different styles, there is a consistency that Windows just can't seem to hit.
Even with Microsoft applications, there's a feeling that, by and large, the only UI guidelines that Windows applications adhere to is "what we feel like." (I know Microsoft has a lot of UI guideline information, but since no one seems to follow any of it, I'm not sure what the point of it is.)
For example, in the screenshot showing a generic OS window, IE 7, Word 2007, and Outlook 2007, note that the Vista and IE 7 windows are fairly consistent, although with both having the "back" button enabled, the only obvious clue as to which one is currently active is the color of the window-close widget in the Vista window. However, the Word 2007 window has only a vague connection with the OS UI styles, and Outlook is an amalgamation of both Word's and Vista's UI styling. UI consistency is still a weakness in the Windows UI. Obviously, people can deal with it, but it's one of those "why make your customers work harder than they have to" kinds of things.
(click image for larger view)
For Change's Sake
This kind of "change for change's sake" is all over Vista. The window controls in Vista are smaller and flatter than in XP, and unlike XP, don't reach all the way to the top of the window anymore. Now, Mac OS X's window controls have never completely covered their part of the window title bar, but they've had the same basic appearance and behavior since 2001. So while a bigger target is always nicer, Apple has covered its bases nicely by not changing the control appearance with every OS release, something Microsoft can't claim.
Although it doesn't take long to get used to the new UI, why change such basic UI controls? I know it seems a minor thing, but if you have to go between XP and Vista, as might happen if your work and home computers have different OS versions, this is the kind of thing that just trips you up a dozen different ways. Mac OS X doesn't do that, and if I had to guess, I'd say because there's no reason for it.
Now, What Does This Do Again?
I've also been struck by, even with all the notifications I get in Vista, how annoying it is to find basic information. For example, in Windows XP you have a control panel called "Add or Remove Programs." While not elegant, it is clear. You know what that control panel's functionality is, no guessing. It adds and removes programs. The Vista version? "Programs and Features." Huh? What does that do? Well, you don't know from the name, other than it has something to do with well, programs and features. When you think about it, that rather covers the entire OS and everything you'd do on a computer. Yet "Add Hardware" is the same on both versions. In Windows XP, you set your display options using the "Display" control panel. That's nice and clear. Vista? It's buried in "Personalization." Because when I want to change my monitor resolution, that's exactly what pops into my head as an experienced Windows user: Personalization. Yet mouse settings, which look to have been rolled into "Personalization," still have their own separate entry.
What about Mac OS X? Well, it's pretty obvious. "Displays" and "Keyboard and Mouse." The last major change to those was in the 10.2/10.3 timeframe when "Keyboard" and "Mouse" were merged. Even with that, you still have a pretty good chance of guessing which pane lets you control your mouse settings. When it comes to which preferences do what, Apple has a definite lead in making the name accurately represent the function.
In a similar example, I wasn't sure why Word 2007's "Office Menu" button was throbbing bright orange in a new blank document, but it really wanted my attention. The reason? To tell me what it did. Well, if the button has to do the electronic equivalent of jumping up and down and waving its hand so it can tell me what it does, then that's a sign that its function is perhaps not obvious enough.
Another UI annoyance, and one I had hoped that Microsoft would have improved, is the hoops you have to jump through to get basic information from the OS. For example, if you're having a network problem and your help desk wants to know your IP address, how do you go about finding it? Well, with Mac OS X, it's about three or so clicks at most. Click on the Apple menu, click on "System Preferences," click on "Network" and you get all the information you need.
OS X
\
The main Network Control pane seen by Mac OS X users.
\
\
(click image for larger view)
\
\
If I needed to find out the IP address being used by my AirPort connection, double-clicking on "AirPort" and selecting the "TCP/IP" tab gives me my answer.
OS X
\
The Airport TCP/IP settings panel displays the IP address being used by the Mac's AirPort connection.
\
\
(click image for larger view)
\
\
So from start to finish, you can find the IP address of every active interface on my OS X laptop within six clicks of the mouse.
What's it like on Windows? Not so nice. I can get to the "Network and Sharing Center" in three clicks, but I don't actually know what my IP address is at that point, on any interface. I can see icons for my computer, my network, and the Internet, but clicking on them opens up the Computers, Network, and Web browser windows, respectively. I can click on "View Status" for my connection, but that just tells me what kind of IPv4/IPv6 connectivity I have, the media state, how long I've been on the network, my speed, and how many bytes I've had in and out.
Vista
\
Vista's Network and Sharing Center provides user status on LAN connections.
\
\
(click image for larger view)
\
\
To get my IP address, I have to click "Details," which finally gives me the information. Now, why I can't just see that without having to burrow into two separate dialog boxes outside of the control panel, I don't know, but I do know that Mac OS X gives me this basic information in a nicer, tidier fashion. Even allowing for the extra clicks to get my AirPort address, it's all contained in the same window. Clean, neat and tidy. While networking is one of the easiest UI targets in Vista, this insistence on making you burrow and dig to get basic information is a repeated theme of Vista, one that Mac OS X doesn't make you deal with.
Vista
\
Details on the IP address and connection status are shown in Vista's Network Center.
\
\
(click image for larger view)
\
\
True Authentication?
With Mac OS X, if I need to make a change to a system setting or install software in a location that I don't have read/write access to, I have to authenticate to perform that action. For example, I want to change my IP address for my wireless connection, and my system is set up to require authentication to do such things. With the details expanded, I have a fair bit of information. First, I have to know the password of an administrator user for that machine. If I don't, then even physical access isn't enough; I can't unlock that preference pane. Second, I know the right it wants me to authorize: system.preferences (although I may not know what that means, it's there at least), and I know which application is requesting that right.
OS X
\
In OS X, users need to authenticate to change system settings.
\
\
(click image for larger view)
\
\
If I attempt to perform the equivalent action in Vista, I don't actually have to "authenticate" anything. There's no need for a password. Anyone sitting at this computer can take this action. What you see for UAC as an administrator is basically a dialog that says, "You want to do this?" I don't get any information about what I'm asked to approve -- all I get is a really long GUID-type number that's of no use whatsoever.
Vista
\
In Vista, users need to "approve," rather than "authenticate," changes.
\
\
(click image for larger view)
\
\
The other thing is, until I deal with this dialog or it goes away on its own, I cannot do anything else in Vista. The Mac OS X version won't let me interact with System Preferences until I handle the authentication request, but I can at least keep working in other programs.
That illustrates the three worst aspects of UAC and why I think it's going to be called "User Annoyance Control." You get what is essentially an "OK/Cancel" dialog that most users will hit "OK" for without thinking, you may or may not get useful information as to what is going on, and you get locked out of your system until you deal with this. I have a problem with seeing how annoying people is enhancing security. When I say "annoyance" I really mean "infuriate," because you get UAC dialogs all over the place, and you're never sure when or why you're going to get them.
For example, when I installed Adobe Reader 8 in Vista, I had to deal with UAC twice. The first UAC dialog box was in response to launching the setup file, something I had done with a manual double-click. I could understand authentication if it had been launched by another unauthenticated process, but a manual double-click? Now, since we're running an installer, there is some justification in authentication, but for one thing, that's not what we're doing here, we're just approving, and for another, what if I want to install this into my home directory? What if I want to install this into a place I have full access to? Requiring UAC approval for every install either means the installation process is rather inflexible, or that every installation changes system-level data regardless of need. Neither idea is terribly comforting. However, the second dialog box let me finish the installation.
(click image for larger view)
(click image for larger view)
Vista
\
Vista
\
\
Vista Installer user-account-control approval dialog.
\
Second Vista user-account-control installation approval dialog.
I've seen worse. If you use Vista under Parallels on Mac OS X, the Parallels tools installs something like eight drivers. You have to UAC every ... single ... one. But even when I've taken actions where Vista is telling me "You will have to authenticate," I still only have to click the correct button in a dialog. That's not authenticating anything, it's just approving. There's no way that UAC is going to enhance security, in fact, it's probably going to have the opposite effect, because people are going to just hit OK/Continue even more automatically than they do now. If, as everyone knows, Apple and Microsoft borrow/steal from each other liberally, I really wish Microsoft would have done a better job with regard to UAC. Adding "Annoyance +20" to the OS is not the right answer here.
Better Than XP
However, is it significantly or even slightly better than Mac OS X? Maybe in a couple of low-level ways, like the randomizing memory address usage function, or being able to use USB memory sticks as additional RAM, but at the human level? Not even close.
I've yet to see anything in Vista that blows away the Mac OS, even a version of the Mac OS that's more than a year old. Microsoft still can't manage to make something simple and easy to use. Vista reeks of committee and design by massive consensus, while OS X shines from an intense focus on doing things in a simple, clear fashion and design for the user, not the programmer.