Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change

Best Perl Books of All Time

by Ovid (Cardinal)
on Apr 15, 2006 at 02:43 UTC ( #543480=perlmeditation: print w/replies, xml ) Need Help??

I've been thinking about the Perl books that I have read and I wondered what the best Perl books of all time are. Naturally, it's not an easy question. After much debate with myself over a beer and carefully selecting a voting group (me), I finally narrowed it down to a few categories:

Best Perl Book for Beginners

That has to go to Learning Perl, 4th edition, by Randal (one "l") Schwartz, Tom Phoenix and brian d foy. Though some may feel that there are other beginner books for Perl which are better, this one is by well-known, trusted authors and it's regularly updated to cover the latest versions of Perl. Further, they have a proven track record of teaching Perl. It's tough to do better than this book.

Best Perl Book for General Reading

I'll give this one to Perl Best Practices by Damian Conway. I don't agree with everything in this book (inside-out objects, anyone?), but it's a phenomenal work which few could undertake. Furthermore, even if you disagree with some of what Damian has to say, he makes persuasive arguments and you'll have to think about what he has to say. That's never a bad thing.

The Perl Book I Want Everyone to Read

Perl Testing: a Developer's Notebook by Ian Langworth and chromatic. Hands down, this is the one everyone should get their grubby little hands on and start following. If anyone asks me how I got to be such a good programmer (though that's a questionable thing), I say "testing". There is no single thing which has made me a better programmer than testing. Period.

Most Fun Perl Book

The upcoming Perl Hacks by chromatic, Damian Conway and, er, me. OK, maybe I'm biased on this one and to be fair, I hardly feel I deserve to be on the cover given the quality of contributions from the other two authors, but this book is a lot of fun. You'll delve into dark corners of Perl that you never knew existed and you'll have a blast doing it.

Best Perl Book of All Time

Higher Order Perl by Mark Jason Dominus. While not recommended for beginning Perl programmers, experienced programmers will not only learn new ways of thinking about Perl, they'll learn new ways of thinking about programming. If you think you'll learn nothing from this book, you're wrong. If you say you've read this book and learned nothing from it, I suspect you're a liar (unless you're Knuth).


New address of my CGI Course.

