For 2023 - we are now fully retired from IT training. We have made many, many friends over 25 years of teaching about Python, Tcl, Perl, PHP, Lua, Java, C and C++ - and MySQL, Linux and Solaris/SunOS too. Our training notes are now very much out of date, but due to upward compatability most of our examples remain operational and even relevant ad you are welcome to make us if them "as seen" and at your own risk.
Lisa and I (Graham) now live in what was our training centre in Melksham - happy to meet with former delegates here - but do check ahead before coming round. We are far from inactive - rather, enjoying the times that we are retired but still healthy enough in mind and body to be active!
I am also active in many other area and still look after a lot of web sites - you can find an index ((here)) |

Well House Consultants
You are on the site of
Well House Consultants
who provide
Open Source Training Courses
and business
hotel accommodation. You are welcome to browse and use
our resources subject to our copyright statement and to add in links from your pages to ours.
Other subject areas - resources
Java Resources
Well House Manor Resources
Perl Resources
Python Resources
PHP Resources
Object Orientation and General topics
MySQL Resources
Linux / LAMP / Tomcat Resources
Well House Consultants Resources
Extras Resources
C and C++ Resources
Ruby Resources
Tcl/Tk Resources
Web and Intranet Resources
|
Perl module P219
Libraries and Resources
Exercises, examples and other material relating to training module P219. This topic is presented on public courses Perl Programming, Perl for Larger Projects, Perl bootcamp, Learning to program in Perl, Perl Programming
There's much more to Perl than just the basic language; it comes with a rich set of modules built in to the distribution, and there's a further huge library available (The CPAN). Documentation is available in the Perl download, on line, and in a wide variety of books, and if you're looking for more interactive assistance there are forums, news groups, and chat rooms. There are even Perl user groups that meet around the world. Related technical and longer articles "Perl - I didn't know you could do that"
Articles and tips on this subject | updated | 712 | Why reinvent the wheel 1. Because you feel you can do better.
2. Because you've nothing else to do and you want to be busy when your boss walks by.
3. Because it's so much more fun re-inventing the wheel than using someone else's.
4. Because you can learn from your experience.
5. Because you didn't realise that someone ... | 2012-10-01 | 3377 | What do I mean when I add things in Perl? Some things have a natural concept of addition. And of multiplication.
You can add numbers - 5 + 7 gives 12. You can add strings of text - "Hello " + "World" = "Hello World". You can add day trippers to a train and get a busier train (and add too many and you'll get an overcrowded unhappy train, ... | 2011-08-03 | 3101 | The week before Christmas The canal at Devizes earlier today as we passed through. You'll see from the ice that we weren't passing through by boat, nor was anyone else
From the Perl for larger projects training course - a diagram to illustrate the problem of "diamond relationships". This is where a module "a" loads a module ... | 2010-12-24 | 3009 | Expect in Perl - a short explanation and a practical example Around 20% of delegates on our Tcl Courses are using Tcl because of the Expect package that extends it to "choreograph" interaction with other systems and processes, and yet the Expect module in Perl (Expect.pm) is decidedly niche and we cover it on our Perl for Larger Projects course only on request. ... | 2010-10-22 | 2931 | Syncronise - software, trains, and buses. Please! To get from my home to the Divisional Police HQ on another side of Melksham, I can take a five minute bus ride on the X72 or 272, change at the Market Place onto the 234 or X34, and ride for another five minutes. So for a meeting at 19:00, I can catch a bus just after 18:00 to be there in good time, ... | 2010-08-24 | 2427 | Operator overloading - redefining addition and other Perl tricks What does addition actually mean? It means different things depending on what you're adding together, and in Perl you can redefine additions - and other operators - on objects of types which you define. This is known as operator overloading, and there's a complete code example here.
So ... how do ... | 2010-06-20 | 2234 | Loading external code into Perl from a nonstandard directory Here's a piece of Perl code that loads in an external module.
push(@INC, "/var/opt/OV/bin/OpC/monitor");
eval { require "monitor_utils.pm"; };
if ($@) {
print STDERR "could not load monitor_utils.pm: $@\n";
exit 1; }
It comes from a delegate's existing application, and is worthy ... | 2009-06-12 | 2229 | Do not re-invent the wheel - use a Perl module "If you think 'surely someone has done this before', you're probably right ... and in Perl, you'll find the resource you need available as a module on your system, or if it's not quite to common, on the CPAN". I was reminded of this advise today, when I got involved with web site checking ... and rather ... | 2009-06-12 | 737 | Coloured text in a terminal from Perl If you're looking to do something in Perl and the back of your mind tells you that, surely, someone's done this before then there are two things to note:
• Someone probably HAS and
• It's probably available on the CPAN or as a built in module.
Thus when I was asked the question "How do I get ... | 2008-12-09 | 1865 | Debugging and Data::Dumper in Perl I'll admit it - I'm not a great fan of debuggers, preferring to write well structured code, and check it out with a few test / intermediate print statements. You'll often find I code:
$trace and print (something);
in Perl, and this allows me to add a line
$trace=1;
at ... | 2008-11-01 | 1863 | About dieing and exiting in Perl If you want to end a program in Perl, you can get out quickly enough with an exit function call. But that's probably just a part of what you'll be wanting to do - you'll be wanting to generate an error message on the error channel (STDERR) too, and perhaps to tell your user rather more about why the ... | 2008-11-01 | 1391 | Ordnance Survey Grid Reference to Latitude / Longitude I've already written about conversion of postal addresses to latitude and longitude using Google's interface - but what is I want to convert the Ordinance Survey's grid references into latitude and longitude? Google's interface doesn't support the OS units - and in any case it's "just" a a calculation. ... | 2008-08-30 | 86 | Talk review - Idiomatic Perl, David Cross David Cross's talk on Idiomatic Perl was excellent. I know of Dave from his book Data Munging with Perl so I had some idea of what he was going to be covering.
Now - I've been training in Perl for a number of years, so I didn't expect to learn much technically new, but I did expect to pick up nuances, ... | 2008-05-11 | 1444 | Using English can slow you right down! When you're programming and you assign a variable, that's usually a single result. For example (we're talking Perl in these examples)
$position = $record % $pagelength;
However, there are often side effects of an action which you might want to make later use of too. For example:
$postcode = ($pc ... | 2007-11-25 | 1235 | Outputting numbers as words - MySQL with Perl or PHP Oracle's in_char function lets you convert numbers into a text string, but it's an unusual facility to have as as built-in; there's no such facility (as far as I know) in MySQL but you can get around this easily enough within your controlling application - the Nums2Words module on the CPAN (in Perl), ... | 2007-06-17 | 1219 | Judging the quality of contributed Perl code So you're going to download a module from Perl's CPAN. Good - you've learnt the first rule which is to re-use code that someone else has written, and NOT write your own. But then you have another conundrum - which of the dozens of modules that look as if they should be suitable should you download ... | 2007-06-07 | 760 | Self help in Perl Perl's POD (Plain Old Documentation) system provides the programmer with the ability to add user documentation into his programs - allowing a single source file to include:
* The program itself
* Comments for future programmers who read the source
* Documentation for the user
Convertors such as pod2html ... | 2006-06-15 | 112 | Avoid the wheel being re-invented by using Perl modules "Don't re-invent the wheel". Such is the underlying philosophy of programming - if you re-write a piece of code that's already been written and tested, you're probably wasting time that could also be better used. You're also likely to be creating a longer term support issue - someone's going to have ... | 2006-06-05 |
Examples from our training material
ac1 | perl -w / turning warnings on and off | colpert | printing coloured text in your terminal window | dadu | | mod_demo | Use of standard modules | stx | croak - like die, but reports line in calling package | togridref | Latitude / Longitude to UK Ordnance Survey Grid Reference convertor. | tolatlong | UK Ordnance Survey Grid Reference to Latitude / Longitude convertor | wholenumbers | The integer pragma illustrated |
Pictures Perl - find it on the CPAN!
Background information
Some modules are available for download as a sample of our material or under an Open Training Notes License for free download from [here].
Topics covered in this module
Standard Perl modules. Pragmata. Standard modules. The CPAN. Installing from CPAN - an individual module. Installing from the CPAN - using the CPAN module. Installing modules via the Perl Package Manager. WhatÕs on the CPAN?. Utility programs. Documentation. Web resources. Newsgroups. Perl information in newsgroups. A note of caution. Forums. Chat. Books. Meeting users, getting local support and training. User Groups. List Servers. Well House Consultants.
Complete learning
If you are looking for a complete course and not just a information on a single subject, visit our Listing and schedule page.
Well House Consultants specialise in training courses in
Ruby,
Lua,
Python,
Perl,
PHP, and
MySQL. We run
Private Courses throughout the UK (and beyond for longer courses), and
Public Courses at our training centre in Melksham, Wiltshire, England.
It's surprisingly cost effective to come on our public courses -
even if you live in a different
country or continent to us.
We have a technical library of over 700 books on the subjects on which we teach.
These books are available for reference at our training centre.
|
|
|