This is an excellent guide to Catalyst as a complete solution to web application development. The content and presentation are excellent: clear, concise, and correct - everything builds nicely on what came previously. The examples work, are explained well, and go well beyond the standard "here's a toy database-backed application, isn't that nice?" - the book additionally covers form-building, sessions, building custom models (not necessarily database-backed) REST, AJAX integration, and goes into significant detail on testing and deployment. There are some minor errors, but these are fairly easily spotted and corrected by an intermediate Perl programmer; the few that might derail the beginning reader have been documented at the Packt Publishing website with corrections; I suggest picking these up to save time.

As to style, it's clear and concise. One interesting difference from similar books is that sometimes commands are inlined in the text, and sometimes shown in the code sections. Initially, I found this a little odd, but after reading a while and working through the examples, I found that it actually forced me to read the text carefully instead of just typing things in, and led to a better learning experience. I actually picked up much more because I had to read in detail.

The book does a good job of showing you what's to be done and how, and is precise about why you are doing any particular thing, doing an excellent job of keeping your understanding in sync with what you're doing. Anything that directly relates to getting your work done is there; detailed (and not particularly useful) descriptions of every possible option are not. This is a book for the reader who wants to get work done now.

Catalyst extensions and other CPAN modules are introduced a few at a time; as you work through the examples, you build up a nice toolbox of techniques and modules that make developing with Catalyst much easier. The pacing of this is quite natural and works very well.

Summary: Solid and recommended. Slimmer than most technical books (183 pages) but densely packed. You'll learn a lot, and what you'll learn is quite useful. Beginning Perl programmers will probably find it difficult; I'd personally recommend it to intermediate-to-advanced Perl programmers (with a basic understanding of Perl object-oriented programming) who want to get their teeth into a Rails-like Web development system, and who want a comprehensive and useful book. The book is definitely Unix-centric; Windows users may not find it useful unless they choose to use a Unix-like environment.


In reply to Catalyst by pemungkah

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.