Most Helpful Customer Reviews
|
|
11 of 11 people found the following review helpful:
5.0 out of 5 stars
Excellent Compendium of Perl Tricks, 21 Nov 2006
To be completely honest, this isn't the book I thought it was going to be. Most O'Reilly Hacks books start off pretty simply and in a few chapters take you to the further reaches of their subject area. Whilst this is a great way to quickly get a good taste of a particular topic, it has the occasional disadvantage that for subjects that you know well, the first couple of chapters can seem a bit basic. As I know Perl pretty well, I thought I would be on familiar ground for at least half of the book.
I was wrong.
Oh, it started off easily enough. Making use of various browser and command line tools to get easy access to Perl documentation, creating some useful shell aliases to cut down typing for your most common tasks. "Oh yes", I thought smugly to myself, "I know all that". But by about Hack 5 I was reading about little tweaks that I didn't know about. I'd start a hack thinking that I knew everything that the authors were going to cover and end up frustrated that I was on the tube and couldn't immediately try out the new trick I had just learnt.
It's really that kind of book. Pretty much everyone who reads it will pick up something that will it easier for them to get their job done (well, assuming that their job involves writing Perl code!) And, of course, looking at the list of authors, that's only to be expected. The three authors listed on the cover are three of the Perl communities most respected members. And the list of other contributers reads like a who's who of people who are doing interesting things with Perl - people whose use.perl journals are always interesting or whose posts on Perl Monks are worth reading before other people's. Luckily, it turns out that all these excellent programmers can also explain what they are doing (and why they are doing it) very clearly.
Like all books in the Hacks series, it's a little bitty. The hacks are organised into nine broad chapters, but the connections between hacks in the same chapter can sometimes be a bit hard to see. But I enjoyed that. In places it made the book a bit of a rollercoaster ride. You're never quite sure what is coming next, but you know it's going to be fun.
In fact, the more I think about it, the more apt the fairground analogy seems. When you ask Perl programmers what they like about Perl, you'll often hear "fun" mentioned near the top of the list. People use Perl because they enjoy it. And the authors' enjoyment of Perl really comes through in the book. It's obvious that they really wanted to show people the things that they thought were really cool.
Although I did learn useful tips from the earlier part of the book, it was really the last three chapters that were the most useful for me. Chapter 7, Developer Tricks, had a lot of useful things to say about testing, Chapter 8, Know Thy Code, contains a lot of information on using Perl to examine your Perl code and Chapter 9, Expand Your Perl Foo was a grab-bag of obscure (but still useful) Perl tricks.
So where does this book fit in to O'Reilly's Perl canon? I can't recommend it for beginners. But if you're a working Perl programmer with a couple of years' experience then I'd be very surprised if you didn't pick up something that will be useful to you. And don't worry about it overlapping with other books in your Perl library - offhand I can't think of anything in the book that has been covered in any previous Perl book.
All in all, this would make a very useful addition to your Perl library.
|
|
|
2 of 2 people found the following review helpful:
5.0 out of 5 stars
Super advanced Perl, 21 Jul 2007
From the title, I wasn't quite sure what to expect from Perl Hacks. Was it going to be about rummaging around in Perl's internals? Making Perl do clever, yet ultimately dumb and pointless tricks? It turns out that, while there is some fairly voodooish material here, some of it quite playful, on the whole it's a very practical book. Aimed firmly at the advanced Perl programmer who knows when it's appropriate to mess about with the symbol table, temporarily turn off warnings, or crack out one of the B:: modules, this is a collection of 101 suggestions to improve your productivity, boggle your mind about what Perl can do, or both.
The content reminds me a little of the likes of Exceptional C++ Style, a mixture of advanced best practices, and things which you may not need to know, but you'll probably still be interested in finding out how it works. For instance, have you ever considered tieing an array or hash variable to a function? Ever wanted to name a supposed anonymous subroutine? Print out the source code as well as the line number of a syntax error? Nor me, but Perl Hacks shows how it could be useful. These are illustrative of the spirit of the book.
My favourite material was probably the chapter on modules. Included are how-tos for outputting all the modules used in a package, automatically reloading modules in running code, shortening long package names with the CPAN 'aliased' module, and making up your own bundle of modules for easy installation. There's also an interesting object chapter with subjects such as: inside out objects, using YAML for serialisation, using traits and autogeneration of accessors.
Additionally, there's a little on using those scary B:: packages, using modules which use the B:: packages or other dark magic (e.g. peeking inside closures), some fairly hardcore tracing and profiling, that touches on some Perl VM internals. Also worth mentioning is the hack that hijacks the angle bracket glob operator to create Haskell/Python-style list comprehensions.
You are going to have to be one scarily gifted Perl hacker not to find something useful or at least thought-provoking at regular intervals throughout this book. My only complaint is that the hack format, which the blurb on the back of the book describes as a "short lesson", does not lend itself equally well to all hacks. While I liked the chapter on objects, some of the hacks (in particular the traits hack, some of the testing material) were too short.
If you like the sound of a book that's somewhere between Perl Cookbook, Perl Best Practices and the second edition of Advanced Perl Programming, you're going to love this.
|
|
|
|