Mastering Perl

Mastering Perl
by brian d foy

Mastering Perl
List Price: $39.99
Our Price: $22.59
You Save: $17.40 (44%)
Availability: Usually ships in 1-2 business days
Buy Used: from $15.89 (click here)
Category: Book
See more book details and other editions


or

Book Summary Information

Author: brian d foy
Edition: Paperback
Audio: English (Unknown); English (Original Language); English (Published)
Published: 2007-07-23
ISBN: 0596527241
Number of pages: 344
Publisher: O'Reilly Media
Product features:
  • ISBN13: 9780596527242
  • Condition: New
  • Notes: BRAND NEW FROM PUBLISHER! 100% Satisfaction Guarantee. Tracking provided on most orders. Buy with Confidence! Millions of books sold!

Book Reviews of Mastering Perl

Book Review: it's a very good book
Summary: 4 Stars

Mastering Perl is a toolbox full of very sharp tools. I can imagine myself presenting it to a junior co-worker, very somberly informing him, "It is time."

More likely, actually, I'd present him a few chapters ripped out of the book and rebound. It's not that there are chapters I object to, or that don't matter. It's that some of the chapters are about safety and responsibility, while others are about wielding deadly weapons. I want up-and-coming Perl programmers to know about taint mode, debugging, profiling, and good code formatting long before typeglobs, ties, or AutoSplit. I'd divide the chapters into "things you must learn to become a master of the language" and "things you had better know if you want to be considered a good professional."

The chapters are not particularly cumulative, and can be read out of order. If you're ready for the book in general -- which basically only means understanding the basics of packages, references, regex, objects, and closures -- you're ready for any chapter at any time. I read the chapters in order, and I was glad to switch between technical and procedural topics. It let my brain rest a little between bouts of dense code.

My main concern is the lack of warning given on a number of tools discussed. brian begins, in the first chapter, by saying that coverage does not mean endorsement, but I don't think that's quite strong enough in some cases. The first chapter discusses some regular expression techniques, and casually mentions using $&, with no mention of the long-standing performance bug this introduces. Maybe I'm being silly, but it seems like such an easy and worthwhile thing to mention -- especially since the section in which $& is discussed is actually about @-, which can be used to efficiently replace $&. (As a side note, while reading this chapter, on what was effectively the fourth page of the book's real material, I saw $#- casually used in some code. That is when I realized that this book was not going to screw around.)

Another chapter is devoted to tied variables, which are fantastically fun, but can also be a major source of headaches. Maybe brian's thinking is that any real master will be able to make his own judgement on the subject. Still, without an included warning about the danger of a few topics, I'll definitely have to red ink a few margin notes on the office copy.

My worries about sharp tools, though, are far outweight by the excellent explanations of the features covered by the book. brian's explanation of a few features of Perl really, really cleared a few things up for me. I feel fairly at home in Perl, but there are a number of features that I've always felt were never going to stick with me, and that I'd always need to refer to the docs on. Among these were the regex position bits (/g, /c, and \G), which I've used, but always with perldoc open; also, pack, which I've only ever used in its simplest form. After reading the explanations of both in Mastering Perl, I almost didn't notice that I had quietly internalized the concepts. One of my notes actually reads, "p219: pack: I get it now!"

I think this is because of the extremely straight-forward presentation of the material. It doesn't go to great lengths to create elaborate scenarios. It says, "Here is a feature. This is how it works. Here are a few examples. Now you understand." brian's paragraph on pack was far, far more useful as a learning tool than the four hundred lines of pack documentation in perldoc. What's even better, though, is that now I can look at that perldoc and understand everything it says quite easily.

This kind of excellent, straightfoward explanation of fairly complex topics is present throughout the book, and is the best reason to pick it up.

Finally, I had a few typographical quibbles with the book. There are a number of footnotes throughout the book, and that's fine, but rather than using numbers or sticking to a commonly-seen set of characters, the footnote markers are unusual. I think it progresses in each chapter: asterisk, dagger, double-dagger, funky || symbol, and possibly others. The asterisk looks lousy and the || is just weird, and not immediately obvious as a footnote marker. I don't understand the thinking. Much worse, though, the monospace at sign (@) used in printing the book is from another planet. It hardly looks like an at sign at all. Given the quantity of @'s seen in Perl code, this is extremely distracting, and should really be fixed before O'Reilly prints more Perl books.

So, I had a few concerns about journeymen programmers picking up dangerous tools, and I didn't like the at sign. These are pretty small concerns, in the end, when compared with the quality of the material. It's very clear, and covers most of the topics I'd expect in a book like this, and covers most of them quite thoroughly. I'd want this on the shelf at any office that might hire non-masters, and I'd want those employees to have their hearts set on one day understanding everything in Mastering Perl.

Summary of Mastering Perl

This is the third in O'Reilly's series of landmark Perl tutorials, which started with Learning Perl, the bestselling introduction that taught you the basics of Perl syntax, and Intermediate Perl, which taught you how to create re-usable Perl software. Mastering Perl pulls everything together to show you how to bend Perl to your will. It convey's Perl's special models and programming idioms.

This book isn't a collection of clever tricks, but a way of thinking about Perl programming so you can integrate the real-life problems of debugging, maintenance, configuration, and other tasks you encounter as a working programmer.