Replies are listed 'Best First'.
Re: Best Perl Books of All Time
by McDarren (Abbot) on Apr 15, 2006 at 03:24 UTC
    Surely the Camel has to fit into this list somewhere? "Best Perl General Reference Book" perhaps? (Although apart from being an awesome reference book, I think most of it is worth reading purely for entertainment value).

    Agree with what you say about PBP. This and the Camel have a permanent place on my bedside table and every night I read a few pages of one or the other :)

    Also agree with your comments regarding HOP. I have a copy of that, but I've found that at my level - it's just too heavy going. Perhaps I'll get back to it later.

    Perl Hacks sounds great, and I'll definitely be looking out for that one.

    I'm also looking forward to brian d foy's up and coming Mastering Perl.

    Darren :)

      I don't see why the Camel should be on that list. It was never important to me. I borrowed a copy for a few days and found that it wasn't all that useful. Eventually I just read the documentation and other books which aren't duplicated in the docs.

      ⠤⠤ ⠙⠊⠕⠞⠁⠇⠑⠧⠊

        I don't see why the Camel should be on that list.
        That's fair enough, and I won't argue with you.
        I guess it really comes down to how much individual value you get out of any particular book. When I think about my own personal experience with Perl, the three things that have had the greatest impact upon my learning curve were:

        • getting hold of a copy of the Camel,
        • getting hold of a copy of PBP, and
        • discovering Perlmonks :)

        So if somebody just starting out with Perl were to come to me and ask for some recommendations - that's the list I would give them.

        Darren :)

      I agree about High Order Perl, but the Lama book ( if you refer to it ) is not really good for beginners since it left many key features of Perl and is quite incomplete. Recently I got Sam`s learning Perl for 24h and I must say it is quite well writen with a lot of practical examples.

Re: Best Perl Books of All Time
by borisz (Canon) on Apr 15, 2006 at 09:53 UTC
    The Best Perlbooks for me are:

    Programming Perl
    Perl Best Practices
    Object Oriented Perl
    Effective Perl Programming

    if one of the books is missing in your list, then it is incomplete.

      ++ for Effective Perl Programming. It should be on every perl dev's bookshelf -- I'd recommend it over Damian's Best Practices.

Re: Best Perl Books of All Time
by rjray (Chaplain) on Apr 15, 2006 at 08:39 UTC

      It's certainly high on my list, but which category? I really didn't think there was any one spot that it could fit in. I do like that book, though. It's definitely a must read for many programmers.


      New address of my CGI Course.

Re: Best Perl Books of All Time
by adrianh (Chancellor) on Apr 15, 2006 at 17:41 UTC
    Best Perl Book for Beginners ... Learning Perl,

    Hmm... depends on what you're calling "beginner" I guess :-) For people who already know another language I'd recommend the Camel over Learning Perl - which seems aimed more at people new to programming

    Personally, when teaching newbies, I don't find Learning Perl that useful. Don't get me wrong it's a nice book, but I don't find that the order and emphasis of topics match the way I teach (e.g. I introduce OO and references quite early.)

    Unfortunately I've not come across anything else I like either - so maybe it does still count as best...

    Best Perl Book for General Reading ... Perl Best Practices

    I'd probably nominate Peter Scott's excellent Perl Medic. A darn fine combination of decent prose and good advice. I'll save PBP for later...

    The Perl Book I Want Everyone to Read ... Perl Testing: a Developer's Notebook

    This is the category I'd vote Perl Best Practices in under. It would make my life a lot easier if everybody followed the practices in this book. Even the ones I disagree with!

    Now - you know I'm a testing junkie and, like you, testing has radically improved the quality of the software I help develop. However while PTDN is a nice introduction to testing with Perl, and I bought copies for work, I don't think that its the sort of book to turn people on to testing who aren't already test infected. It demonstrates how to test - but not why testing can be so good.

    So PTDN would fall into the category of "Perl book I would want people to want to read" :-)

    Most Fun Perl Book

    Higher Order Perl.

    (It is entirely possible that I have a different definition of fun from other people.)

    Although one of the main effects of my reading it was making me go reinstall Lisp on my powerbook - which may have not been its authors intent :-)

    Best Perl Book of All Time

    For me it'll be the Camel book. Bought three editions so far. I originally learned Perl 4 from the old pink edition, and all the others have been useful in getting an overview of everything in the language.

      So PTDN would fall into the category of "Perl book I would want people to want to read"

      That's a good category, but I classify it as "Perl book I want people to buy."

        That's a good category, but I classify it as "Perl book I want people to buy."

        I wonder why :-)

      Personally, when teaching newbies, I don't find Learning Perl that useful. Don't get me wrong it's a nice book, but I don't find that the order and emphasis of topics match the way I teach (e.g. I introduce OO and references quite early.)

      I think Elements of Programming with Perl provides both more breadth and more depth than the Llama. Though I don't like everything about the book, it is the best beginner's book out there.

        The Learning Perl book is useful for some people. However, I have found that others respond well to simon cozens Beginning Perl ISBN 1861003145

Re: Best Perl Books of All Time
by spiritway (Vicar) on Apr 15, 2006 at 05:26 UTC

    I liked Perl in a Nutshell, by Nathan Patwardhan, Ellen Siever, and Stephen Spainhour. I wouldn't recommend it to a beginner, but I like how it arranges information in a way that's easy to find.

      I wouldn't recommend it to a beginner....

      Really? You wouldn't recommend it to a beginner? I might, depending on the circumstances.

      I think it boils down to

      • How people learn best, and
      • What situation they're learning Perl in.

      My first job coding in perl was a matter of picking apart code and understanding it; I had to do that before I could even think about refactoring, rewriting as modules, etc. I was pretty much just thrown into it, and expected to pick it up and troubleshoot things quickly. In this case, I found Perl in a Nutshell a godsend, as I could get quick answers to questions like, "What does the =~ do?" or "How do I assign values to a hash?". Oh, and the Perl Cookbook was nice, too, for that. Since I also learn better by examples, I found these very useful.

      As my interest in Perl grew and I had more time to think and learn about *why* things were the way they were, and I also realized the code I was working with was pretty monolithic, with little or no use of modules, I found the Camel to be more useful. PBP wasn't around for me then, but I think it'd be somewhere in between - it's a good balance of examples and explaining of *why*.

      -- Burvil

        As always, YMMV. I would not recommend this book to a beginner, because I did not find it useful when I was a beginner (more so than now). It often relied on the reader understanding things that I had not yet learned, and that I was not readily able to learn from that book. Others, no doubt, have had different experiences. Those more intelligent (or more code-savvy) than I am would perhaps find the book more useful, even as beginners.

Re: Best Perl Books of All Time
by apotheon (Deacon) on Apr 15, 2006 at 07:29 UTC

    Actually, for Perl beginner books, I like a trilogy: the camelid trilogy, that is. One could do far worse for learning the Perl language than to read the llama, the alpaca, and the camel itself, one after the other. All of them are truly excellent works.

    Unfortunately, I haven't read any of the rest of your list. They're all on my to-buy list, though.

    print substr("Just another Perl hacker", 0, -2);
    - apotheon
    CopyWrite Chad Perrin

Re: Best Perl Books of All Time
by jdporter (Chancellor) on Apr 15, 2006 at 13:14 UTC
    Best Perl Book for Beginners ... has to go to Learning Perl

    Speaking for yourself, of course. I know that the Perl community is very far concensus on that book.

    I for one feel the Camel has to be on a list of superlative Perl books... but I'm not sure what the appropriate category would be, if not Best Perl Book of All Time. Best General-Purpose Book, perhaps? For me it was both tutorial (excellent) and reference.

    Now can we vote for "best man page"?

    We're building the house of the future together.
Re: Best Perl Books of All Time
by Marza (Vicar) on Apr 15, 2006 at 05:22 UTC
      The Perl Black book?

      As I pointed out in What do you know, and how do you know that you know it?, I would strongly recommend against it.

      Incidentally if you want to fix your node, do what I did. Preview source, save a copy, go in and change the form to have an action of, then fix the href, and respond on your private copy of the page.

        Well I did try what I thought was right but planetscape beat me to the punch.

        As to the black book being bad? There are some glaring issues. Some style such as the lack of the mantra of use strict; and the CGI stuff is not handled well and some other things.

        I was not suggesting it as a beginners book. More for trying to get a concept. I usually review a couple books for something that is stumping me.

        I know it's blasphamy but sometimes the cookbook doesn't do it for me. Too thick in the head I guess. ;)

Re: Best Perl Books of All Time
by zerogeek (Monk) on Apr 17, 2006 at 09:09 UTC
    As a guy that is trying to learn Perl, I have to agree with the choice for "Best Perl Book for Beginners". Allow me to expand that thought...

    I originally picked up the "Teach Yourself Perl in 24 hours" and am posting this comment to try and prevent others from making the same mistake. Before I get slammed for my choice in books allow me to defend by saying that I have used other 24hour books and had decent returns from those investments. Turns out, I should have stuck with my gut and just picked up "Lerning Perl" from the start.

    The worst part of the 24hour book was that there were no answers for the activities/questions at the end of chapters. Makes it darn near impossible to keep going once you get stuck...

    Anyhow, 'Learning Perl' not only has suggested answers to help you along, but the writing style is much more fun to read and it does a better job (IMHO) of presenting items in a logical order.

Re: Best Perl Books of All Time
by dwhite20899 (Friar) on Apr 16, 2006 at 02:07 UTC
    Most often used Perl book (and CD) on my shelf - the Perl Cookbook. While I agree wholeheartedly with PBP and PT:aDN as choices, I consistently steal^H^H^H^H^H refer to the Cookbook to thaw my brain when I freeze on a problem.
Re: Best Perl Books of All Time
by radiantmatrix (Parson) on Apr 25, 2006 at 16:11 UTC

    I have three additions:

    • Best sub-skill Perl-related book: Mastering Regular Expressions: Powerful Techniques for Perl and Other Tools
      Perl-centric, but focused on providing an overall understanding of regular expressions. Reading this book has already revolutionized the way I approach data filtering and transformation problems, and I'm not even entirely finished with it. Great reference guide, as well.
    • Best Perl reference book: Perl Cookbook
      Not only solid solutions for common challenges, but a discussion of the various approaches and their merits or drawbacks.
    • Best Perl book on SOAP and related tech: Programming Web Services with Perl

    Yeah, the last is specialized, but a fabulous book. Interestingly enough, all three books I listed were O'Reilly publications, so it bears saying that I have no stake in O'Reilly -- just a happy customer. ;-)

    A collection of thoughts and links from the minds of geeks
    The Code that can be seen is not the true Code
    I haven't found a problem yet that can't be solved by a well-placed trebuchet
Re: Best Perl Books of All Time
by jb60606 (Acolyte) on Aug 02, 2015 at 03:35 UTC

    In a recent job interview, I expressed my frustration with Perl and confessed to my interviewer that I am "eternally new to Perl" when he asked about a few scripts I had listed on my CV. Note: I am not a programmer and I sparingly write scripts but it is something that comes in handy occasionally.

    When he asked why, I said that there's just too many ways to do a single thing, and, considering that I could go months or even years between scripts (apart from simple one liner types that shell scripting could accomplish just as easily), I often find myself at forums like perlmonks requesting help and am always pointed to a module or method that I forgot or didn't know existed

    He had a good laugh about it and recommended a particular book. For the life of me, I can't remember what it was called - but by the way he described it, it sounded like it was written for people who would prefer to avoid the modules and 'shortcuts' and just write the raw code. I'm not sure if there's any wisdom in learning Perl in this manner, but I'd like to check it out regardless.

    By any chance - does anyone know what book he was talking about?

    -- Thanks

        I took a look around Amazon, and I'm almost certain that his recommendation was "Minimal Perl: For Unix and Linux People", by Tim Maher. I recall the title emphasizing least or another synonymous adjective (not including 'basic' or other frequently used terms for books geared towards beginners). Judging by user reviews, the book's scope seems in-line with what the interviewer described, but with a lot of emphasis on Perl one-liners. Debating whether I should order a copy, or just finally finish an O'Reilly book and force myself to write a script a day to stay familiar with the language.

        . Thanks
Re: Best Perl Books of All Time
by dynamo (Chaplain) on Apr 18, 2006 at 04:27 UTC

    I had to throw my vote in here against Learning Perl and for the Camel Book. I learned by reading the Camel, switching from C++. As it turned out, the switch was permanent (it's been over 10 years, perl is definitely my main language now). But although I've tried going back to it, I still can't recommend Learning Perl for people who already know how to program.

    When you already know what you're looking to learn in a new language, the Camel Book gives you all you need as fast as you can handle. It's an exhilirating journey at top speed.

    Learning Perl feels more like a horse and cart to me.

Re: Best Perl Books of All Time
by whittick (Acolyte) on Aug 27, 2015 at 08:40 UTC

    Hi, would you say this list is still valid?

    Thanks, Ben

      With amendments. Don't read Perl Best Practices (yet?). It's not really for beginners, it's only about 50% universally agreed upon, and it will lead down unnecessary side-rails; I thought Conway's OOP book was more helpful to getting an understanding of what is possible with Perl. Higher Order Perl is also for those who are either experienced in Perl or another high level language. I would add Modern Perl to the list today. There are many, many other interesting books on Perl worth checking out.

        > Don't read Perl Best Practices (yet?)

        Really? You surely mean for beginners.

        I was already hacking Perl for years before reading PBP and it opened the doors into understanding Perl and "best practices" general.

        Agreed inside-out is definitely out now, but it's a thick book anyway. ;)

        His OOP book is brilliant too.

        Cheers Rolf
        (addicted to the Perl Programming Language and ☆☆☆☆ :)
        Je suis Charlie!

Re: Best Perl Books of All Time
by ww (Archbishop) on Apr 25, 2006 at 16:39 UTC

    SubSkills (Tie)
    Mastering Regular Expressions by Jeffrey Friedl
    CGI Programming with Perl by Gundavaram, Guelich & Birznieks

    And, (re-inforcingly, or emphatically or somesuch):

    For General Reference, to me (YMMV, as demonstrated above), the "Little Black Book," Perl Core Language, is indeed right up there with perldoc... . I can cheerfully forgive its omissions (I mean, c'mon, how many times does one need to hear the USUW mantra?) and even those few sins of commission ascribed to it.

    And I'd go a lot of places without my Amex card that I would not go without my copy of the Pocket Reference to the "Perl Debugger".

      I am 55 year old man and my interest in programming started when my son was doing some thing on his laptop and i asked , son what you are you doing . His reply was this is programming and you are too old for this. I recomend in perl beaginning perl
        I recommend you replace the son; sorta' like s/son/$new_and_less_error-prone_son/.

        Oh, right; that's not easy to do... and maybe his age-ist comment and rudeness have their roots close to the tree from which they fell? I certainly hope not, and see nothing in your post to support such an untoward notion... so, what now?

        Got it! Whip thru "Beginning Perl" and then whup his butt with code he can't match!

        BTW, I am considerably more aged than you, young whippersnapper!

Re: Best Perl Books of All Time
by Anonymous Monk on Sep 16, 2012 at 21:38 UTC
    Under beginner books, Elements of Programming with Perl is far better, in my opinion, than Learning Perl. The Camel, Object Oriented Perl, and Mastering Regular Expressions are essential further readings.

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlmeditation [id://543480]
Approved by bobf
Front-paged by TStanley
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (4)
As of 2022-12-08 09:09 GMT
Find Nodes?
    Voting Booth?

    No recent polls found