Speed:
I'm going to deal with this issue very casually. Performance of an operating system is
difficult to quantify in my opinion, largely because the architectual trade-offs that
they make. Because of this, Windows, Linux and MacOS X all have very different
performance characteristics, and benchmarking these things is easy, but quantifying how
they effect daily usage is not.
I will start out by saying that in terms of the common benchmarks, Windows is faster.
For example, one of the common benchmarks is the startup time. This is measured in
seconds, how long does it take the computer to startup. Windows XP is the fastest of
the three, in perception, while in reality, it's the slowest. The reason I say this
is that in measuring the startup time, most of these metrics, measure the time from the
power button is pressed to the time at which you can login.
This measurement is invalid in my opinion because at this point, some services are not
yet running under Windows XP. MacOS X, and Linux, don't even prompt for a login until
all of the system services are running. The more system services you add, the longer
this process takes. This is just one example of how common benchmarks don't work for
comparing two different design decisions. These benchmarks are great for comparing
versions of the same architecture, like Windows 2000 to XP, or MacOS X 10.1 to MacOS X
10.2.
A better measure of speed, is productivity, and how the environment, both hardware and
software effect your usage, and productivity. This is nearly impossible to measure
effectively as it will be different for any given user, even those with similar skills
and backgrounds will find that they work differently.
With that in mind, the MacOS 'Aqua' user interface has some elegant features, it also
has some serious performance drawbacks because of them. Windows "feels" faster, because
it doesn't provide the volume of visual feedback that the MacOS does. The pretty little
genie effect of minimizing windows is pretty, but it's slower than Windows. Both
environments suffer from visual clutter, and this decreases productivity. On Windows,
you either minimize everything to the taskbar, single task, or you use a third party add
on for virtual desktop space. When on Windows, I use the third option
(www.objectdesktop.com). On the MacOS, I find that there is another option, though I have
used CodeTek's Virtual Desktops, I don't find the need as much on the MacOS. For me, the
MacOS implements another feature, Cmd+H, that eases this need. With a quick keystroke, all of the windows for a
given application are hidden, not minimized. This reduces visual clutter, and is easily
undone, with a click on the application icon in the dock, or through the Cmd+Tab key sequence.
Another huge productivity booster in any environment is scripting. Windows offers the Windows
Scripting Host. This is both incredibly powerful, and incredibly dangerous. Most of the
worms and major virus threats of the past 24 months have been script virii that effected
one of the most powerful, scriptable applications on the platform, Outlook. The problem with
Windows scripting is that is not as pervasive as it could be. Application developers have to
go out of thier way to add even basic scripting support. On the MacOS, AppleScript is the
default scripting environment, though other languages can be used as well.
AppleScript is a relatively straight forward language, but it has some really bad syntax issues.
On the other hand, it is pervasive throughout the system. Most applications support it, as
it is apparently fairly easy to add scripting support to most new MacOS applications. The
key here is that AppleScript is much better supported than the Windows Scripting Host. It
is a fairly trivial effort to assemble information from several sources to create a composite
document or project. The weakness in comparison to the Windows scripting model is weak support
for data access natively.
Another huge timesaver for me, where I use alot of templates to create new projects, is something
that I've missed since the OS/2 days. The ability to mark a file as 'Stationary' in the Finder.
With that set, double-clicking that object opens a new copy of that file, not the file itself.
This is something that saves a full minute of 'File', 'Open', 'Save As', navigate, 'OK' time. The
Windows implementation of the 'Right Click', 'New' design is severely handicapped by the
fact that it only supports one template per file type.
One of the biggest timesavers in the MacOS user interface is it's keyboard support. This sounded
a little silly, considering that for all intents and purposes, the original MacOS, as it was
taken from the Xerox PARC work, really started the modern click and wait, graphical user interface
design that enforces the mouse usage has the strongest keyboard support. These keyboard shortcuts
are not only consistant, but they are pervasive. Want to Minimize a window? Cmd+M. Close it?
Cmd+W. Hide it? Cmd+H. In Windows, Minimizing a window from the keyboard is Alt+SPACE, N.
Close it? Alt+F4 (unless it's a child window of an application, then it's Ctl+F4, because Alt+F4
will close the application).
Additionally, the location, and design of the menus. At first exposure to the MacOS, I found the menus
not being in the window to be too far to move the mouse. The longer I've used it, the more I like
it. I find it more efficient, as I always know exactly where to move the mouse, and it's never
out of the visible range. The other menu related item is context menus. Windows has a huge
advantage here. The context sensitive extension mechanism makes the right click (Ctl+Click for
the button challenged, hockey puck users) of Windows much more powerful. The MacOS does however
implement context menus throughout the system for those that do Ctl+Click or who choose to use
a non-Apple mouse. While it's not Windows powerful, it's still more than adequate.
Finally is an issue that is difficult to grasp until you've spent some time with an Apple notebook,
running MacOS X. One of the major changes in my own workflow, is one that renders the boot time
numbers even less relevant. I suspect the same thing to be true on the desktop, but I don't use
desktop computers for anything but servers anymore. On Windows, part of my workflow was to turn
the machine off between use. When I leave the office, I hit 'Start', 'Shutdown'. Standby, and
hibernate have never worked reliably on any of my Windows machines, homebrewed, Dell, Toshiba, or
IBM. That means that every time I come back into the office, I have to wait for a full start up
cycle. With the MacOS X, and the Apple hardware, I power off, and do a full reboot about once a
week, or when going through airport security. Otherwise, I just close the lid. When I return,
I open the lid, and I'm ready to go before I've gotten comfortable in my chair. The Windows
machine is usually still booting by the time I've checked the mail and news.
I've not mentioned
the infamous Blue Screen Of Death and the frequent reboots required by them on Windows. The
reason is simple. I don't feel that it's a valid argument. If you are experiencing frequent
Blue Screens on Windows XP, then you have a hardware or a driver problem, or you aren't doing
the regular maintenance on your machine. If you neglect any computer, regardless of platform,
that way, it's going to have issue, call the BSOD's, kernel panics, Apple bombs, System Crashes,
or whatever floats your boat. It all amounts to the same thing, you change the oil in your car
every 3,000 miles, try defragging a hard-disk every 3-4 weeks, running a disk check every few
weeks, and like your car, listen to it, if your power supply fan is rattling, there is probably
a reason, and a little service will extend the life of your computer.
All in all, I find that during the course of my day, I am faster, and more efficient in the way
I work when using the MacOS. Windows just seems to get in the way for my very task oriented
life. In the end, I find that statistically, Windows is a faster, and snappier feeling operating
system, even when compared on nearly identically clocked hardware, but that when it comes to
using the tool, to do the job, the user interface speed doesn't translate to improved workflow
or efficiency.
prior page :: next page
|