Rating: 7 out of 10
Overview:
Full review:
Well, when I got into Perl programming I went to ThinkGeek and bought the Perl book package (sadly, no longer available), thinking that would get me started in the "right" direction. Well, I have three of the books out of that collection sitting next to me right now. Programming Perl 3rd edition, Perl Cookbook, and PERL Black Book. I can tell you I use the Perl Cookbook and the PERL Black Book 80% of the time, because I have a decent handle on most things, so specific problems are what I usually encounter and the issue => solution format of the two books is a life saver.

The PERL Black Book is very well organized, with a TOC at the beginning, and then a TOC at the start of every chapter. It makes finding specific "issue => solution"s very easy

The Perl Cookbook is a companion to Programming Perl, so it is easy to overlook the details that are left out of the Perl Cookbook, but in the PERL Black Book you feel you are getting the solution but little to no explanation of the nitty gritty. This can be a problem, but again, isn't for me or anyone who also owns Programming Perl.

The layout of the chapters is also a little weird. Some basic skills are presented in chapter 1, but this chapter is no substitute for part I and III of Programming Perl .The chapter on Scalar and List variable are also a little thin, and the items in it seems to be in a weird order, i.e. you never see two things integrated well, because, again, the book is made up of issue => solution sections, not general idea => indepth explanation.

This is a symptom of a larger problem: trying to explain complex issues in a page is nearly impossible. On page 55 for example it tells the reader how to convert between decimal and binary numbers using pack and unpack, but just gives the solution, no explanation (there is a little note to see chapter 11). Now if you are just learning perl, and are on page 55, 7 pages after learning what a scalar value is, are you going to A) need to convert between decimal and binary, B) understand what you are typing (especially for debugging purposes), or C) jump to chapter 11 and understand what is going on? Probably not, but the whole book is centered around issue => solution format, making it impossible to explain anything with out breaking the paradigm.

There isn't really anything substantial on style, or building solid, debugged programs, until the very end of the book. So the issue is, learn the hard boring stuff first (strict, warnings, context, $_, etc.) or hacking together what will work to get yourself started, and then integrating that “boring” stuff. Well, I prefer the former, and as such would suggest that anyone who wishes to start programming perl pick up Programming Perl, to get a good solid base, and both Perl Cookbook and PERL Black Book as references (they complement one another very well, PERL Black Book provides many many examples, and ways to use perl).

I personally look up a solution in PERL Black Book if I have a problem, but had I just read PERL Black Book in a linear fashion I feel I would have ugly hacked together scripts (not that I dont already).

The real power of PERL Black Book is that there is a solution for most problems, granted you might not understand exactly what you are doing.


In reply to PERL Black Book: Indispensable Problem Solver by smgfc

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.