Matt, I guess what I'm trying to express is that - in my opinion - there is a learning curve to Catalyst. I think more documentation could ease that learning curve and help people get up to speed faster on how to write, debug, and use Catalyst apps.
Please understand that I'm certainly not trying to incite an editor war here or criticize Catalyst in any way other than constructively. >From the perspective of a newbie to Catalyst, there are a lot of hurdles to jump - and removing those hurdles (or at least lowering them ;) with more documentation would help a lot ... in my opinion. I program in Perl for a living, so I'm fortunate that I have a lot of familiarity with the Perlish way to do things. I can't imagine being a newcomer to Perl as well as Catalyst. The hurdles (again, just in my opinion, so take it for what it's worth) are: Installation The biggest help here is the shadowcat installer. Of course, it's not apparent to people who are very new to Perl that this installer script uses Perl and CPAN to install the required modules. I've also used Task::Catalyst to install things - and it is very cleanly done. However, a default config of CPAN has the user stuck at the CPAN screen hitting 'y' over and over ... so some education on this could go a long way. Additionally, I had a very bad experience trying to install Catalyst via PPMs with ActiveState's Active Perl. Those PPMs need a lot of work. Getting started The tutorial on CPAN is great help here, but it only goes so far. The Cookbook was actually more helpful where it counted, so expanding the Cookbook with lots of examples of how to do things with Catalyst would be helpful. Jonathan's book really fills the gap here. Some in-depth articles could really help though - for example, a tutorial on how to use TT and TTSite with Catalyst. Debugging Ideally, I would find the articles I mentioned above, so I can read an article and know how to debug Catalyst with my preferred IDE, in the way that is most advantageous for me (i.e. logging vs Perl debugger vs other debugging methods). An article that walked through the different options for debugging catalyst apps and highlighted their strengths and weaknesses would be nice. An article on how to set up Eclipse to remotely debug Catalyst apps would be nice as well. Eclipse is a widely used application, and many programmers prefer a graphical IDE. An article on how to set up Komodo for remote debugging Catalyst apps would also be nice to have. Komodo is gaining a lot of reputation as 'The' Perl IDE. I would actually prefer to use it myself, but my company has standardized on Eclipse - so I'm stuck with it. That's another good point to make here - many companies have standardized development tools that the programming peons *have* to use. I don't think "keep practicing your vi/emacs" is a good answer to the question of how to code and debug Catalyst apps in an IDE. That choice may have already been made for them, and if they can't figure it out easily on their own, they may give Catalyst a pass and move on to CGI::Application or some other framework. Sure, each user has the right to make that choice, and those frameworks have their particular strengths. However, missing out on Catalyst's elegance and power simply because you can't get an IDE to play nice with it seems criminal. Deployment Jonathan covers this in his book, but the topic could certainly stand a more in-depth treatment. What options do I have for deploying my application? Executable? Makefile.PL? Tarball? CPAN? Production How can I set up my infrastructure to make my Catalyst app as robust as possible? What are the different ways I can configure my infrastructure to support my application? Load-balanced? Write a front-end server that hands requests to backend servers? Should I use Apache 1 and mod_perl or Apache 2 and mod_perl2? Are there any advantageous things I can do when I am setting up mod_perl/mod_perl2 to make development easier, less tedious, or provide more performance in Catalyst? What about Fast CGI? What about the other Catalyst::Engine options? All this additional documentation may not be necessary, but it would be *helpful*, especially to those who are new to Perl. It would also be helpful to those coming to Perl and Catalyst from the Micro$oft paradigm - they will generally expect to use a graphical IDE with inline debugging/inline remote debugging to write code. I'm not advocating turning away from using CPAN to contain and maintain the documentation. I'm advocating adding to the documentation and providing it in a more friendly format on the catalyst.perl.org site. Integrate the documentation with the look and feel of the site and don't just shuffle the user to CPAN. Add some articles and such to the site that showcase how to do things and how easily those things can be done with Catalyst. Maybe even open up the catalyst.perl.org site for user contributions. If someone asked me what Catalyst was all about, I wouldn't send them straight to CPAN. I'd recommend Jonathan's book to them. CPAN is great when you want to read the documentation for module X::Y::Z. It's not great when you're wanting to know how to do Thing 1 and Thing 2 with module X::Y::Z *and* module A::B::C within Catalyst. Nathan > The documentation for the various things Peter already mentioned describes > them in detail; there's nothing particularly Catalyst-specific about the > debuggers. > > What are you looking for that isn't already in the documentation? > > -- > Matt S Trout Need help with your Catalyst or DBIx::Class project? > Technical Director http://www.shadowcat.co.uk/catalyst/ > Shadowcat Systems Ltd. Want a managed development or deployment platform? > http://chainsawblues.vox.com/ http://www.shadowcat.co.uk/servers/ > > _______________________________________________ > > List: Catalyst@lists.scsys.co.uk > Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst > Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/ > Dev site: http://dev.catalyst.perl.org/ > _______________________________________________ List: Catalyst@lists.scsys.co.uk Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/ Dev site: http://dev.catalyst.perl.org/