Beginner Perl Maven

The Beginner Perl Maven tutorial book will teach you the basics of the Perl programming language. You'll be able to write simple scripts. Analyze log files. Use some CPAN modules. Read and write CSV files. It will be a good foundation for you to build on. For convenience it is divided into part 1 and part 2.

The free on-line version of the tutorial is currently in development. Many parts are ready. Additional parts are being publish every few days. The last one was published on February 5, 2012.

There is also an e-book (PDF) version of the material available for purchase. In addition to the free tutorial, that version also includes the slides from the corresponding course including many exercises and their solutions. The course material covers all the parts, including the areas that are not yet covered in the free version.

The companion video-courses include over 210 screencasts, a total of more than 5 hours of video. In addition to presenting the material it also provides explanations to the soluions of all the exercise. The package also includes the source code of all the examples and exercises.

Free on-line Beginner Perl Maven tutorial (part 1)

Introduction

  1. Install Perl, print Hello World, Safety net (use strict, use warnings)
  2. Editors, IDEs, development environment for Perl
  3. Perl on the command line
  4. Core Perl documentation, CPAN module documentation
  5. POD - Plain Old Documentation
  6. Debugging Perl scripts

Scalars

  1. Common warnings and error messages
  2. Automatic string to number conversion
  3. Conditional statements: if
  4. Numerical and string operators
  5. undef, the initial value and defined
  6. Here documents
  7. Scalars
  8. Comparing scalars
  9. String functions: length, lc, uc, index, substr
  10. Number Guessing game (rand, int)
  11. Perl while loop

Files

  1. die, warn and exit
  2. Writing to files
  3. Appending to files
  4. Open and read from files using Perl
  5. Don't open files in the old way
  6. Binary mode, dealing with Unicode
  7. Reading from a binary file, read, eof
  8. tell, seek
  9. truncate

Lists and Arrays

  1. Perl foreach loop
  2. The for loop in Perl
  3. Lists in Perl
  4. Using Modules
  5. Arrays in Perl
  6. Process command line parameters @ARGV, Getopt::Long
  7. How to read and process a CSV file? (split, Text::CSV_XS)
  8. join
  9. The year of 19100 (time, localtime, gmtime) and introducing context
  10. Context sensitivity in Perl
  11. Sorting arrays in Perl
  12. Unique values in an array in Perl
  13. Manipulating Perl arrays: shift, unshift, push, pop
  14. Stack and queue
  15. reverse
  16. the ternary operator
  17. Loop controls: next and last
  18. min, max, sum using List::Util

Subroutines

  1. Subroutines, Functions and procedures in Perl
  2. Parameter passing and checking for subroutines
  3. Variable number of parameters
  4. Returning a list
  5. Recursive subroutines

Hashes, arrays

  1. Perl Hashes (dictionary, associative array, look-up table)
  2. exists, delete hash elements

Free on-line Beginner Perl Maven tutorial (part 2)

Regular Expressions

  1. Regular Expressions in Perl
  2. Regex: character classes
  3. Regex: quantifiers
  4. Regex: Greedy and non-greedy match
  5. Regex: Grouping and capturing
  6. Regex: Anchors
  7. Regex options and modifiers
  8. Substitutions (search and replace)
  9. trim - remove leading and trailing spaces

Perl and Shell related functionality

  1. Perl -X operators
  2. Perl pipes
  3. Running external programs
  4. Unix commands: rm, mv, chmod, chown, cd, mkdir, rmdir, ln, ls, cp
  5. Windows/DOS commands: del, ren, dir
  6. File globbing (Wildcards)
  7. Directory handles
  8. Traversing directory tree (find)

CPAN

  1. Download and install Perl (Strawberry Perl or manual compilation)
  2. Download and install Perl using Perlbrew
  3. Locating and evaluating CPAN modules
  4. Downloading and installing Perl Modules from CPAN
  5. How to change @INC to find Perl modules in non-standard locations?
  6. How to change @INC to a relative directory
  7. local::lib

Few examples for using Perl

  1. Reading Excel files using Perl
  2. Creating Excel files using Perl
  3. Sending e-mail using Perl
  4. CGI scripts with Perl
  5. Web applications with Perl: PSGI
  6. Parsing XML files
  7. Reading and writing JSON files
  8. Database access using Perl (DBI, DBD::SQLite, MySQL, PostgreSQL, ODBC)
  9. Accessing LDAP using Perl

Beginner Perl Maven book and screencast series

WhatDetailsPrice
On-line tutorialPartial, under development
E-book (part 1)The on-line tutorial
+ Full Training material
+ 30 exercises and solutions
= 125 pages in PDF
E-book (part 2)The on-line tutorial
+ Full Training material
+ 20 exercises and solutions
= 90 pages in PDF
E-book (1+2)Both parts
+ unlimited updates
as new editions are published.
Video course
(part 1)
The E-book
+ 124 screencasts,
a total of more than 3 hours of screencasts
+ explanation of the solutions
+ The source code of the examples and exercises.
Video course
(part 2)
The E-book
+ 82 screencasts,
a total of more than 2 hours of screencasts
+ explanation of the solutions
+ The source code of the examples and exercises.
Live On-line courseVideo course
+ 2 x 4 hours live presentation
Currently planning.
$479
Class-room training4 * 8 hours (part 1 + 2)
(ask for pricing)

About the creator of the Perl Maven materials

Gabor Szabo has worked as a developer, as build engineer and a system administrator at various points in his life. Currently most of his time is spend as a Perl trainer and an open source developer. Gabor has been using Perl since 1995 and teaching Perl since 2000. He is the author of Padre, the Perl IDE and he is running the Perl Weekly newsletter. He is the maintainer of several Perl modules on CPAN and has received the White Camel award for his contribution to the Perl community. He is the maintainer of the DWIM Perl distribution for Windows.

Preview: Getting Started

This is the very first part in the video course.

What's the difference?

What's the difference between the video course and the free Perl tutorial?

The video course...

  • ... includes hands-on explanations.
  • ... has the solutions for all the exercises explained in detail.
  • ... includes a PDF version of all the material.
  • ... has the source code of all the examples and exercises in a convenient format.

Preview: Perl on the command line

In this preview you'll see that in some of the lectures I show live work.

Follow the Perl Maven

Still not convinced?

You can get notified when the next part of the free tutorial is published


In the comments, please wrap your code snippets within <pre> </pre> tags and use spaces for indentation.
blog comments powered by Disqus
Online courses:


Would you like to get
updated when I publish
the next article?

Follow the Perl Maven:

Facebook Google Plus Twitter RSS feed