Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:

Respected Monks,

Which is a good book between Beginning Perl (Ovid) and Learning Perl? I can only buy 1 as of now, but I need something that covers a lot of material, and also a book that teaches Perl the correct way.

  • Comment on Beginning Perl (Ovid) Vs Learning Perl?

Replies are listed 'Best First'.
Re: Beginning Perl (Ovid) Vs Learning Perl?
by karlgoethebier (Abbot) on Aug 28, 2020 at 23:31 UTC

    For free

    «The Crux of the Biscuit is the Apostrophe»

    perl -MCrypt::CBC -E 'say Crypt::CBC->new(-key=>'kgb',-cipher=>"Blowfish")->decrypt_hex($ENV{KARL});'Help

Re: Beginning Perl (Ovid) Vs Learning Perl?
by eyepopslikeamosquito (Bishop) on Aug 29, 2020 at 07:01 UTC

    I can only buy 1 as of now, but I need something that covers a lot of material, and also a book that teaches Perl the correct way
    Well, if you can only buy one, perhaps the classic Programming Perl because it is over 1000 pages in length! :) Much shorter, at less than 300 pages, is the excellent and free Modern Perl by chromatic. Why is Modern Perl so short? chromatic explains:

    Modern Perl assumes you're already decent at programming, so it elides some basic stuff in favor of explaining how Perl works from philosophy to programming in the large. Learning Perl assumes you've never programmed before, so it spends more time on the basics, covers less of the language, and doesn't explore the philosophy of Perl in as much detail.

    -- chromatic (author of Modern Perl) comments on the philosophy behind his book (see also excellent reply by xdg)

    Modern Perl also tends to be kept more up to date with the latest version of Perl than Programming Perl.

    Book questions come up often enough that I keep a list of similar nodes here.

Re: Beginning Perl (Ovid) Vs Learning Perl?
by Arunbear (Prior) on Aug 29, 2020 at 16:19 UTC
    If you can only get one of the two, I suggest Ovid's book because it covers more material. "Learning Perl" is the start of a series which continues in "Intermediate Perl" and "Mastering Perl", whereas Ovid's book starts at the beginning and goes on to cover advanced topics as well.
Re: Beginning Perl (Ovid) Vs Learning Perl?
by perlfan (Vicar) on Aug 29, 2020 at 12:22 UTC
    This is an impossible question to answer. There is general agreement about some things, but for the most part everyone has their own set of resources to suggest. Maybe one day you will have your own.

    My standard set of recommended books, in order of my preference for actually learning the breadth of Perl, are:

    1. Object Oriented Perl (Conway)
    2. Effective Perl Programming (Hall, et al.)
    3. Mastering Perl (brian d foy)
    4. Perl Best Practices (Conway)
    5. Perl Medic (Scott)

    >Perl the correct way

    No book will teach you this any more than a book on a Human language will teach you how to speak or write the "correct way". Writing Perl, studying others' Perl, and participating in the community will be your best guide here. Same with any language, immersion is the best path for achieving the proper levels of enlightenment. There is a tremendous amount of free information out there. I encourage you to:

    • read standard perldocs
    • read module POD
    • read internal source code of the modules you use
    • read the resources listed in Perl News
    • watch the countless YAPC, TPC, and Perl Workshop videos on ewetube
    • lurk/participate here

    Advanced Books I like:

    1. Higher Order Perl (Dominus) site
    2. Practical Text Mining in Perl (Bilisoly)
    3. Perl 5 Internals (Cozen) pdf
    4. Perl Testing: A Developer's Notebook (Langworth)

    Milestones of Personal Development (no order, but everyone needs goals):

    • ask questions on Perl Monks
    • answer questions on Perl Monks
    • locate your local Perl Mongers group
    • actually attend a Perl Mongers meeting
    • become a CPAN author
    • contribute to someone else's CPAN module
    • get into an argument on p5p about an aspect or change in Perl you're passionate about
    • get banned from p5p due to overzealousness xD

    One final note I will add is that one does not simply learn Perl. The best way to learn it is to use it to create something. Anyone that is passionate about accomplishing something with Perl will learn it along the way. So the best marker for success is having a motivating project or application of Perl to achieve. If you don't have one, think of one or find a project to get involved in. Good luck!

Re: Beginning Perl (Ovid) Vs Learning Perl?
by Anonymous Monk on Aug 29, 2020 at 03:39 UTC

    Over the years, this book Perl by Example has proved helpful for many folks beginning with Perl.