Review: Mac OS X Panther for UNIX Geeks (book)
At first, I was horrified. Looking at the cover, I couldn’t help but think that the publisher was at the least misguided, at most alienating its target audience entirely. Unfortunately, nine years of Internet experiences had left me unaware that unlike the word “nerd,” the word “geek” is not actually a derogatary term: at least when used amongst friends. A quick search or two later, and I was satisfied that there was nothing untoward about this book—at least, in its title.
Apprehension cast aside, O’Reilly’s Mac OS X Panther for Unix Geeks starts off by acknowledging that the depth and nature of the material covered makes it unsuitable for even those existing OS X users who perhaps know their way around the Terminal. Indeed, a lot of its content would leave this group of users searching for more interesting and perhaps more relevant tutorials. The primary goal of this book is to assist with the transition to Mac OS X for those advanced users of Linux- and Unix-flavoured operating systems with a particular developer or system administration interest.
To this end, a lot of the book ends up describing the differences between what users might be used to on more standard Unix distributions, and what they will have to get used to when using OS X. Logically, the first place to start when doing this would be the Terminal application itself, where the vast majority of command-line activity occurs; and indeed, this is what the first chapter covers. The rest of the chapters in this first “Getting Around” part of the book deal with, among other topics, using Directory Services to manage users, groups and so on; printing using the Common Unix Printing System (CUPS); installing and using the X Window system; and working with various forms of multimedia.
Intriguingly, chapter two contains a full and detailed run-through of the OS X boot process, right from when the power key is pressed to when the login window is displayed. Also of particular note is the wide range of third-party applications mentioned or explained in some detail within various chapters, although as one might expect, Fink takes pride of place with its own chapter in the Packages section.
Those users who create or build their own applications will find three chapters explaining the various routes available, including compiling applications from source code, working with Perl, and what to do when encountering porting errors due to library, header, and framework differences. System administrators will learn about the available monitoring tools, about using MySQL and PostgreSQL, and about using OS X as a server. Finally, the appendices serve to map out a typical OS X file system, provide otherwise missing documentation for a few dozen command-line utilities, and describe a number of included development tools.
Considering the depth of information given on each topic in Panther for Unix Geeks, it is all too easy to compare this depth with the range of topics covered and find this range lacking. Also, sometimes this depth gives the casual reader the impression that the book is divulging everything there is to know on the subject, when in reality it offers just enough information to supplement existing knowledge while, at the same time, opening up many more areas to explore once the basics have been learnt.
There is not a lot to be said about this book, other than it accomplishes what it sets out to do and does it in full. The knowledge assumed by the book is great, and the diversity of topics will probably mean that certain chapters will go unread, simply because the reader is not interested in using a certain technology or accomplishing a certain task. A cover-to-cover read, this is not: however, if you are planning on making the switch and enough of the application areas fuel your interest, then this book is probably the most appropriate starting point for you.