in reply to Is using Catalyst cheating?

Thanks for linking to my site :-)

Anyway,

Having a (couple of) good framework(s) to start with will certainly help you get a handle on the problem. In the end though, there's nothing like building something from scratch to really find out where the difficulties and trade-offs are for that particular problem.

I'm not sure what I would suggest if your goal is to learn as much as possible. Probably to try a few different frameworks, maybe learn one or two of them fairly well, and then possibly try and create some framework better suited to some new problem that doesn't get served very well with the existing ones.

Note that none of this is particularly about learning Perl. Having a good overview of (how to deal with) the problems in your domain is more useful than having in-depth knowledge of the programming language "of the moment". But using a good framework will also help you understand Perl better, and if the choice is between writing a new framework with minimal perl knowledge and using an advanced framework (and so, being exposed to probably more advanced perl code), you might just learn more (Perl) by using the existing stuff.