The first application for the use of others was written in perl CGI, using Lincoln Stein’s excellent and extraordinarily well-documented module. Over a decade later, I’m now in the market for some new tools for building web sites and web applications.
There are basically two different kinds of projects currently on my plate. The first is creating and maintaining static web pages for my personal sites (including this blog), which I’m planning to host on Amazon S3. The second are work-related web applications to supplement or replace that now decade-old first web application and its fellows.
For static site generation, I’ve given several candidates a try. The one I liked best until recently is Nikola, written in python and by default geared towards creating static blog sites. However, I’ve found working with python to be a painful experience, both due to its syntax and the inconsistent quality of its modules library.
But Just today I stumbled across Statocles, a new static site generator written in perl that taps the perl-based Mojolicious web development framework for much of its functionality. I really like Statocles, so much so that I’m going to spend the rest of the weekend trying to master it. After running into brick walls with a number of python modules last week, it’s refreshing to again be working with something written in perl.
As far as web application frameworks go, at the office I’ve been working with php-based Laravel, itself developed out of the Symfony framework. However, although php is popular with a large community of web developers and the language many web apps like WordPress are written in, I’ve never been a fan. Even after many years of development, php and its library of modules still seem to be immature compared to perl and CPAN.
Ironically, I’ve recently been looking at two perl-based frameworks: Dancer and its main competitor, Mojolicious. Although my initial impression is that Dancer is more user-friendly, given that Statocles requires Mojolicious, I’ll be taking a closer look at the latter in the interests of efficiency.