|Think about Loose Coupling|
Perls of Wisdomby cbrandtbuffalo (Deacon)
|on Apr 23, 2005 at 20:50 UTC||Need Help??|
Order Perls of Wisdom
Item Description: Collection of previously published articles by Randal Schwartz
Review Synopsis: Good dead-tree copy of intro to intermediate material.
Note: This review originally appeared in the Spring 2005 issue of The Perl Review.
The latest offering from Randal Schwartz is a compilation of articles he has published over the years in Web Techniques, The Perl Journal, Linux Magazine, and SysAdmin. My first question before I even opened the book was, "How well can a 10-year-old Perl article age?" I'm happy to say the answer is amazingly well.
Nearly every article in the book has a brief comment from the author noting things that he might do differently now or the existence of a module that wasn't available at the time. Even for the older articles, these intros are amazingly short, illustrating how well the material has held up. And even when there may be a newer solution to a problem solved in an article, nearly all of the old code still works (and is available for download from the Apress website).
The articles are written in Randal's familiar easy-to-read style and the topics range from general perl tutorials to text processing to handy web tools. And since they were originally formatted for a magazine, the length is uniform and you can easily read one or two in a sitting.
In some articles, a problem is presented and briefly discussed, and then the final coded solution is disected line by line. For this format, I tend to read the introduction then flip to the code. When there is a section of code is a bit sticky, I refer back to the analysis of those lines.
While those articles are interesting, I most enjoyed the articles that start with a simple idea and meander toward more complicated concepts. Reading these articles is like sitting in the kitchen with the chef while he explains the dish as he prepares it. The others are a bit more like seeing the finished product and getting a detailed copy of the recipe.
The sections with long code listings tend to be solutions to specific problems and you could implement these solutions from the code almost as-is. The tutorial type articles are more interesting to read and they teach general principles that you could apply to problems of your own. All of the articles in this collection are well worth reading (or re-reading) and this book would make a good addition to any Perl programmer's bookshelf.