This node is obsolete. Go to Tutorials instead.
Tutorial Categories
Intro to the Monastery (Top)
- Welcome to the Monastery! Make yourself at home. by newrisedesigns
- Before You Post ... by Ovid
- On asking for help by danger
- How (Not) To Ask A Question by jeffa
- How to RTFM by Masem
- 1st Monasterians by Erudil
- How do I use Perl Monks? by jdporter
- I need help! Who can help me? by monsieur_champs
- How to ask questions the smart way off-site
- Why questions go unanswered by dominus off-site
Getting Started with Perl (Top)
- Where and how to start learning Perl by woolfy
- Perl Babysteps 1: Your First Simple Script by webfiend
- Perl documentation overview by brian_d_foy
- The Basics
- The basic datatypes, three
- Variable Scoping in Perl: the basics by arturo
- Operators: arithmetic and otherwise
- Basic Input and Output (Exercises)
- Control Statements and Looping (Exercises)
- Statements: if, unless, while loops, and until
- Loops: do while, do until, for, and foreach
- Implementing Dispatch Tables (simulating a C-style switch/case statement) by Roy Johnson
- 'if' variants by apotheon
- File Input and Output (Exercises)
- String matching and Regular Expressions (Exercises)
- How To: Make An Iterator by Limbic~Region
- Other Basics
- chop() and chomp() by Parham
- Common Beginner Mistakes by chromatic
- Complex Sorting
- Hash Keys (strings or numbers?) by robot_tourist
- Not Exactly a Hash Tutorial by planetscape
- The Uniqueness of hashes by injunjoel
- POD in 5 minutes by Juerd
- read() by Parham
- References by busunsl
- References quick reference by tye
- The Scalar Range Operator by pbeckingham
- Perl Special Variables Quick Reference by davido
- Uncommon* but Useful Perl Command Line Options for One-liners by Sol-Invictus
- Why you should use strict by waxmop
- Use strict and warnings by runrig
- Working with other processes and programs
- Perl Installation
Functions, Subroutines, and Variables (Top)
- Functions (built-in)
- Subroutines
- Variables
- Coping with Scoping by dominus off-site
- Lexical vs. Package Variables by Amel
- Lexical scoping like a fox by broquaint
- Of Symbol Tables and Globs by broquaint
- The difference between my and local by cLive ;-)
- The difference between my 'our' and 'my' by Ovid
- What is truth? (Curiosity corner) by robin
- True or False? A Quick Reference Guide by bobf
- Arrays and Lists
Regular Expressions (Top)
- Common Regex Gotchas by chromatic
- Extended Patterns of Regular Expressions by OM_Zen
- Examples of /s /m modifiers by Cody Pendant
- /o is dead, long live qr//! by diotalevi
- Zen and the Art of Match Variables by Elian
- How will my regular expression match? by hv
- Don't Use Regular Expressions To Parse IP Addresses! by ybiC
Working with Files and Databases (Top)
- Files (and Directories)
- Beginners guide to File::Find by spurperl
- Directory Recursion by count0
- File Locking by turnstep
- Navigating and Reading Directories by Sherlock
- Paths in Perl by tachyon
- Using Temporary Files in Perl by rob_au
- Databases
- Accessing Microsoft SQL Server from Linux using DBD::Sybase by CleverFox
- Before asking a database related question ... by gmax
- Class::DBI Intro by trs80
- DBI recipes by gmax
- The fine art of database programming by gmax
- Handling huge BLOB fields with DBI and MySQL by gmax
- Reading from a database by stephen
- Speeding up the DBI by gmax
- Tricks with DBI by btrott
- Web Logs using DBI by btrott
Object Oriented Perl (Top)
- Often Overlooked OO Programming Guidelines by Ovid
- Tutorial: Introduction to Object-Oriented Programming by jreades
- Basic Objects with Overloaded Operators by perlmonkey
- Perl Object Oriented Meta-Tutorial by btrott
- Using can with Inheritance by btrott
- Object Oriented configuration values by trs80
- Object Serialization Basics by chromatic
- Objects with Private Variables by btrott
- Blessables -- What Can You Make Into Objects? by chromatic
- Perl Singletons by sheridan3003
- Tie: Creating special objects by btrott
- The tie()s that bind by KM
- Undoable objects by chromatic
- It's a dog, but what kind? (polymorphism , in Perl OO) by blue_cowdawg
- A simple example OO script for total beginners by bl0rf
Network/CGI Programming (Top)
- Network Programming
- CGI (and related) Programming
- General Issues/Getting Started
- Setting up Perl/CGI with Windows by Ovid
- use CGI or die; by Ovid
- Web Programming Using Perl by Ovid off-site
- CPAN Modules
- Shrink Your CGI Searches with CGI::Search by hardburn
- HTML::CalendarMonthSimple cookbook recipe by boo_radley
- CGI, DBI, and HTML::Template Mini-tutorial by gav^
- HTML::Template Tutorial by jeffa
- Using HTML::Template by Ovid
- HTML::TokeParser Tutorial by crazyinsomniac
- Choosing a Templating System by perrin
- Web Application Development with HTML_Tree by princepawn
- Getting more out of LWP::Simple by Dog and Pony
- Using URI::Find to create links in text by strat
- Troubleshooting and FAQ's
- CGI Help Guide by tachyon
- Troubleshooting Perl CGI scripts by brian_d_foy
- Easier Linux/Unix remote CGI Debugging by Hero Zzyzzx
- Concerned about security? Start with the FAQ's and a free chapter. off-site
- Merlyn's magazine column archive covers web programming, Unix, and Linux. off-site
- O'Reilly and Associates also provides resources covering Perl, BSD, Linux, and other related technologies. off-site
Writing, Installing, and Using Perl Modules (Top)
- A Guide to Installing Modules by tachyon
- A guide to installing modules for Win32 by holli
- Building and distributing PPM modules for Win32 by idnopheq
- How to make a CPAN Module Distribution by tachyon
- Import Lists from the command line by Ovid
- Including files by Juerd
- José's Guide for creating Perl modules by cog
- Module Version Numbers and Checking by John M. Dlugosz
- Practical Guide to Compiling C-based modules under Win32 by tachyon
- Simple Module Tutorial by tachyon
- Installing Modules on a Web Server by sulfericacid
Tutorials about Specific CPAN Modules (Top)
(vaguely sorted by module name)
Note: Tutorials covering CGI and HTML related CPAN modules are listed in the Network/CGI Programming section.
- Tips for Using Apache::Session by impossiblerobot
- Getting started with DateTime by monsterzero
- Using GD output for HTML imagemaps -- GD::Graph::Map recipe by boo_radley
- The Dynamic Duo --or-- Holy Getopt::Long, Pod::UsageMan! by ybiC
- Glade/Gtk review/tutorial by jepri
- Gtk-Perl Tutorial by Stephen Wilhelm off-site
- Introduction to encryption with GnuPG and GPG by derby
- HTML::Tree(Builder) in 6 minutes by trs80
- Getting Started with Inline::C by derby
- Using select and IO::Select by duff
- Lingua::Romana::Perligata - Basica Basicum Basicus by benn
- A Beginner's Guide to Using Mail::Audit and Mail::SpamAssassin by shockme
- Using ModPerl::Registry without root by dmorgo
- Beginners guide to Net::FTP by spurperl
- Updating LDAP directories with Net::LDAP by araqnid
- Perl and Net::Pcap by rob_au
- Introduction to Parallel::ForkManager by biosysadmin
- Eliminating Left Recursion in Parse::RecDescent by demerphq
- Random Tips on Parse::RecDescent by hsmyers
- Some Parse::RecDescent Tutorials by idnopheq
- Automated testing with Test::MockObject by IlyaM
- Tk Tutorial by hiseldl
- Introduction to Tree::DAG_Node by gmax
- Microsoft Project and Perl (Win32::OLE) by dws
- How to install Win32::OLE under Linux? by dpavlin
- Using Win32::OLE and Excel - Tips and Tricks by cacharbe
- Calling .NET Assemblies with Win32::OLE by InfiniteSilence
- wxPerl Tutorials by boo_radley
- XML::Generator::DBI Tutorial by jeffa
- XML::Parser Tutorial by OeufMayo
- Does your XML::Simple code pass the strict test? by grantm
- Stepping up from XML::Simple to XML::LibXML by grantm
- Adding elements using XML::Simple by grantm
- Adjacency List Processing in XML::Twig by princepawn
- Using Perl XML::XPath for converting Infopath XML files to Word Documents by karthik4perl
Tips, Performance and Troubleshooting (Top)
- Things you need to know before programming Perl ithreads by liz
- Some things that will make your life easier as a Perl coder
- Benchmarking your code by turnstep
- Debugging Perl scripts which use fork() by IlyaM
- Notes on upgrading to Perl 5.8.0. by markjugg
- Tips and Pointers using ncurses with perl by odie
- Schedule Win32 Perl Scripts with AT by yibC
- Using Expect.pm to Manage an Unreliable Program by toma
- Using the Perl Debugger by nate
- Win32 Execution: UNiX Style (NT) by emcb
Miscellaneous Perl Tutorials (Top)
- An informal introduction to O(N) notation by dws
- Enabling GUI Debugging under Mod_Perl by mkirank
- Flash graphics with perl: installing ming by Sol-Invictus
- LZW Demystified by demerphq
- Overloading '=' by dchetlin
- Parsing your script's command line by grinder
- Perl & Math: A Quick Reference by chunlou
- Perl and Prolog and Continuations... oh my! by adrianh
- Perl White Magic - Special Variables and Command Line Switches by cog
- Perl's Warn and Die Signals by Adam
- (Not Quite Perl) Running Scripts from Right-Click Context Menu in Windows by svsingh
- Resorting to sorting by japhy
- Shipping standalone perl apps on Win32 by crenz
- Template with optional PHP execution by Flame
- Using Multiple Versions of ActivePerl by ibanix
- Vim for PerlMonks nodes by gmax
- Writing Highly Obfuscated Code in Perl by marko
- Creating COM and DCOM objects with Perl by JamesNC
- Behind the GUI lives the shell: using Perl to script your OS of choice - by tachyon off-site
- Installing and adding to perl
- Reference materials
Perl Idioms Explained (Top)
- Perl Idioms Explained - $|++ by broquaint
- Perl Idioms Explained - keys %{{map{$_=>1}@list}} by broquaint
- Perl Idioms Explained - ${\$obj->method} and @{[sort @list]} by broquaint
- Perl Idioms Explained - my $string = do { local $/; <FILEHANDLE> }; by jeffa
- Perl Idioms Explained - @ary = $str =~ m/(stuff)/g by tachyon
- Perl Idioms Explained - && and || "Short Circuit" operators by davido
- Perl Idioms Explained - !!expr by broquaint
Non-English Tutorials (Top)
- (lang: de) Referenzen by busunsl (Translation of references above)
- (lang: lt) CGI/Perl Script Security by mr2
- (lang: nl) Objecten voor beginners by Juerd
- Criando uma conta no PerlMonks (now sitefaqlet) by monsieur_champs
- Eu preciso de ajuda! Quem pode me ajudar? (now sitefaqlet) by monsieur_champs
- Antes que você escreva... by monsieur_champs
- Benvindo ao Mosteiro! Sinta-se em Casa (PT_BR) by monsieur_champs
- Utilizando perl by Anonymous Monk
Other Topics (Top)
- Introduction to Technical Writing/Documentation by ailie
- Using CVS for revision control by trs80
- Learn vi/vim in 50 lines and 15 minutes by tachyon
- A Beginning Guide To Evolutionary Algorithms by blokhead
- Code Editors
- Miscellaneous: tools, browsers, security...
- People and Places
Major Updates: