Monday, August 17, 2009

Book Review: Head First Networking

Authors: Al Anderson and Ryan Benedetti Format: Paperback, 536 pages Publisher: O'Reilly Media, Inc. (June 4, 2009) ISBN-10: 0596521553 ISBN-13: 978-0596521554 Head First Networking, eh? I'm familiar with the Head First series, having reviewed a number of such books before. Head First books are generally successful at teaching a technical topic to a moderately to severely distractable person. I was curious how teaching networking would fit the bill, particularly since "networking" as a technology, is so vast. Head First books tend to be beginners books, so I wasn't expecting a huge amount of detail or advanced knowledge. The typical audience for this series is late high school/early college, so I thought at best, the content would more or less map to CompTIA's Network+ certification. The authors both have "day jobs" at Salish Kootenai College, but I was surprised to discover only one of them currently works in IT. Al Anderson is the Director of Academic IT Services at the college, but Ryan Benedetti teaches Liberal Arts. I suppose one was responsible for the technical content, and the other was responsible for knowing how to write. That's just a guess, though. Actually, Benedetti was Department Head for an IT group in a previous life, according to his bio, so he does indeed know that side of the street. In the Who is this book for? section, I was surprised to see the initials "CCNA" even mentioned. Apparently, one of the goals of the book is to be a resource for students who have earning Cisco's CCNA certification as a goal. So much for my Network+ assumption. The Who should probably back away from this book? portion, does say that people who already have their CCNA or CCNP need not bother with this text, which makes sense. Like all Head First books, this one includes made up scenarios that the reader has to investigate and "solve", using the technologies featured in the book. In a programming book, and especially languages like Python or Ruby, not much is required to participate in the exercises, besides a computer that has those programs installed (and Linux has them on board by default). Having all the equipment you'd need to network even a small business would cost quite a chunk of change. The starter problem in the book's first chapter requires the reader to work on networking issues for "Coconut Airways". The first problem is the "nest of snakes in the server closet" issue (and if you've ever worked in IT at all, you know what I mean), so not much of a cash outlay at the onset. The CAT 5 cable and RJ-45 connectors seemed logical, but I was surprised to see that the authors tossed in Coaxial cable problems and solutions. I'm not sure if the current Network+ exam still includes Coax cable and BNC connectors, but I seriously doubt any real-life networks still use such antiquated cabling. In fact, CAT 5, while common, isn't the only "CAT" cabling solution a novice network tech would run into. I was beginning to wonder if the book also included Token Ring. Sure enough, it's mentioned in the index, and I was directed to page 473. Arriving on that page, I was further confused and dismayed when I arrived on said-page, only to discover the instructions for installing Wireshark on Mac OS X and Linux (Ubuntu). I did finally locate a diagram of Token Ring topology on page 471, but that technology wasn't mentioned elsewhere in the book, that I could find. I was pleased to see that Windows, Mac, and Linux were all included. After all, they all have to be networked. Certainly Ubuntu is the most commonly used Linux distro currently available (sorry Red Hat and SUSE), so it would make sense to include it for an audience that probably has limited financial means. Speaking of finances, I ran across a price list for Cisco IOS simulators, which seemed a tad advanced for a beginner's networking book. Cisco IOS commands are quite arcane, and usually basic networking is a prerequisite for even considering entering the Cisco realm. Of course, I found this in the appendix dedicated to "leftovers", or the things the book didn't really cover. A fair amount of the book covered the physical nature of networking, but packet analysis, routing (at least the concepts, if not the practice), and DHCP are also found between the covers. DNS is left for the appendix section, and even then, all that's presented is how to install BIND on Windows, Mac, and Linux. Kind of pointless, unless you teach the reader what to do with it after it's installed. Even for a ground-level beginner's book, I was a little disappointed. Too much space seemed to be dedicated to obsolete networking technologies and equipment. There were a few errors (such as the aforementioned page numbering) that I thought the editors should have caught (although that's what errata is for). All in all, this book will give the student a basic foundation in networking, but the reader will still need to pick up some additional materials and get their hands dirty making cables and networking computers, before it'll really mean anything.