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.
- 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
- Angular JS
- Flask, the Python microframework.
- Groovy, the programming language used for Jenkins pipelines.
- Jenkins, the automation server used for Continuous Integration and Continuous Delivery.
Continuous Integration (CI) means you create a very tight loop to get feedback for changes made to the code.
A good CI system will run every time you make some changes to the source code (or precisely every time you push it out to the hosted copy of your source code.)
In the CPAN Digger our goal is to understand and to help to improve the code that is CPAN.
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.