You don't really know a language until you understand its libraries.

You can learn Smalltalk's syntax in an afternoon, but you won't be able to do much with it until you learn its idioms and how it's organized and what's where and how to use it.

You can dabble in a hundred languages—a new language a month for the rest of your professional life—but if you can't write anything more substantive than "Hello, world!" or the first program I ever wrote on my own, you don't really know them:

10 INPUT "WHAT IS YOUR NAME? "; N$ 20 PRINT "HELLO "; N$ 30 PRINT " " 50 GOTO 20

(I haven't proven that program bugfree or idiomatic, merely correct.)

Understanding how a language works is necessary to programming well in that language, but it is not sufficient. I read the Camel book cover to cover, but I had to read the Perl Cookbook before I could program Perl practically. (I also needed a couple of years of experience before I could call myself an adept programmer, but the only way to get that experience is through experience.)

As Simon Cozens wrote in the introduction to the second edition of Advanced Perl Programming, "advanced Perl programming has become more a matter of knowing where to find what you need on the CPAN, rather than a matter of knowing what to do." His edition reflected that, and I've used that book on two projects this month. Unfortunately, the book is five years old and could only cover a fraction of the CPAN.

It's no secret I'm looking for projects after Modern Perl: The Book comes out. I'm trying to convince Stevan Little and Chris Prather to write a book about the obvious (and if you'd like to read it, please encourage them to do so). I think it's time for a new book on Perl and testing.

I also keep thinking of a bigger goal. The Perl Cookbook is seven years old and doesn't even cover Perl's testing revolution. Don't expect a third edition soon or ever (sic transit gloria animaila libri).

Yet what if there were a wiki of modern Perl idioms or modern Perl solutions which focused on the use of CPAN distributions and generally stayed up to date with both new versions of Perl and new software as it came out? Think of it as an expanded version of Task::Kensho with explanations and sample code crosslinked and organized by topic. I'd use such a resource, if it existed.

I also admit, I'd love to publish a book drawn from that wiki. I'd happily edit the prose. I'd done all author royalties to TPF, and I'd even make a raw PDF available. This author model worked well for other books such as the Python Cookbook. Would anyone else like to see it for Perl?