The book explains how to:

  • Use advanced regular expressions, including global matches, lookarounds, readable regexes, and regex debugging
  • Avoid common programing problems with secure programming techniques
  • Profile and benchmark Perl to find out where to focus your improvements
  • Wrangle Perl code to make it more presentable and readable
  • See how Perl keeps track of package variables and how you can use that for some powerful tricks
  • Define subroutines on the fly and turn the tables on normal procedural programming.
  • Modify and jury rig modules to fix code without editing the original source
  • Let your users configure your programs without touching the code
  • Learn how you can detect errors Perl doesn't report, and how to tell users about them
  • Let your Perl program talk back to you by using Log4perl
  • Store data for later use in another program, a later run of the same program, or to send them over a network
  • Write programs as modules to get the benefit of Perl's distribution and testing tools
Appendices include "brian's Guide to Solving Any Perl Problem" to improve your troubleshooting skills, as well as suggested reading to continue your Perl education. Mastering Perl starts you on your path to becoming the person with the answers, and, failing that, the person who knows how to find the answers or discover the problem.

Languages & Tools Books

Book Subjects
Most talked about in Languages & Tools Books
Eclipse Plug-ins (3rd Edition) ImageEclipse Plug-ins (3rd Edition)
by Eric Clayberg, Dan Rubel
Addison-Wesley Professional; Published: 2008-12-21; Paperback; Book
Best price: $38.33
Price in other shops: $59.99
Java Software Solutions: Foundations of Program Design (6th Edition) ImageJava Software Solutions: Foundations of Program Design (6th Edition)
by John Lewis, William Loftus
Addison Wesley; Published: 2008-03-07; Paperback; Book
Best price: $74.40
Price in other shops: $128.00
C++ Primer (3rd Edition) ImageC++ Primer (3rd Edition)
by Stanley B. Lippman, Josée Lajoie
Addison-Wesley Professional; Published: 1998-04-02; Paperback; Book
Best price: $14.47
Price in other shops: $49.99
Accelerated C++: Practical Programming by Example ImageAccelerated C++: Practical Programming by Example
by Andrew Koenig, Barbara E. Moo
Addison-Wesley Professional; Published: 2000-08-24; Paperback; Book
Best price: $26.99
Price in other shops: $49.99
Patterns of Software: Tales from the Software Community ImagePatterns of Software: Tales from the Software Community
by Richard P. Gabriel
Oxford University Press, USA; Published: 1998-05-28; Paperback; Book
Best price: $64.55
Just Java? 2 (6th Edition) ImageJust Java? 2 (6th Edition)
by Peter van der Linden
Prentice Hall; Published: 2004-07-01; Paperback; Book
Best price: $35.00
Price in other shops: $64.99
UML for Java? Programmers ImageUML for Java? Programmers
by Robert C. Martin
Prentice Hall; Published: 2003-06-06; Paperback; Book
Best price: $15.00
Price in other shops: $44.99
Thinking in Java (3rd Edition) (One-Off) ImageThinking in Java (3rd Edition) (One-Off)
by Bruce Eckel
Prentice Hall PTR; Published: 2002-12-06; Paperback; Book
Best price: $13.80
Price in other shops: $54.99
SQL Fundamentals with CDROM ImageSQL Fundamentals with CDROM
by John J. Patrick
Prentice Hall; Published: 1999-05-11; Paperback; Book
Best price: $12.00
Price in other shops: $44.99
C How to Program, 2nd Edition ImageC How to Program, 2nd Edition
by Paul J. Deitel
Prentice Hall; Published: 1994-01-13; Textbook Binding; Book
Best price: $25.84
Price in other shops: $70.00
Similar Books and other products
Perl Pocket Reference ImagePerl Pocket Reference
by Johan Vromans
O'Reilly Media; Published: 2011-07-30; Paperback; Book
Best price: $6.75
Price in other shops: $12.99
Mastering Algorithms with Perl ImageMastering Algorithms with Perl
by John Macdonald, Jon Orwant, Jarkko Hietaniemi
O'Reilly Media; Published: 1999-08-25; Paperback; Book
Best price: $7.85
Price in other shops: $39.99
Mastering Regular Expressions ImageMastering Regular Expressions
by Jeffrey E.F. Friedl
O'Reilly Media; Published: 2006-08-15; Paperback; Book
Best price: $24.88
Price in other shops: $44.99
Advanced Perl Programming ImageAdvanced Perl Programming
by Simon Cozens
O'Reilly Media; Published: 2005-07-05; Paperback; Book
Best price: $26.07
Price in other shops: $44.99
Perl Best Practices ImagePerl Best Practices
by Damian Conway
O'Reilly Media; Published: 2005-07-19; Paperback; Book
Best price: $21.30
Price in other shops: $39.99
Learning Perl, 5th Edition ImageLearning Perl, 5th Edition
by Randal Schwartz, Tom Phoenix, brian d foy
O'Reilly Media; Published: 2008-07-04; Paperback; Book
Best price: $50.28
Perl Cookbook, Second Edition ImagePerl Cookbook, Second Edition
by Tom Christiansen, Nathan Torkington
O'Reilly Media; Published: 2003-08-28; Paperback; Book
Best price: $27.55
Price in other shops: $49.95
Programming Perl (3rd Edition) ImageProgramming Perl (3rd Edition)
by Larry Wall, Tom Christiansen, Jon Orwant
O'Reilly Media; Published: 2000-07-21; Paperback; Book
Best price: $19.55
Price in other shops: $49.99
Learning Perl ImageLearning Perl
by Randal L. Schwartz, brian d foy, Tom Phoenix
O'Reilly Media; Published: 2011-07-01; Paperback; Book
Best price: $22.24
Price in other shops: $39.99
Intermediate Perl ImageIntermediate Perl
by Randal L. Schwartz, Tom Phoenix, brian d foy
O'Reilly Media; Published: 2006-03-15; Paperback; Book
Best price: $21.00
Price in other shops: $39.99