At last week’s O’Reilly Mac OS X Conference, I gave a talk grading Mac OS X in a number of categories, and although a draft was discussed on TidBITS Talk, I wanted to share the final version here. Since I haven’t attempted this exercise earlier in Mac OS X’s history, the grades are for Mac OS X overall, not just Jaguar, and thus include previous versions as appropriate.
Stability — Perhaps the most ballyhooed aspect of the switch to Mac OS X was its vaunted stability in comparison to Mac OS 9. Overall, Mac OS X has done a good job in this regard, enabling users to work for weeks at a time without rebooting. Applications may crash, but Mac OS X generally handles that with aplomb, allowing the user to continue working without interruption. On the down side, Mac OS X has proven sensitive to network-related problems and potentially flaky hardware, with malfunctioning USB devices in particular causing sporadic and frustrating problems (if you’re seeing Mac OS X crash or freeze regularly, try a different mouse and keyboard). Although Unix variants haven’t traditionally had to deal with users changing networks rapidly, fiddling with network settings in unpredictable ways, and plugging and unplugging a wide variety of devices, Apple needs to work a bit harder on making Mac OS X more tolerant of unexpected network and hardware problems.
Interface — Apple’s decision to break from its past with the look and feel of Mac OS X has caused no end of consternation among Macintosh users, although I was interested to hear that people switching to Mac OS X from Unix weren’t bothered by the changes (and during our panel, Tim O’Reilly claimed that as someone who had used the Mac years ago before switching to Windows, he found Mac OS X significantly easier to use than Mac OS 9). Nonetheless, some of Apple’s decisions were highly dubious from a user interface perspective (such as Mac OS X’s confused approach to window layering), and no matter what, when it comes to user interface, being different purely for the sake of being different is a mistake because familiarity is an important aspect of any interface. Plus, Apple hasn’t provided as many options as some would like (such as being able to shut the Dock off entirely). However, Apple appears to be moving in the right direction, since Jaguar includes many fixes, such as type-to-select in the Finder (though Open and Save dialogs remain a festering boil of awkward and inconsistent interface). And, though some diehards may dispute this, Mac OS X has introduced some welcome changes, such as column view, the Finder toolbar’s Search field, and (one of my favorites) the capability to keep icons on the Desktop arranged by date. Plenty of work remains for Apple in the area of interface design.
Performance — Although Apple claimed the move to Unix would result in improved performance, Mac OS X’s speed has been disappointing. 10.0 was so slow on a 250 MHz PowerBook G3 that restarts timed out because Mac OS X couldn’t even quit applications fast enough. 10.1 was a huge improvement, and made Mac OS X usable for many people, but still lagged far behind Mac OS 9. Although Jaguar was supposed to be significantly faster than previous versions, in part due to Quartz Extreme off-loading graphics tasks to supported video cards, it doesn’t seem to have made that much difference, particularly on older hardware. Users still report that rebooting in Mac OS 9 makes it feel as though they’ve gotten a new computer because the Mac is so much more responsive. On the plus side, a busy application doesn’t bog down the system, and it’s usually no trouble to switch out to another application when you see the rainbow busy cursor (note that Jaguar cleverly shows that cursor when you mouse over one of the busy application’s windows in the background, so you can easily tell if the task has completed). Even more welcome in Mac OS X: instant wakeup for laptops. Apple has lots of room for improvement in the performance arena, and I strongly encourage them not to pawn the task off on faster hardware, since many old Macs are both still officially supported and perfectly useful.
Compatibility: Mac OS 9 — Apple knew the Classic compatibility environment would be key to Mac OS X’s success, since many of us still have applications that have not yet been updated for Mac OS X. Classic has proved fast and stable, and initial irritations surrounding pasting information between Classic and native applications have largely been resolved. Classic’s only warts are applications that need to touch hardware in some way (credit card authorization software that uses the modem, for instance), and a few high-profile exceptions to the rule, such as QuarkXPress. There’s relatively little room for improvement, though it would be nice to see Classic support a saved state, a feature similar to the way Connectix’s Virtual PC handles PC sessions.
Compatibility: Windows — The Mac OS has long been able to read PC-formatted disks, but Mac OS X takes Windows compatibility to a new level with its built-in support for SMB file sharing. Though filename extensions are a step backward from an interface perspective, they do eliminate some problems when sharing files with Windows users. And though it’s not quite fair to give Apple credit for the work of third party developers, Connectix’s Virtual PC, Netopia’s Timbuktu, Microsoft’s Remote Desktop Connection Client, and Thursby’s just-released DAVE 4.0 all improve Mac OS X’s story with Windows. I can’t vouch for these personally, but there remain complaints about how Mac OS X works in large Windows-based networks; I anticipate we’ll see Apple working on those problems and making it ever easier for its target audience of Windows switchers.
Compatibility: Unix — Reports indicate that Apple has done a generally good job with the Unix core of Mac OS X, and the number of high-profile Unix developers and users who have made the jump supports this. The Fink package management system has garnered positive reviews for people looking to install a wide range of Unix applications in Mac OS X, and the ready availability of both command line applications and those that use the X Window System has been positive. As with Windows, though, Mac OS X may not play as well as it could in large networks – one conference attendee noted that Mac OS X has no support for NFS file locking and its automounter has some problems and limitations. Plus, I’ve heard from people who aren’t happy about Apple’s reliance on the Mach microkernel; their claim is that Mach had some advantages years ago that have largely been erased in the interim, and the reliance on Mach requires more work from Apple to integrate changes from FreeBSD.
Compatibility: Hardware — There’s no question that hardware support in Mac OS X has been improving from the early days, when it was almost impossible even to print. Apple regularly releases drivers for new devices with updates available via Software Update, and manufacturers have created drivers for some older devices. But overall support for perfectly usable and modern devices remains mediocre at best, with some areas, such as SCSI, lagging far behind. I included professional audio hardware in this latter category initially, but Apple Master David Mash of the Berklee College of Music, who was presenting at the conference, reportedly disagreed with that assessment, and I haven’t managed to connect him with TidBITS Technical Editor Geoff Duncan, who, as a professional musician, has repeatedly lamented the near-complete absence of pro audio for Mac OS X. [Using Mac OS X for pro audio is like using a flashlight to cook dinner. -Geoff] Finally, flaky hardware and poorly written kernel extensions can cause significant stability problems for Mac OS X. Apple needs to work much harder in this area – pretending that old devices don’t exist is unacceptable.
Security — Security was essentially never an issue with Mac OS 9, though that operating system’s vaunted security wasn’t exactly intentional. In comparison, Mac OS X is a step back, though that step was unavoidable, since Mac OS X provides so many more built-in Internet services and network capabilities. Luckily, they’re all off by default. Apple’s early responses to security vulnerabilities were poor, with fixes appearing slowly and unaccompanied by communications from the company. That’s a thing of the past, though, and the combination of Software Update with Apple’s Product Security mailing list and Web page has worked well of late. Apple has even admitted to the lay audience that security could be an issue by exposing Mac OS X’s firewall configuration, though the Brickhouse utility is still useful for more complex setups. Maintaining security is an ongoing task, and one question that remains is how Apple will address security holes in Mac OS X 10.1.5 since there are undoubtedly some who didn’t pay for the upgrade to Jaguar.
Software Breadth — At every Macworld Expo keynote, Steve Jobs gives some entirely improbable sounding number about how many applications have been written for Mac OS X. Details aside, though, Apple has done a good job of making it possible for a wide variety of software to appear for Mac OS X. Old applications are supported by Classic, new applications can be written in Carbon or Cocoa, a good Java virtual machine makes it more likely that you’ll be able to run Java-based programs, and of course, many Unix applications have been recompiled for Mac OS X. This adds up to excellent support for network-related tools and servers, productivity applications, and utilities. Not all is rosy, though, and games, education titles, and content-intensive applications still are primarily written only for Windows, because that’s where most of the users are. Unfortunately, I don’t see that changing much, since Apple isn’t likely to increase its market share radically any time soon; the main hope is that porting from Windows to Mac OS X is enough easier that more companies will undertake the process.
Documentation & Help — Apple used to be known for the best manuals in the business, but the only paper manual that comes with Mac OS X is a too-brief Getting Started pamphlet. All documentation has moved online, and appears in the glacially slow Help Viewer, which is essentially a slightly customized Web browser. (One bonus in Jaguar: Help Viewer now has a keyboard shortcut – Command-[ – for the Back button.) Gone are balloon help and Apple Guide, though developers can be blamed for their loss – too few wrote good help for Apple to bother moving them into Mac OS X. Help Viewer’s content is generally mediocre as well – for technical documentation to be helpful, it must be written with an eye toward answering user’s questions and anticipating their needs, it must be honest about the existence of problems, and it must be thorough and complete. The more technical information in Apple’s Knowledge Base is better, and independent documentation available both in print and on the Web has helped significantly. Come on, Apple, you can do better.
Troubleshooting — There’s no question Mac OS X is both completely different from Mac OS 9 and significantly more complex. Those two facts create a situation where the extensive knowledge many long-time Mac users had built up is now almost entirely useless, making troubleshooting Mac OS X much more difficult. Aggravating the situation are side-effects of the way Mac OS X was designed; for instance, the fact that it’s a multiple user system results in confusing privileges errors when a file that can’t be deleted by the current user ends up in the Trash. Somewhat offsetting these problems are the facts that Mac OS X far more effectively isolates the user from the system (making it hard to delete the Finder, for instance, or save your thesis in the System Folder) and that Mac OS X provides much better logging, which can help track down crashes. Also helpful is Mac OS X’s stability – a crashing application doesn’t mean waiting through a restart or losing work as you troubleshoot it any more. Although there’s definitely room for improvement in this category, the extra complexity is unavoidable, so Apple will have work hard to keep it behind the scenes more effectively.
Flexibility — One of the neat aspects of Mac OS 9 was that it could be customized heavily, both by using options built into the operating system and with third-party utilities that modified the way the operating system looked and worked. That flexibility even provided Apple with features, such as the menubar clock and the windowshade capability, that originated in independent utilities. Unfortunately, these utilities could also destabilize the system, and in the worst situations, would conflict with one another. Mac OS X has eliminated those hooks into the operating system in favor of stability, and while the stability is appreciated, it’s sad to lose the flexibility. On the plus side, Mac OS X’s multiple user capabilities make it easy for people sharing a Mac to maintain their own custom environments, preferences files are more likely to have a standard format that power users can investigate and edit, and there are some tweaks that can now be made from the command line instead of via ResEdit. Apple will have to tread a fine line here – additional options and opening up the operating system to modification are worthy goals, but they must be accomplished without sacrificing stability.
Programmability — Ever since Apple decided that HyperCard smells funny, the company has avoided implying that users could use the Mac to create their own applications. It was a shame, since giving users programming tools is a bit like giving fire to early humans. Thankfully, with Mac OS X, Apple seems to be reversing course, making development tools available for free and offering numerous different programming targets. Though no one should be writing Classic applications anymore, developers can choose among Carbon, Cocoa, Java, and Unix. Plus, the new AppleScript Studio lets developers write true Cocoa applications in AppleScript. Third parties bolster this story as well, with products such as Runtime Revolution, the Java-focused Tekadence Magik, and the well-known REALbasic. (REAL Software recently announced their next version will run on Windows as well as the Mac, which should increase the number of applications developed using REALbasic, and which in turn could increase the number of Windows applications made available for the Mac.) The two flies in the ointment are that Apple still thinks HyperCard smells funny, and the company seems to have developed an odd aversion for AppleScript, with AppleScript support in too few of Apple’s own applications. What’s especially annoying is that with Cocoa applications (such as iPhoto), you can reportedly get 95 percent of the way to having AppleScript support simply by selecting a checkbox when compiling, and if you add AppleScript support, you can use it to help automate testing. If nothing else, Apple looks downright stupid when they don’t support their own technologies, particularly technologies as useful to workflow automation as AppleScript.
Internationalization — About half of Apple’s market lies outside North America, and although the Mac has a good history with regard to supporting other languages (largely thanks to its use of bitmapped fonts for Asian languages), Mac OS X is reportedly a significant improvement. You can select among numerous localizations for Mac OS X itself, more input methods are available than were in Mac OS 9, and Mac OS X offers good Unicode support for different character sets. On the downside, many applications aren’t holding up their end of the bargain, so, for instance, a Word document with Greek fonts created on the PC won’t transfer properly to Word X in Mac OS X. Some users have also complained about complications with accessing files named with mixed character sets in the Terminal, and others have moaned about keyboard shortcuts being difficult to use on different keyboards. But in the end, Apple has done a good job, and merely needs to keep up the effort to fill in the remaining holes.
Overall Grade — Rather than attempt a subjective overall grade, I converted my letter grades to numbers from 1 to 15 (F- to A+), averaged them, and converted back to a letter grade. The end result? A solid B, which feels right. Apple has done well (the grade would definitely have been lower before Jaguar, and much lower still before Mac OS X 10.1). But as remains obvious to those of us who have used the Mac for years, Apple still has plenty of work to do in core areas: performance, interface, stability, hardware compatibility, and documentation. I look forward to grading Apple’s work again, perhaps in a year.
So do you agree with my assessment? Try assigning your own grades to each of the categories I’ve evaluated above, average them as I’ve done, and see what you get. Then go register your overall result on the poll on our home page – it certainly won’t be statistically accurate, but I’ll be curious to see how the TidBITS readership rates Mac OS X. I do ask that you be fair – unjustified rankings on the extreme ends of the scale are notably unhelpful.
PayBITS: Want to support TidBITS so we can continue to
evaluate Apple’s efforts? Consider becoming a contributor!
Read more about PayBITS: <http://www.tidbits.com/paybits/>