Every perl program I've ever written has been a learning experience. Each program has involved broadening my perl vocabulary, learning how to use a new module or two, etc. According to the late1 great Larry Wall it's perfectly acceptable to speak "a subset of perl" and even "perl baby talk". While I'm by no means a proficient perl programmer, I thought I had at least a basic understanding of things like the context sensitivity of many perl functions. Evidently not. I'm well aware of things like scalar and list context, but a piece of code I wrote earlier today which uses bitwise negation (via the ~ operator) introduced2 me to numeric vs. string context, which I later learned about in perlop2.

Roughly four months after my first perl program, there is no end to this learning process in sight. And I'm beginning to wonder, "does this learning process ever end? Should it?" Do you ever reach a point where you are coding entirely from memory, without the need to brush up on a nuance of some obscure perl function, or learn the use of some new module? What kinds of realistic goals might a young perl programmer set for himself? Aside from reading good books, applying what I learn, and of course hanging out in the monastery, what other ways might I broaden my knowledge of perl, and computer programming in general?

1 In the "fashionable" / "he said he'd be here to speak at 1800 sharp. It's only 1823, so I'm not worried yet." sense of the term. Not the equally permanent but less attractive "posthumous" sense.

2And had I not enabled warnings via the -w argument on the shebang line I would still be pulling my hair out trying to figure out where the problem was. Many thanks to all the monks who fill the monastery halls with chants of "use strict, enable warnings" during the otherwise silent moments.

And no, I don't own 27 pairs of sweatpants.