Training, Open Source Programming Languages

This is page

Our email: • Phone: 01144 1225 708225

For 2023 (and 2024 ...) - 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))
Sample XML file as used in xslt.php4 example and others
Additional PHP Material example from a Well House Consultants training course
More on Additional PHP Material [link]

This example references the following resources:

Source code: images.xml Module: H999
<img name="be">
<title text="Our Lady's Church, Brugge, Belgium" />
Whether you work for a small company, a multi-national, or
a government or international organisation, we can run a
MySQL, PHP, Python or Perl training course for you at your
office in Belgium. You just provide a meeting room and the
trainees - we provide one workstation per trainee for the
duration of the course, and all the other necessary elements.
If you have just one or two trainees who need to learn a subject, have
them join our public courses in the UK - if they fly direct from
Brussels to Bristol, we'll meet them there and make the whole thing
very easy.[br][br]
This picture is of a stained glass window inside Our Lady's Church
in Brugge. The church, parts of which date back to the 13th century,
has a massive tower 122 metres tall. This is second in Belgium only to Antwerp
Cathedral which has a tower a metre taller. The picture was taken by Caitlinn
Davison, and is reproduced here with her kind permission. The copyright
is retained by Caitlinn.
<img name="mq">
<title text="The Euro" />
We accept payment by bank transfer, cheque, and credit card, and
we can also take cash, though that's quite unusual. We can invoice
you in Pounds, Euros or US Dollars, and accept payment in any of
the three currencies. This picture shows Euro notes and coins,
and was taken when they were newly in circulation in January 2001.
We were in Austria for a short mid-winter break when the Euro
came into circulation, and we admired the way the conversion was
done with very few problems.
<img name="bkstack">
<title text="Open Source Library" />
Our library includes over 450 volumes on Open Source programming
languages and related subjects. It's available to trainees who
attend courses at our Melksham, Wiltshire training centre, and
to others too by appointment. We keep details of all of our books
on this web site, so that you can search through and find the
most appropriate book to meet your needs ... then link to an
online ordering site ...
<img name="wp">
<title text="The sky's the limit" />
Well House Consultants was formed in 1995 as a "shell" company
to allow its principal (Graham Ellis) to give Solaris training
courses under contract. We introduced our first Open Source
course - 2 days on Perl - in 1996, after several contacts asked
us if we ran courses. Initially the course was scheduled every
4 months, but it rapidly became more frequent; within 3 years,
Graham was no longer presenting Solaris courses - he simply didn't
have time. We opened our own training centre in September 2000
and now have a full program of Perl, PHP, Java, Tcl/Tk and MySQL
courses running at the training centre and on customer's sites.
What will the next five years bring? We don't know; five years
ago our current sucess was unimaginable - for the next five,
perhaps the sky's the limit.
<img name="lib">
<title text="Reference books in our library" />
The Well House Consultants library, available for reference during
training courses, includes some 400 volumes on such as Perl and PHP
that we teach, and associated topics like linux, XML, AND HTML.
<img name="wt">
<title text="Communication by cable" />
We teach Open Source programming languages which are heavily used
in the implementation of network solutions on the Internet and on
intranets too. Our own training centre has a megabit link to the
internet, and all our systems are connected via "Cat 5" cables or
wireless networking to IEEE 802.11b.
<img name="tools">
<title text="A disconnected wire" />
We chose this image of a disconnected wire to have on our error page -
the most common error on any web site is "page not found", also known
as "error 404". We find some amusement in the fact that our training
centre is at No. 404, The Spa; the picture is actually from No. 404,
which we have restored over the past three years.
<img name="ctco">
<title text="Melksham Training Centre" />
Our training centre is located in an old Georgian building on the
outskirts of Melksham, built around 1814 when local businessmen planned
to turn the town into a Spa town to rival Bath. Although the theory
was that "the waters must do you good because they taste so bad", there
were few takers and the three lodging houses that had been built were
turned to other uses. There's still accommodation available in The
Spa, though, so if you come here on a training course you'll be able
to stay just a stone's throw away.
<img name="jp">
<title text="A cup of coffee and some coffee beans" />
Suprisingly, "Java" isn't an acronym; it was picked as a nice name for
the programming language and virtual machine environment. Java coffee
provides a nice visual image for use with our pages that relate to the
Java language.
<img name="rc">
<title text="A piece of jewellery with a ruby inset" />
There are lots of (dreadful) puns that will tell you that Ruby's a gem
of a language. It is indeed such a gem, taking the best of Perl 5 as
the basis for a truely object oriented language; alas, that doesn't
excuse the dreadful pun.
<img name="fly">
<title text="Aircraft Engine and Propellor" />
We use the aircraft engine and propellor picture for our page about
Bristol Airport, and also for our pages on the MySQL relational database.
The MySQL daemon is the engine behind many on line databases; although
it's not the most sophisticated of RDBM systems it's rugged, fast and
reliable - key qualities which mean that we've see huge growth in MySQL
interest recently.
<img name="lp">
<title text="A floppy disc" />
Floppy disc technology is mature, but still very much used. We use a
floppy disc to represent Perl on our "Learning to program in Perl" course;
although Perl is a mature language, it's still a fundamental plank for
many computer systems. Perhaps when Perl 6 is with us, we should change
this image to a writeable DVD.
<img name="ph">
<title text="Cylinders on a Shay steam locomotive" />
The use of PHP has doubled every six months for the past two years, and
it's now really "the power behind the web" for so many web sites; even this
page was genarated from XML source by a piece of PHP. The Shay locomotives
on the Cass Scenic Railoroad in West Virginia, an old logging railway,
propel their trains up to Bald Knob from behind - a magnificent site, and
we have chosen them as our motif for PHP.
<img name="equ">
<title text="Equipment in our training centre" />
Each trainee on our courses is given a laptop computer for their
exclusive use throughout the course; we find that laptops can be
conveniently lifted to one side during lectures, with trainees getting
an unobscured view of the proection screen and tutor. Our laptops
are all internet connected, and feature Linux, Windows XP and Mac OS X
operating systems.
<img name="tb">
<title text="A feather" />
Tcl - the Tool Control Language is often referred to as "tickle", and
what better graphic to represent this than a feather?
<img name="kbd">
<title text="A keyboard and newspaper" />
Our training centre opens its doors an hour before courses start each
morning, and trainees are welcome to come early, have a coffe,
read the newspaper, and check their email.
<img name="pl">
<title text="Bricks with letters" />
There's a very large number of bricks in this picture - a large job to
put them all together into a text wall. Perl is an excellent language
from processing text, and our "Perl for Larger Projects" course
concentrates on the more advanced topics of the language that are
especially relevant if you have huge quantities of data to handle, or
are required to write a major application in the language.
<img name="awayhome">
<title text="London and a Highland croft" />
If you have a group of 4 or more trainees who need the same training
at the same time, it'll cost you less to have us come to you to present
the course. We bring all the equipment that's needed - you just provide
the students and the room. The graphic shows a view of the Battersea
Dog's home which was visible out of the training room window on the
first on site PHP course that we ran, and a Highland croft - a picture
we took when travelling to Isle of Skye to give our second on site PHP
course. PHP was used to merge the images, of course ;-)
<img name="oldspa">
<title text="Historic map of The Spa, Melksham" />
Our Melksham Training Centre is located on the outskirts of the town
of Melksham, Wiltshire. This old (circa 1888) map shows "The Spa" as
it then was - a cluster of Georgian Buildings in the countryside on the
Melskham to Devizes road.
<img name="trl">
<title text="Train arriving at Melksham" />
If you're coming on a training course by train, there's a station in
Melksham. The train arrives at 09:11 in the morning, in good time for
our 09:45 first day start, and on the last day we'll finish in time for
you to leave on the 17:07. Have a ride in our ex-London Taxi from and to
the station, with our compliments.
<img name="gje">
<title text="Graham Ellis" />
Your tutor for Well House Consultants training courses. We
believe that for a company to be taken seriously online, they should
full contact details - a postal address, phone number and a staff
contact name as a minimum. We've gone one step further - we've
provided you with a photo of the trainer as well.
<img name="pp">
<title text="A pearl" />
What other graphic could we possibly use to accompany information about
our Perl training courses, and the Perl language in general?
<img name="mouse">
<title text="A mousemat" />
Perl and Java, PHP and Tcl, MySQL and Ruby ... all make use of Regular
Expressions, and Regular Expressions are always a subject of great
interest to trainees on our courses. We've had "Regular Expression
Mouse Mats" made - a sort of quick reference card to Regular Expressions
that are always to hand - and if you attend a course, there's one for
you to take with you when you leave. The mousemats are also available
for sale through this site if you're desparate to get one, but already
know your PHP or Ruby!
<img name="brochure">
<title text="Joining instructions folder" />
All training course bookings are confirmed by post with a folder
of joining instructions. We enclose a map showing you where to
come, details of local hotels in case you don't live nearby (and
not many of our customers do!), and a description of what's on the
course. We also confirm the price and dates just in case someone's
ordered the wrong course!
<img name="fh">
<title text="Opentalk logo" />
With most training courses, you get your instruction and that's it - if
you're very lucky, the tutor might email you with answers to questions
that you asked during the course and he was unable to answer, but usually
the last of him you'll hear from him is "Thank you and goodbye". We
realise that students have questions that come up when they're putting
what they have learnt into practice, and so we've set up the opentalk
forum. You're encouraged to post questions there after your course,
and your tutor checks in to the forum at least once every 24 hours and
leaves answers. Being a public forum, anyone can post ... Opentalk's
gathering a momentum of its own, with discussions from past students on
subjects raing from subroutine prototypes in Perl to why Computer Based
training really hasn't taken off.
<img name="mix">
<title text="Patchwork of other graphics" />
Pieces of various images that we use to represent the subjects on
which we provide training - we use this image on pages that cover
information about our training in more than one subject.
<img name="co">
<title text="Shaking hands" />
Repeat business is much easier to "close" than a new account - so
it's very much in any supplier's interest to look after his customers
so that they will come back if they want more. We're constantly
astonished at how many companies ignore what seems, to us, to be
common sense. In our computer training business, you might think that
there's not much repeat business - but you'd be wrong; although we
don't expect to see the same person again on the same course, our
trainees often come back for other training, and they often recommend
us to their colleagues.
<img name="res">
<title text="Wireless Networking" />
We provide a laptop computer for each trainee to use during their courses
with us, and you're also welcome to bring your own computer along and
connect in via our training network, which supports both wireless
(IEEE 802.11b) and Cat 5 connections.
<img name="ctc">
<title text="Painting of Melksham Training Centre" />
A friend of ours, who lives and works in Hawaii, painted our training
centre in oils ... just from a photograph he found on the web. Thank
you Winston, we're most touched. The painting hangs, pride of place,
in our training centre entrance.
<img name="pw">
<title text="A golden pearl" />
A pun on "Perl" - the language that's still used for the majority of
server side web applications.
<img name="courseindex">
<title text="Alarm clock" />
For course schedule and diary pages, we use this image of an alarm
<img name="imlib">
<title text="Image library" />
Most of the images on this web site and in our "Of Course" newsletter
are taken using our Sony Mavica digital camera, which burns the pictures
onto a mini-CD. We edit / crop adjust the images using various software
on Apple Mac computers, and upload them to our web server which runs
Linux. A few of the images are copyright-free stock art, but we only
use such images where they are clearly representational rather than
photographic; if you see a picture that perports to be of a trainee of
ours, it IS a picture of a trainee of ours!
<img name="it">
<title text="Italian training" />
We have trained students from Italy on our courses, and can present
courses on site anywhere in Italy too. Such courses would be presented
in English.
<img name="at">
<title text="Austrian training" />
We've driven to Austria in the past, and we've also collected trainees from
Austria at Bristol Airport. If you require our specialist training, we're
quite happy to have you come to us, or to come to you.
<img name="us">
<title text="Training in the USA" />
Business has taken us from Miami to Chicago, from San Diego to New York, and
up to Alaska - with many places in between. In the past four months, the
author of these notes has been to the USA twice, and he has another visit
scheduled for next month. If you have just one or two people who need training,
why not come to us? Our training centre is less than two hours from London's
Heathrow airport, air fares are cheap, and we'll collect you from the airport.
<img name="fr">
<title text="Training in France" />
We're based in Southern England - which means we can reach France more easily
than we can reach parts of Scotland. We're very happy to train in France (and
have done so in the past), but please note that we have to present our courses
in English.
<img name="de">
<title text="Training in Germany" />
Our tutor has worked from Lake Constance and Munich in the South up to Frankfurt,
Dusseldorf and Monchengladbach. He's quite happy to repeat any of these experiences,
or to travel to new parts such as Hamburg, Leipzig and Berlin. If you have just one
or two trainees for a course, fly to Bristol or Southampton and we'll pick you up
from the airport.
<img name="ch">
<title text="Swiss training" />
Graham worked in Zurich and near Berne for some months a number of years ago, and
would be happy to renew his acquaintance with the country. Switzerland is the original
home of the Worldwide Web, which originated at CERN, Geneva.
<img name="ie">
<title text="Training in Ireland" />
Over the past few years, many high tech companies have set up their European bases in
the Dublin, Cork and Galway areas, and the trip across to give on site training courses
has become a familiar one to us; things have slowed there a little of late, but we can
still find our way from Rosslare or Dublin Docks to CityWest, Blanchardstown or Ballycoolin
without a map.
<img name="nl">
<title text="Dutch training" />
Trainees often visit us from the Netherlands to attend our courses, and we're more than
happy to collect them at Bristol Airport off the flights from Amsterdam. If you have 4
or more trainees requiring the same course at the same time, let us know and we'll come
to you.
<img name="no">
<title text="Training in Norway" />
We can come and train you in Norway - we've done so before in the Oslo area, and I'm
sure we'll be doing so again in the future. With the arrival of the budget airlines,
flights from Scandinavia to England are now available at a sensible price - if there are
just one or two of you who need PHP or Perl training, why not come to our training
centre to the West of London?
<img name="dk">
<title text="Training in Denmark" />
We're quite happy to provide training in Denmark - indeed we have passed through the
country in the past on our way to work in Norway and Sweden.
<img name="es">
<title text="Spain - training courses" />
On site courses can be run (in English) anywhere in mainland Spain - we bring everything,
you just provide the students and the room. We can also run courses on the islands, but
we may not be able to bring all the equipment with us if we have to fly.
<img name="pt">
<title text="Training in Portugal" />
Just give us the chance, and we'll come and train you in Portugal. If you don't have
a group, fly to England and come on our public course at Melskham - we can pick you up
from the airport before the course if you wish.
<img name="se">
<title text="Training in Sweden" />
At one time, I spent so much time on business in Sweden that I considered
learning the language. Alas, you folks speak such good English that you
shame me! If you require Tcl, PHP, or Perl training please let me know -
I would love to visit Helsingborg or Arborga, Gothenburg or Stockholm again,
or to see pastures anew.
<img name="au">
<title text="Hobart, Tasmania" />
The city of Hobart is situated at the mouth of the Derwent River, a relatively
short river but wide and deep in its estuary. Urbanisation is evident
for some considerable distance along both sides of this rift valley which
was formed by faulting. Just several kilometres to the south-west of
the city, the land is heavily forested and mountainous, rising steeply
to Mount Wellington (1270m). This graphic is from the free map and
satellite image page of Geoscience Australia -
<img name="ca">
<title text="Vancouver Skyline" />
Attending the first "Perl Whirl" took us to Vancouver, and onto a cruise ship
right up to Alaska. That's a far cry from Quebec, Ottawa and Toronto - each a
city that I have visited on business and love to return to.
<img name="yp">
<title text="Burmese Python" />
We really had to choose a Python to illustrate this programming language,
didn't we? The Burmese Python may grow to more 7 metres long and weigh
nearly 100kgs. In the wild, they're classified as an endangered species
but there are more than can be handled in captivity, as people have a
habit of buying pets that then become "too large" for them. The
Python programming language is object oriented, allowing you to start small
and then expand your application suite by re-using classes, modules and
<img name="hbx">
<title text="Books on PHP" />
Our library comprises some 400 technical books, of which about 40 are
on PHP. Nearly the same number cover MySQL. Books are available for
trainees use during courses, and former trainees are welcome back to use
the library at a later date too.
<img name="jbx">
<title text="Java Books" />
Our library comprises some 400 technical books, of which about 70 are
on Java and related subjects such as Ant, Servlets and JSP. Books are
available for
trainees use during courses, and former trainees are welcome back to use
the library at a later date too.
<img name="pbx">
<title text="Books on Perl" />
Our library comprises some 400 technical books, of which about 90 are
Books are available for
trainees use during courses, and former trainees are welcome back to use
the library at a later date too.
<img name="sbx">
<title text="SQL and MySQL Books" />
Our library comprises some 400 technical books, of which about 40 are
on SQL and MySQL. Many of the other books include sections on the use
of MySQL from Perl, Java, PHP and Python. Books are available for
trainees use during courses, and former trainees are welcome back to use
the library at a later date too.
<img name="tbx">
<title text="Books on Tcl, Tcl/Tk and Expect" />
Our library comprises some 400 technical books, of which about 20 are
on Tcl. Tcl, Tcl/Tk and Expect are specialist subjects, and we doubt
whether you'll find such a complete collection of books on the subject
anywhere else in our neighbourhood. Books are available for
trainees use during courses, and former trainees are welcome back to use
the library at a later date too.
<img name="ybx">
<title text="Python books" />
Our library comprises some 400 technical books, of which nearly 20 are
on Python. Related technologies such as SQL and XML, and general books on
programming and Object Oriented principles are also available. Books
are here for trainees use during courses, and former trainees are welcome
back to use the library at a later date too.
<img name="">
<title text="Our Training Centre" />
Our training centre is located in an old Georgian building on the
outskirts of Melksham, built around 1814 when local businessmen planned
to turn the town into a Spa town to rival Bath. Although the theory
was that "the waters must do you good because they taste so bad", there
were few takers and the three lodging houses that had been built were
turned to other uses. There's still accommodation available in The
Spa, though, so if you come here on a training course you'll be able
to stay just a stone's throw away.
Learn about this subject

