Beginner Perl Maven - part 1
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
Find online courses made by experts from around the world.
Take your courses with you and learn anywhere, anytime.
Learn and practice real-world skills and achieve your goals.
The course is based on the "Beginner Perl Maven" course that I have been teaching in various formats and under various titles for 10 years now. Except that this is an updated version to be as modern as possible while also being useful for people who need to maintain legacy code.
For more details check out my web site.
Not for you? No problem.
30 day money back guarantee.
Learn on the go.
Desktop, iOS and Android.
Certificate of completion.
|Section 1: Extra Materials|
Course material in PDF and Source files (1.24)
PDF and sources for Linux and Mac users (1.22)
PDF and sources for Windows users (1.22)
|Section 2: Chapter 01 - Getting started|
Step 01 - Getting startedPreview
Step 02 - Editors and IDEs for Perl developmentPreview
Step 03 - Perl on the command line
Step 04 - The First script - Hello World
Step 05 - Safety new (use warnings; use strict;)
Step 06 - debugging Perl scripts
Step 07 - Comments in a Perl script
Step 08 - perldoc, reading the Perl documentation
Step 09 - POD - Plain Old Documentation for Perl
Step 10 - Exercises
|Try your environment Install Perl Make sure you have access to the right version of perl. (At least 5.8. but preferably 5.10 or newer) Check if you can read the documentation with perldoc and check it out on http://perldoc.perl.org as well Write a simple script that prints Hello world. Add some comm…|
|Section 3: Chapter 02 - Scalars|
Step 11 - Scalar values and variables
String Number Conversion
True and False values
length, lc, uc, lcfirst, ucfirst, index, rindex
Strings In Double Quotes
Strings In Single Quotes
Scope Of Variables
Rand And Int
|Write a program that computes the area of a rectangular. Start by having two hard coded values. Multiply them and print the result. Then change the code to prompt the user for two numbers Multiply them and print the result. Further modify the program to warn if one of the sids given was negative.|
Solution: Area of Rectangular
Solution Area Prompt and Warn if values are less than 0
|Create a simple command line game guessing a whole number. Let the computer "think" about a whole number between 1-200 using the rand() function. Let the user guess a number. Tell the user if his guess was bigger or smaller than the number the computer "thought" of or tell him if he hit the right nu…|
Solution Number Guessing Game
|Section 4: Chapter 03 - Files|
die, warn, exit
Open File All
Open File with Error Handling
open or die
No Such File
Read One Line
Read File Line By Line
Write To File
Sum Numbers In A File
Debug the Sum Numbers script
Analyze Apache Log File
Old Style Open
|Take the script from the count sum example where we added up the numbers in each row of a file and add additional statistical values: minumum maximum average median and standard deviation are probably too difficult at this point.|
Solution: Add More Statistics
|Take the result of the previous exercise and instead of the screen print the report in a file called report.txt The result should look like this: minumum: -17 maximum: 98 total: 126 count: 6 average: 21 You might need to look up the documentation of the printf function.|
Solution: Write Report To File
|Section 5: Chapter 04 - Lists and Arrays|
Lists In Perl
Foreach Loop Over List
Creating An Array
|Take the script from the earlier lecture - adding the numbers that were in a file. First of all type it in and make sure it works. Then impove it so in addition to the sum it will also print out the average. What do you need in order to compute the average? Print that value too. Also print the max…|
Array Indexes (running explanation)
Looks Like Number
Command Line Parameters
Command Line Parameters (Run example)
Processing comand line using Getopt::Long
Process Command Line Using Getopt Long Run
Process CSV File
Process CSV File - Short Version
Oneliner - Sum Of CSV
Processing CSV file using Text::CSV_XS
|There are several parts of this exercise: Currently the color selector shows menu items numbered from 0. Change it so the displayed numbers will start at 1 but that it will still work correctly. Currently the user can give any value on the command line. Incluing "nonsense". Check that the given val…|
Solution: Improve The Color Selector
Solution: Improve The Color Selector Check Input
Solution: Improve The Color Selector Force
Solution: Improve The Color Selector colors.txt
Solution: Improve The Color Selector --filename
|This exercise also has several steps. First of all, let the user guess several times (with responses each time), until she finds the hidden number. Allow various special keys too: n - skip the rest of this game (give up) and start a new game with new hidden number s - show the hidden value (cheat) m…|
Solution: Number Guessing Game - Multiple Guesses
Solution: Number Guessing Game - exit
Solution: Number Guessing Game - s Show
Solution: Number Guessing Game - N Next Game
Solution Number Guessing Game D Debug Toggle
Solution: Number Guessing Game - M Move Toggle
|Section 6: Chapter 05 - Advanced Arrays|
The Year of 19100
Array In Context
I have been programming since my early high school years and worked in various positions before became self employed Perl contractor and Perl trainer in 2000.
I worked as programmer, system administrators, configuration management and build engineer. I worked on QA test automation tasks and many in-house automation systems.
I have been using Perl since 1995 and teaching it since 2000 both at beginner level and advanced level. I am frequent speaker at various Perl conferences and at FOSDEM.
I got the White Camel award for my contribution to the Perl community.
My goal is to help people use Perl to get their job done. Regardless if they are system administrators, configuration management engineers, web developers or if they use Perl just a secondary tool to process some data.