I'd just like to add one more answer to the question "what are modules?", namely
"worth taking the time to learn about"
My first six months working with Perl I took the attitude that by the time I'd figured out each new module I could have done the work myself. It was a painful learning process. I now have the zeal of the convert, and my first instinct when I come up with a new problem is to browse CPAN. My advice, FWIW, is,
if in doubt assume there's a module that will do it for you.
In particular, if you're working with databases, I'd encourage you to check out DBI.pm, which makes a lot of things a different order of magnitude easier, and even makes some problems go away altogether (here's just one
example of what I mean).
Remember it's a J curve... you go a LONG way up for a very little dip at the start. I've tried both ways, and I know which I like better!
§
George Sherston