Perl Maven

Search for '{{search_term}}'

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

Refactoring Perl code

Refactoring is the task of changing code to make it more readable, more maintainable, while not changing it's behavior at all.

The simplest example I usually give is that of changing a variable name to be meaningful.

We all know that naming things is really hard so when we write code and we read in some data we can easily start using meaningless variables. For example $x, $data, or $temp. We might finish our implementation, the code starts doing what we expected it to do, but we still have these meaningless variables.

When a few days or month later we need to come back to make changes we'll be baffled by the meaning of these variables.

It is better to change them to something meaningful to make it easier to read and understand the code.

The process of these changes is called refactoring. In this series of articles we are going to see how to do that.


Refactoring Perl code


Pro: Passing multiple parameters to a function in Perl

How can you implement a function that will accept several variables? After all in Perl all the parameters passed to a function are shoved into the @_ array of the function.

For example, what if you are creating a function to send emails. You would like the user to pass in a parameter for the "from" field, one for the "to" field, one for the "subject", one for the "plain text" version of the email, one for the "html" version of the email. Maybe even a parameter for the "cc" and the "bcc" fields.


Passing multiple parameters to a function in Perl