Hacker News new | comments | ask | show | jobs | submit login

Catalyst and CGI::Application (or Titanium) are pretty much where it's at with perl web development. CGI.pm is a relic at this point. There are better, smaller, faster core CGI modules if that's all you want. Likewise, consider using a more modern wrapper like SQL::Abstract rather than straight-up DBI.

Catalyst has a somewhat steep learning curve and perhaps invites you to waste time evaluating alternative modules for functionality. It's not "opinionated" and you can choose very different subsystems to get the same job done. The upside is that Catalyst is probably the most powerful web framework out there. DBIx::Class is the most feature-full ORM out there, for one point (trounces ActiveRecord).

Titanium is much, much simpler and has the advantages that entails. You'll be up and running with Titanium in a day. It's a better option for the rare/occasional web app developer (like me).

Agreed, Titanium seems really useful. It bundles a lot of the modules that I usually use with CGI::Application and is logically put together.

I have about 12 years of Perl CGI stuff for different projects (most of which is still running) but I started to feel geek envy a few years ago when the world decided that you were not cool without AJAX. I looked into Java EE and realized I just was not an "enterprise" person and then at the different PHP frameworks before doing by first Rails app using Hobo. I have to say that was remarkably fun and easy to put together but I'm still not completely happy about having to run a cluster of mongrels and having to coordinate them with Apache. (That might not be the cool way to deploy Rails apps now, mea culpa.)

CGI::Appplication and Titanium (including modules like HTML::Template and HTML::FillInForm) are simple to use, work with all of the authentication stuff that I interface with, and scale perfectly for the number of users that I typically have.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact