Training, Open Source computer languages

PerlPHPPythonMySQLhttpd / TomcatTclRubyJavaC and C++LinuxCSS

Search our site for:
Home Accessibility Courses Diary The Mouth Forum Resources Site Map About Us Contact

Perl training news
Next Public Course Dates
Regular Expressions from Fri, 13 Jun 08 , for 1 day
Learning to Program in Perl from Mon, 7 Jul 08 , for 5 days
Perl Programming from Mon, 7 Jul 08 , for 5 days
The MySQL Database from Thu, 17 Jul 08 , for 2 days
Perl for Larger Projects from Mon, 21 Jul 08 , for 3 days
Perl on the Web from Mon, 21 Jul 08 , for 2 days

Link on individual courses for more details and further dates.

We can also run a private tailored course at our centre or a private course at your office.
Learning Perl - whether you're new to programming or "converting".
Duration: 5 days • Price: £1650.00 +VAT (with hotel room), or £1350.00 +VAT (without room), • Venue: Melksham, Wiltshire


COURSE START DATES
• Monday 7 July 2008• Monday 20 October 2008
Check availability / book [Link]
DESCRIPTION
This course covers programming in the Perl language. Whether you'll be using Perl for data manipulation tasks, administration scripts, or web interaction, you should start here.

The first sections of this course introduce you gently to computer programming, using practical examples in the Perl language and leads on to writing some simple application programs so that you can see how the elements all slot together.

The core of the course introduces further fundamental parts of Perl. You'll learn about topics such as: regular expressions, lists, subroutines and hashes, and you'll be taught how to use them together in both traditional (keyboard and screen) and Web server-based work.

The course concludes with sections on resources that are available, and a forward-looking lecture that overviews many more of the facilities available in Perl, and what they can do for you.

PREREQUISITES
Basic computer knowledge. This course is also suitable for programmers who are converting to Perl; the Perl language differs from others and such trainees should start from fundamentals to unlearn some habits!

Getting the most from your Well House Consultants course [Link]
SUBJECT BACKGROUND
Perl is a very widely used programming language indeed, but it's name isn't well know outside the programming community as it's an open source language that lack the marketing "hype" - it's just a superb technical tool in a very wide variety of applications. It's name - PERL - stands for the "Practical Extraction and Reporting language" which is a pretty good sound-bite to tell you what it does.

A new release of Perl - Perl 6 - has been undergoing development for a considerable time. Our course covers Perl 5, and will continue to do so while it is dominant, but also includes a short look ahead to Perl 6 so that new code developers will be able to take advantage of it once it's available to them.
COURSE CONTENT
Shorter description available: [Link]
 
Perl Fundamentals
Introduction (module P201) What is Perl? What computers does Perl run on? Is Perl loaded on my computer (and if not, where do I get it?) Versions of Perl. Examples of Perl in use.
Hello Perl World (module P102) Entering the program. Executable statements. Printing. Comments. Running the program. Doing more than one thing in a program. Handling errors.
Variables and Operations (module P103) Reading user input. What is a variable? Assignments. Calculations. Precedence. New line characters.
Perl Fundamentals (module P202) First practical Perl program. Executable statements, comments and POD documentation. Print statements. Variables and assignments. Calculations. Reading data. Strings v numbers. String operators.
More about the Perl Environment (module P203) Integrating Perl with your computer. Unix and Linux - Path, chmod and the #! line. Windows NT, 2000, ME, 98 and 95 - associating files with Perl. Running Perl on the Macintosh and on the PC under MS-DOS. Compilers, interpreters and Perl. Checking your syntax, and getting warning messages. Debugging tools.
Conditionals and Loops (module P204) The if statement. Conditions and blocks. The while statement. Shorthand operators (add and assign, ++, etc.) Ways of writing numbers.
Analysing a Programming Task (module Q904) A small job. Learning about the job. Working it out. Writing. Testing. Error handling. As a job gets larger.
Initial String Handling (module P205) String handling functions. String handling operators. Single- and double-quoted strings. Here documents, qq, etc. Exact string comparisons. Regular expression matching. Regular expression components.
More Loops and Conditionals (module P206) The variety of Perl. Single statement conditionals. Unless. Conditional operators. The until loop. The for loop. Single statement loops. Breaking a loop. Labels.
File Handling (module P207) File handles. The open and close functions. Reading and writing files. Other things you can do with the file interface. File testing. Formatted printing. Formatting variables and expressions. Constant text. sprintf.
 
The Power of Perl
Lists (module P208) What is a list? Creating a list. Referencing elements in a list. Changing a list. The length of a list. List and scalar context. Functions that operate on lists. List slices. Anonymous lists.
Subroutines in Perl (module P209) The what and why of subroutines. Structured and object oriented programming. Calling a subroutine. Loading a subroutine from another file. Passing parameters. Writing subroutines. Returning values. Variable scope. Local, my and package variables. Loading a class and using objects. Instances.
Topicalization and Special Variables (module P210) Command-line parameters and the name of your program. Informational variables. Behaviour-changing variables. $_ - the default input and pattern matching variable. More command-line options.
Hashes (module P211) What is a hash? Setting up a hash. Keys and values. Accessing a hash. Processing every element. Sorting. cmp and operators. Programming techniques for hashes. Deleting hash elements. Special hashes. The environment.
More on Character Strings (module P212) Summary to date. Extracting information from a match. Assigning to a list. Greedy and non-greedy matching. Pre- and post-match strings. Match modifiers. Comments within a regular expression. Alternative delimiters. Substitution. Substitute and execute. Regular expression efficiency. The tr function. Handling binary data - read, unpack etc.
 
