Top critical review
43 people found this helpful
This book was not written by Perl programmers
on January 6, 2005
A Perl novice picking this book up will be impressed. It's big, the prose is good, and it seems to have a command of the subject.
This is all misleading. The book was written by professional authors who pick up a language as they write a book. Perl isn't like other langauges - the mindset and featureset are completely different. Writing effective Perl means getting a grasp on ideas taken from awk, sed, Lisp, C++, sh, and a dozen other places. This book teaches Perl as if it were another C dielect with a funny syntax. This certainly makes it easy to "leaern Perl", but after reading over 800 pages, you'll actually learn very little Perl. And no wonder - large amounts of this book were cut and paste verbatum from other books Dietel wrote about C++ and Visual Basic! Nothing unique to Perl is discussed, such as Perl's excellent date manipulation fascilities, object serialization, or indeed any module beyond the CGI module (on which a thousand books have been written).
Descriptions of features are vague and half hearted showing lack of a clear understanding. To someone who knows Perl, this book sounds like a homework assignment where someone read about Perl and then wrote about their findings, uncertainties and all.
Throughout the book, code listings basically work (I worked hard on that as a paid technical reviewer - my name is in the credits - and this was no small task) but they too completely miss the style, spirit, and indeed the point of programming Perl. They're riddled with security holes. They don't leverage modules, and Perl's CPAN repository is probably it's greatest strength.
I don't like writing bad reviews. I don't like having failed to have persuaded the authors to address security. I wanted to like this book since it was the first I've worked on. With lots of help from people who truly grasp Perl this book could have been medicore but Dietel's production-line like business model doesn't allow for this. Books need to be written by experts or at least senior members of the community. Rank novices cannot just read other books and repeat back their findings and call it a book. Or perhaps you honestly believe that Dietel has mastered every language on the sun and had plenty of time left over to write an 800 page book about the language they learned last month.
As with any bad review, you should be asking what motivated the bad review. Often it's a frustrated novice. Sometimes it's pure snobbery. Other times it's religion or a burnt employee. I'm not a Perl novice; I've been programming for 21 years now and I've been programming in Perl quite heavily for about 6 of those. I'm a bit of a Perl snob but only because there are so many really excellent books like Programming Perl, Learning Perl, Beginning Perl, CGI Programming with Perl, and scores of others. Dietel treated me very well and paid me fairly (again, I wish I could give an average review). I'm just writing this review to temper the initial impressions of those first learning Perl with a slightly more educated assessment.
If you want one massive book with loads and loads of Perl knowledge, Computer Science & Perl Programming was collectively written by about 20 of the best known Perl hackers who have developed the most important modules, worked on the core, and spoke and written more often than anyone else. And while CS&PP has nearly the same page count, it costs half as much. Besides being more thorough, more insightful, more interesting, and in better style, it's a heck of a lot of fun.
In short, Perl: How to Program is just another in-it-for-the-money amaturely written Perl+CGI book with a lot of padding and little insight.