Perl Maven

Search for '{{search_term}}'

Would you like to know more about technology?
Do you have time while you commute to work or back home?
Try the new Code-Maven Open Source podcast.

Perl tutorials and courses

Modern Perl Web Frameworks

  • Mojolicious light-weight web framework with rainbows and unicorns.
  • Perl Dancer light-weight web framework to rock.
  • Catalyst The MVC web framework of Perl.
  • PSGI/Plack, the low-level superglue between Perl web application frameworks and web servers.
  • CGI, the Common Gateway Interface, for old-school web applications.

Object Oriented Perl

  • OOP, the classic way to write Object Oriented Perl code.
  • Moo, the Minimalist Object Oriented system for Perl.
  • Moose, the 'post modern' Object Oriented system for Perl.

Other Series

Projects and Collections

Code-Maven series

If you are a beginner, or would like to refresh your Perl programming knowledge, you can go over the Perl tutorial or watch the Beginner Perl Maven video course.

If you need to maintain a large piece of software written in Perl by other people in the last 5-10-15 years, that's a challenge. Especially if you did not get proper training in Perl. You are probably limited to a specific and old version of Perl. Check out, the Perl tutorial! You can probably skip the part about installing Perl, but the rest of the tutorial will be relevant for you.

Perl is often used in Test Automation. If you work in this field, or if you'd like to work in this field (it is much more fun to find bugs in other people's code than in yours :), then you can read the Perl tutorial and the series on Test Automation using Perl.

If you build new web applications - either privately or inside a company - you can start by reading the article comparing CGI, mod_perl and PSGI. From there you can go on reading the generic Perl tutorial or the articles on Mojolicious, Perl Dancer, Catalyst, PSGI/Plack, or even CGI, the Common Gateway Interface, for old-school web applications.

Recent Articles

Test::Builder object

As we saw earlier, Test::Builder is the backbone of the testing framework of Perl. The Test::Simple, Test::More are built on top of this module and there hundreds of other modules in the Test::* namespace on CPAN that use this same back-end. All those modules provide extra testing functionality.

Though actually there are a few modules in the Test:: namespace that are not "testing modules" in the same way as the the ones we are talking about here, but the majority can be loaded in any test script and the majority provide extra testing functions.

As we create is_any, other created lot os other such functions and modules.


Test::Builder object


Basic Authentication with LWP::UserAgent and HTTP::Request::Common

A while ago I wrote an article on LWP::UserAgent and Basic Authentication and posted it on Reddit as well, where a user pointed to an even simpler solution, one that I did not find in the documentation myself. It uses LWP::UserAgent and HTTP::Request::Common which is a dependency of LWP::UserAgent anyway.


Basic Authentication with LWP::UserAgent and HTTP::Request::Common


Creating a testing module

In the previous screencast we created the is_any test function. This time we are going to move it to a separate module to be useful in other test scripts and to other test developers as well.


Creating a testing module