Application of Perl
Perl on the Web (module P221) The HTML form. Input from the form into a Perl program - URL encoding. Output from Perl back to the browser - headers, etc. Overview of what you can do with CGI. Example application - web log file analysis
More than Simple Lists and Hashes! (module P217) Multidimensional arrays. Something more complex. Design matters.
Handling Dates and Time (module P216) File status operators and stat. System commands. time, $^T, utime and other sources of time data. Conversion to epoch seconds. Conversion from epoch seconds. Time calculations and elapsed time. Year 2000 and year 2038 compliance. Sleep and the alarm signal.
Using SQL Databases from Perl (module P308) Review - flat databases. Relational databases through SQL. Setting up the DBI and DBD modules. Connecting to an SQL server. Issuing an enquiry and reading back the results. Amending information in a database via SQL. Creating new tables. Database support including mySQL, Oracle, Sybase, Infomix. Interfacing Perl to the Access database. Using Tie to access a table as if it was a Perl Hash.
 
Looking ahead with Perl
Practical Example - Perl in use (module P772) A 200-line demonstration application using fundamental Perl facilities. The requirement; introduction, inputs and outputs required. The plan; how we're going to tackle the application. The detail. Possible enhancements to the application.
Libraries and Resources (module P219) Standard Perl modules. Pragmata - strict, integer, constants, overload and others. Modules distributed with Perl - Benchmark, Carp, English, Data::Dumper and others. The CPAN - sourcing, downloading and installing modules. Useful major modules such as Tk, CGI, DBI and DBD. XML, LWP, Win32 and other modules. Utilities supplied with Perl - a2p s2p pod2html perldoc, etc. Documentation - Perl manual, FAQ, etc; sources online and offline. Websites, newsgroups, IRC and books. Local user groups, Perl Mongers. Getting training and support.
Perl 6 Look Ahead (module P256) What's new in Perl 6? Objects with properties; memorise, constant, is and but. Class keyword, new bless, and the . operator. Interprollation of $(...) and @(...), and the _ operator. Multiple comparisions and the smart comparison operator. Golden nuggets - err, open, time, here docs etc. Parameter lists, parameter naming and parameter autonaming. The := binding, refs and types. Asuume bindings. Topicalisation. Subroutine, conditional and loop changes. try and CATCH. LAST, FIRST, PRE, POST, KEEP and UNDO. grammars and rules. Parrot.
A Quick Look Ahead (module P770) Other facilities in Perl - further modules, objects, tieing. Databases, Relational Databases, XML, XSLT and Data Munging. Writing distributable modules. Perl/Tk, embedding Perl in your application and your application in Perl. Uses of Perl on a network - Web-page interaction, clients and servers. Uses of Perl for portable system administration tasks. Using Perl to glue other applications together (including databases).

TUTOR and COURSE AUTHOR
Graham Ellis - graham@wellho.net [email]  [about Graham]
VENUE
Melksham, Wiltshire
Public courses run at Well House Manor - our own purpose fitted training centre and business hotel / conference centre in Melksham.
• Download Melksham Map - [pdf file (750k)] • Google Map - [Link]
PRICE
1 student   2 students   3 students   For 4 or more students
from the same company,
please consider a private course.
 With hotel room
£1650.00
(£1938.75 inc VAT)
Without room
£1350.00
(£1586.25 inc VAT) 
 With hotel rooms
£3200.00
(£3760.00 inc VAT)
Without rooms
£2600.00
(£3055.00 inc VAT) 
 With hotel rooms
£4750.00
(£5581.25 inc VAT)
Without rooms
£3850.00
(£4523.75 inc VAT) 
 
Notes:
• Multiple discount applies to bookings for second and subsequent delegates on the same running of a course, and on same order.
• Hotel rooms are available for arrival the night before the course starts, for departure after the end of the course on the last day.
FOLLOW UPS
For some applications, you'll learn all the Perl you need on this course. For other applications, you might want to go on to our advanced Perl courses - Using Perl on the Web or Perl for Larger Projects

Upon completion of your course, you'll have online access to the source code of all the examples from the course, and you'll have access to the "Opentalk" forum where you can raise questions. We also encourage you to email the tutor, and to visit us again to use our library as appropropriate.

Certification? - [Link]
FOR FURTHER INFORMATION
Public (scheduled) courses -- http://www.wellho.net/course/ctc.html
For more information about our public courses in general, such as class size, course times, materials provided, special requests, accommodation list, finding our centre, etc.
Terms and Conditions -- http://www.wellho.net/net/terms.html
Covering topics such as delegate substitution, payment, cancellation policy and other matters.


WELL HOUSE CONSULTANTS LTD.: Well House Manor • 48 Spa Road • Melksham, Wiltshire • United Kingdom • SN12 7NY
PH: 0800 043 8225 or 01225 708225 • FAX: 0845 8382 405 or 01225 707126 • EMAIL: info@wellho.net • WEB: http://www.wellho.net • SKYPE: wellho