This example is covered on the following public courses:
 * Learning to program in PHP
 * PHP Programming
 * PHP Programming
 * Learning to program in PHP
and is fully described on the course or in your printed course manual

Books covering this topic
Yes. We have over 700 books in our library. Books covering PHP are listed here and when you've selected a relevant book we'll link you on to Amazon to order.

Other Examples
This example comes from our "Additional PHP Material" training module. You'll find a description of the topic and some other closely related examples on the "Additional PHP Material" module index page.

Full description of the source code
You can learn more about this example on the training courses listed on this page, on which you'll be given a full set of training notes.

Many other training modules are available for download (for limited use) from our download centre under an Open Training Notes License.

Other resources
• Our Solutions centre provides a number of longer technical articles.
• Our Opentalk forum archive provides a question and answer centre.
The Horse's mouth provides a daily tip or thought.
• Further resources are available via the resources centre.
• All of these resources can be searched through through our search engine
• And there's a global index here.

Purpose of this website
This is a sample program, class demonstration or answer from a training course. It's main purpose is to provide an after-course service to customers who have attended our public private or on site courses, but the examples are made generally available under conditions described below.

Web site author
This web site is written and maintained by Well House Consultants.

Conditions of use
Past attendees on our training courses are welcome to use individual examples in the course of their programming, but must check the examples they use to ensure that they are suitable for their job. Remember that some of our examples show you how not to do things - check in your notes. Well House Consultants take no responsibility for the suitability of these example programs to customer's needs.

This program is copyright Well House Consultants Ltd. You are forbidden from using it for running your own training courses without our prior written permission. See our page on courseware provision for more details.

Any of our images within this code may NOT be reused on a public URL without our prior permission. For Bona Fide personal use, we will often grant you permission provided that you provide a link back. Commercial use on a website will incur a license fee for each image used - details on request.

© WELL HOUSE CONSULTANTS LTD., 2024: 48 Spa Road • Melksham, Wiltshire • United Kingdom • SN12 7NY
PH: 01144 1225 708225 • EMAIL: • WEB: • SKYPE: wellho

PAGE: • PAGE BUILT: Sun Oct 11 14:50:09 2020 • BUILD SYSTEM: JelliaJamb