Hacking Mac OS X Tiger: Serious Hacks, Mods and Customizations
US$ 24.99 CA$ 31.99
Scott Knaster knows what he’s talking about. Seriously. He’s been writing about programming the Mac for years, including the classic How To Write Macintosh Software. Hacking Mac OS X Tiger: Serious Hacks, Mods and Customizations is his latest effort.
Unfortunately, I found Hacking Mac OS X Tiger to be a bit schizophrenic. While full of neat tips and tricks, it also has lots of detailed Mac programming material. The book tries too hard to appeal to widely divergent groups of readers. In doing so, it will almost certainly disappoint both the regular Mac users looking for hints and tricks, as well as programmers looking to learn about hard-core Mac hacking.
The first part of the book, Tips, is a wide-ranging collection of hints and tips. Unfortunately, many are already well known, although some are a bit more obscure and titillating. After reading six or seven Tiger tips book, I’m not impressed when I get another tip of how to quit the Finder, or how to close windows in slow motion. Even so, Knaster does find some less-common gems; changing the wording on the “Unexpectedly quit” dialog box, or how to duplicate Widgets.
The further you delve into Hacking Mac OS X, the geekier the material becomes. Knaster scores bonus points for his good introduction to X11, an application that allows you to run windows-GUI Unix applications. While not comprehensive (an in-depth treatment of X11 would need a book of its own), Knaster provides enough detail for the adventurous reader to jump into the X11 pool at the shallow end. Scott leaves you with a tease of how to run X11 applications on another Mac, with only the window display running on your local machine. Some Terminal code is included to kick off this tip, but I’ll bet most users will be overwhelmed trying to get this X11 feature to work, as doing so requires a fair amount of networking and Unix savvy. Even so, the text provides plenty of references to detailed X11 documentation.
Part II, Mods, cranks the geekiness up a notch. You’ll be learning about application bundles and .plist preference files. Scott walks you through how to use Property List Editor to modify .plist files.
Oddly, the next section of Mods jumps back to user-level information about Automator. Since Apple provides Tiger users with little information about how to best use Automator, Knaster’s tips are welcome. But this would be more logically placed in the user hints and tips section earlier on the book.
After Automator, programmer material comes back to the front with a discussion of Xcode, Apple’s collection of programming tools. The material barely scratches the surface, but if you have any interest in learning what Xcode can do, this is a place to start.
Part III, Hacks, is the most complex part of the book. Users with no programming experience can skip it, as this part is all about how to actually program the various neat example hacks. Some of the examples include creating a Word Of The Day application, running a video as your Desktop (my favorite, even though I’m not a programmer), and how to write a Spotlight importer.
Pages of source code are provided, which makes this part more than a bit dull to read. It’s good that Wiley Publishing has a web site
for downloading source code examples. Unfortunately, the only spot where I found any mention of the web site URL was the bottom of the outside back cover, a less-than-conspicuous location. If Knaster mentioned the URL in the text, I never noticed it.
Hacking Mac OS X Tiger : Serious Hacks, Mods and Customizations, is a fine effort, but it tries to be too much for too many. While it has some good user-level tips and hints, and provides some great examples of true programming hacks, the book’s focus is diluted. Given that there are numerous titles that do a better job of presenting end-user (non-programmer) hints and tips, Knaster would do better to focus on the programmer-level material. As is, he may be boring programmer types with the pages of easy and well-known tips before getting to the hard-core hacks.
I’d recommend this book for novice to intermediate Macintosh programmers who want to see how expert Mac programmers implement neat hacks. Be aware that you’ll have to skip through the first part to get to the hack examples. Mac users who want user-level hints and tips may be better served to buy a book that doesn’t dedicate half the text to material that requires programming experience.