Top positive review
A big help to me
on March 30, 2015
I have to admit that I am not a Perl aficionado. While there are things about the language that don't appeal to me (this is true of any language), the truth is that I don't really "think" in Perl. There are other languages that are more suited to my thinking process.
That said, there are times when Perl hits a "sweet spot": a) it is available on for all Linux distress; b) it integrates well in the shell environment; c) it easily replaces multiple shell-based utilities (sed, awk, bash, etc.); and there are modules to interact with the entire application stack. It is a useful tool and I needed to find a way to gain a appreciation for it.
Enter Effective Perl. I was introduced to the first edition of the book some time ago. The company that I worked for was transitioning away from Perl, but there was a lot of Perl code still in play. I had tried a number of other books and just couldn't "get it". The syntax wasn't the problem - it was the change in context. Very poorly explained in these other text. That early edition gave me enough insight to read and understand some Perl. I didn't need much as we were moving to another language at the time.
Years later, I'm doing a lot of Python code. So, why even look at Perl now? Well, Python is going through a lot of changes right now. Some tools "prefer" 2.x, while others "recommend" 3.3+. Different modules work with specific versions, etc. A lot of what I do is administrative work. I have to assume a base level of tools to being work; and I do not want to rely overly much on the shell alone. Perl, warts and all, provides the tools needed, a guaranteed presence, and an easier integration path.
This book helped me to "think" in Perl. This make it *a lot* easier to write efficient code and (more importantly) to debug the code written. Does this mean that I will give up Python (and Ruby)? Not a chance. Both are better OO based languages. (Yes, I know about Moose. I just prefer the other languages in this regard.) It *does* mean that I can safely replace a number of utilities with just one tool: Perl and like it.
Perl has some warts, but it can be an effective tool in the right circumstances. This is an excellent book to understand how to use Perl - when it is necessary to do so.