Learn Perl 5 By Doing It

Learn Perl by actually creating useful, working Perl programs for everything from web scraping to fixing your data.

4.49 (2251 reviews)
Programming Languages
14 hours
May 2013
last update
regular price

What you will learn

Learn how to use Perl for a variety of common tasks

Learn how to use regular expressions


Discover some of the amazing things you can do with Perl 5, including downloading text and images from the Internet (just like Zuckerberg in The Social Network), reformatting data, importing and exporting data to and from databases, sysadmin-type tasks like renaming or moving files, fixing even huge amounts of data quickly and even creating web CGI scripts. In this course you'll also learn how to use regular expressions, those unbelievably useful little things that have now made their way into almost every serious programming language, yet remain the bête noire of many a developer.


Learn Perl 5 By Doing It - Screenshot_01Learn Perl 5 By Doing It - Screenshot_02Learn Perl 5 By Doing It - Screenshot_03Learn Perl 5 By Doing It - Screenshot_04


Basic Perl: Getting Started

Installing Perl and Some Great Free Editors
Hello World
Downloading Text and Images With Perl, Just Like Zuckerberg
Arrays and Checking Whether Files Exist
Reading Files and Beginning Regular Expressions
Writing Files and Replacing Text
Wildcards in Regular Expressions
Groups: Finding Out What You Actually Matched
Quantifiers: Greedy vs. Non-Greedy
Escape Sequences
Numeric Quantifiers
Test Your Perl and Regex Knowlege - First Test

More on Reading Files Line By Line: Tips, Tricks and Vital Knowledge

Split and Reading CSV Files
Join and Viewing Data Using Data::Dumper
Chomp and Removing Spaces in Splits
"Pushing" Onto Arrays
Arrays of Arrays
Hashes: Lookup Tables in Perl
Iterating Over Hashes
Arrays of Hashes
Storing CSV Data in a Data Structure
Validating CSV Data
Cleaning CSV Data
Test Your Perl and Regex Knowlege - Second Test

Web Scraping and More Regular Expressions

Basic Web Scraping
Character Classes
Matching Repeatedly
Collecting Repeated Matches All At Once

Building a Complete Progam: Command Line Options

Getting Command Line Options
Subroutines and Returning Values
Multi-Line Strings and Comments
Passing Arguments to Subroutines
References to Hashes
Checking Values in Hashes

Parsing XML and Complex Data Structures

Finding All Files in a Directory and Filtering Arrays
Processing Files One By One
Parsing XML with Regular Expressions
Using XML::Simple, and Extracting Data from Complex Structures
Extracting Data from Complex Structures: A Complete Example
Building Complex Data Structures

Working with Databases

Free Databases to Use with Perl
Creating Databases with MySQL
Connecting to a Database
Inserting Data into a Database
Deleting Data and Executing Dataless SQL Commands
Getting the IDs of Records You've Just Inserted
Querying Databases
Exporting Data

Perl One-Liners

Running One-Line Perl Programs
Replacing Text in Files
Editing Files In-Place

Modules and OO Perl

Packages and Directories
Object Orientation: A Brief Introduction
Implementing OO in Perl

Web Application Basics

Installing the Apache HTTP Server
A Hello World Web App
The CGI.pm Module
Using URL Parameters
Website Forms

Basic Sysadmin Tasks

Moving, Copying and Deleting Files
Executing System Commands


Where to Find Documentation and More Modules

Appendix 1: Example Data

XML Files

Appendix 2: Alternate Systems

Running Perl in UNIX, Linux, Mac and Cygwin


Arrays and Hashes Review
References to Hashes and Arrays Review


July 5, 2022
The course is quite old. Windows Vista. I didn’t use Eclipse. I use VSCode and Strawberry Perl. It works well for me at the moment and hopefully through out the course. I like the course so far. But I had to figure out some ways to make it more current from my end.
July 2, 2022
I am in love with the voice of John. It is calming and every day I am looking forward to start the training. First of all, John is a TRAINER. He knows how to teach perfectly. For those who say he doesn't know some particular things a long the way. My answer to it is : He is coding with you live and improvising most of the time. He doesn't follow a pre-coded material. He sometimes gives you a space to investigate further. I followed his Spring and Java courses as well. I LOVE HIM as a trainer.
March 17, 2022
Decent information, but you'll quickly get tired of the repetition. Somehow one point gets dragged into a 10 minute session, by finding barely different ways of saying the same thing.
March 5, 2022
I love having John guide me through the steps. My only issue on this video is that he is not using the current Open statement with three arguments that is now the standard way to open files in Perl. It should probably be updated.
March 3, 2022
Por enquanto o curso está indo muito bem, bom material e o professor explica muito bem. E o conteúdo é muito bom.
February 13, 2022
It is a great introduction into a world of perl programming. I needed a tool, a new skill for scripting and now I feel I have got it... :)
January 27, 2022
A lot of good content and reference material but a bit meandering at times. Cross-referencing other sites helped my knowledge, especially for the "not sure how/why this works but it does" comments. And not having the reference material in plain text (it appeared to be in some type of compiled Eclipse format) was a pain.
December 7, 2021
Well understandable pronunciation, sensible course structure and helpful examples. So learning is a pleasure !
November 8, 2021
Way better than the competition on Udemy. It is on point, not to short and exact the same amount of details you need if you are already programming but you are new to perl. Thank you very much!
November 8, 2021
Bit too slow for my taste. I guess now days almost nobody will start learning programming with Perl. A lot of "I don't know", "I'm not sure", "Maybe". So course feels bit chaotic. Good additional reading was https://qntm.org/perl_en, which is bit more organized and systematic. But generally meets my goal - to have enough knowledge to work with some existing perl code.
November 3, 2021
I have now to put into practice what I learned here. The content of the lectures are old, but gold! :-)
October 3, 2021
It is a good way to learn a programming language, i.e. by doing rather than by dry lecture. So far so good but still on module 1.
August 20, 2021
If you're new to programming avoid this. However it is a great intro to Perl for someone who already has a basic grasp of programming concepts and use cases.
August 7, 2021
Very good course. Though this is my 2nd course learned some new techniques. Instructor way of explaining is good. Few topics could be organized better, little bit hard to follow.
July 22, 2021
A great course. Apart from Perl being "legacy", my employer uses it extensively. This course is more than just basic. The topics dealing with Apache integration and databases were challenging because this course had not been updated to accommodate the latest versions, but then your advice "google it" encourages one to acquire incidental learning. This made me realize that Windows is not ideal for this course because my computer is locked down by the company domain policies, thus not permitting website creation. I enjoyed the fact that exposure to principles explained in coding languages is "learn by doing it" - no waffling on about theory. I would like to repeat this course on my own Linux PC. Bottom line: Great course, John. I feel lucky to have stumbled open it and will keep it for reference purposes. Money well spent!



Learn Perl 5 By Doing It - Price chart


Learn Perl 5 By Doing It - Ratings chart

Enrollment distribution

Learn Perl 5 By Doing It - Distribution chart
udemy ID
course created date
course indexed date
course submited by