Perl tutorials and courses
- Perl Tutorial just a plain Perl tutorial. Nothing fancy.
- Beginner Perl Maven video course slidecast of the training material.
- Advanced Perl Maven video course mixed slidecasts, screencasts and plain articles.
- Test Automation using Perl for people who really want to sleep well.
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
- Perl and MongoDB, the NoSQL database used in Perl programs.
- AnyEvent, asynchronous programming.
- Net::Server the framework to build TCP/IP servers.
- MetaCPAN - articles for CPAN users, CPAN authors, client developers, and MetaCPAN developers.
- Perl Maven TV Show is a collection of interviews with Perl developers.
- SVG - Scalable Vector Graphics
Projects and Collections
- The search.cpan.org cloning project - Implementing a CPAN search engine using Plack/PSGI with MetaCPAN back-end.
- Command line phonebook with MongoDB and Moo
- Indexing e-mails in an mbox
- Counter Examples Various solution on the simple task of building a counter.
- Becoming a co-maintainer of a CPAN module - refactoring a CPAN module
- Perl::Critic lint-like static analyzer for Perl.
- Implementing a Markua Parser in Perl 5
Code-Maven series
- Angular JS
- Ansible
- Flask, the Python microframework.
- Groovy, the programming language used for Jenkins pipelines.
- Handlebars the HTML templating system written in JavaScript.
- Java
- JavaScript
- Jenkins, the automation server used for Continuous Integration and Continuous Delivery.
- Linux
- NodeJS - Server side JavaScript
- PHP
- Python
- Ruby
- SVG, Scalable Vector Graphics examples in JavaScript and Python.
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.
In the off chance you are interested in topics other than Perl, especially related to Test Automation, Continuous
Integration, Continuous Deployment, DevOps, then you are welcome to check out the list of
DevOps related training courses.
Recent Articles
Refactoring code snippet
Recently I encountered a Perl script that had some issues. e.g. Lack of use strict.
Let me show a quick refactoring of it:
Evaluate Perl project for new client - assessment
Recently a number of people have contacted me with various Perl-based projects. I had the opportunity to have an email exchange with them to try to understand what they need and if I can provide the help. A few question came up and for my future reference I wrote them down.
These were almost always old projects that needed some new feature added.
Pro: Dancer2: Skeleton
Part of the Dancer2 video course available both to Pro subscribers and attendees of the Perl Dancer course on Leanpub.