Horse's Mouth blog articles - sorted by subject

This is a global index of over 2000 short technical and general articles written as "The Horse's Mouth" blog by Graham Ellis of Well House Consultants, sorted by subject. We have also listed longer articles and source code examples that relate to the same topic, for your convenience. Note that we do not list modules on which no blog articles have been written
top - top of pagenew - new articles not yet categorised
A - Linux, Apache httpd and Tomcat C - C and C++ programming 
G - General Training Topics H - PHP programming and techniques 
J - Java programmming including Web M - Well House Manor; hotel and events 
P - Perl programming and use Q - General programming subjects 
R - Ruby programming and use S - Databases / the MySQL database 
T - Tcl, Tcl/Tk, wish and Expect U - Lua programming and use 
W - Web site programming / techniques Y - Python programming and use 
Z - Miscellany end - end of page

A: Linux, Apache httpd and Tomcat

Overview A050 - Web Deployment - General
[2595] Twelve skills / knowledges needed for the design of a web site
[2568] Forums for your Melksham and open source discussions
[2099] Should I maintain the programming code on my own website?
[2072] Copyright, Portability and other nontechnical web site issues
[116] The next generation of programmer
(article) The Author of the Apache httpd and Tomcat Course

Overview A051 - Linux - General
[2035] 1234567890 ... coming up on Friday 13th
[2023] sw_vers - what version of OSX am I running?
(article) Linux and httpd file system layout - LAMP server

Overview A052 - Networking - General
[2150] Routers, Firewalls and multilayer servers
[2149] Routing Network Traffic - Proxies, Redirects and DNS
[768] Our new .eu top level domain
(article) What are NIS, LDAP, DNS and BIND
(article) Firewall fundamentals - Linux

Module A099 - Java Application - Deployment on the Web
[2599] Telling Apache web servers apart / notes for the non-technical
[2130] Javascript - move cursor over image to change a different image.
[1621] Linux and Java Course in London
[673] Helicopter views and tartans
[659] Web Application Components
[576] Why run two different web servers
[166] Acronyms

Module A100 - The Components of a Web-Based Solution
[2099] Should I maintain the programming code on my own website?
[1496] PHP / Web 2 logging
[1265] Apache, Tomcat, Jakarta, httpd, web server - what are they?
[1198] From Web to Web 2
[1176] A pu that got me into trouble
[924] The LAMP Cookbook - Linux, Apache, MySQL, PHP / Perl
[673] Helicopter views and tartans
[510] Dynamic Web presence - next generation web site
[442] How far away is that server?
[433] FTP - how to make the right transfers
[367] Ajax
[166] Acronyms
[49] Business is the predominant user of Tomcat, Perl and Tcl
[34] Linux / LAMP course
(article) Open Source - here to stay, or a flash in the pan?
(article) Web applications using LAMP technologies
(article) New to programming. Portable code. Perl or Java?
{index.php} Simple test script for WAMP
{examples.txt} Source code examples for our training modules

Module A101 - Linux -An Introduction For Users
[2636] Linux - useful tips including history and file name completion
[2494] Making Linux Politically correct
[2479] Accidentally typed ci rather than vi?
[2300] What does x on a linux directory mean?
[2299] How much space does my directory take - Linux
[2203] Always use su with minus. And where do programs come from?
[2201] Running straight from the jar, but not from a tar
[1904] Ruby, Perl, Linux, MySQL - some training notes
[1902] sstrwxrwxrwx - Unix and Linux file permissions
[1897] Keeping on an even keel
[1893] Some Linux and Unix tips
[1803] FTP passive mode - a sometimes cure for upload hangs
[1764] Yank and Push - copy and move in vi
[1651] ls command - favourite options
[1527] Selecting file names in a shell - one word or another
[1438] Copy and paste / cut and paste and other vi techniques
[1408] Wireless hotel tips - FTP and Skype connections failing
[1366] awk - a powerful data extraction and manipulation tool
[1288] Linux run states, shell special commands, and directory structures
[1287] Work and play at Well House Manor - Football and Shell Shortcuts
[1259] Where am I and how did I get here?
[1068] ls -l report, Linux / Unix - types and permssions
[1013] Copy multiple files - confusing error message from cp
[1012] Moving files between Windows / DOS and Linux / Unix
[984] Cardinal numbers and magic numbers
[749] Cottage industry or production line data handling methods
[711] THE home directory or MY home directory
[710] Linux training Glasgow, Python programming course Dundee
[703] Copying files and preserving ownership
[679] More or less on the edge of the page
[659] Web Application Components
[593] Finding where the disc space has gone
[431] File permissions of Linux and Unix systems
[430] Linux commands - some basics
[249] An easy way out
[152] Aladdin, or careful what you wish.
[74] pushd and popd
[73] vi - full circle
(article) awk - pattern scanning and formatting
(article) Korn Shell - Basics
(article) Korn Shell - History, storing to file, commands
(article) Korn Shell Scripting - an introduction
(article) Tiny guide to vi basics

Module A161 - Users and Groups
[2639] su or su - ... what is the difference?
[2491] Root is root for a reason!
[2301] Mistaken identity?
[2203] Always use su with minus. And where do programs come from?
[2117] Choosing a railway station fairly in PHP
[2103] Ask the Tutor - Open Source forum
[1904] Ruby, Perl, Linux, MySQL - some training notes
[1902] sstrwxrwxrwx - Unix and Linux file permissions
[1773] The Longest Possible Day
[1650] Looking for files with certain characteristics (Linux / Unix)
[1619] User and Group settings for Apache httpd web server
[1592] Setting up a new user - Linux or Unix
[683] Supporting users on Linux and Unix
[431] File permissions of Linux and Unix systems
[409] Functions and commands with dangerous names
(article) A Web interface for your Linux admin tasks

Module A162 - Backups and File System Management
[2299] How much space does my directory take - Linux
[1893] Some Linux and Unix tips
[1801] Will your backups work if you have to restore them?
[1765] Dialects of English and Unix
[1648] The tourists guide to Linux
[1439] Linux / Unix - layout of operating system files
[1288] Linux run states, shell special commands, and directory structures
[1023] Finding public writeable things on your linux file system
[1013] Copy multiple files - confusing error message from cp
[754] tar, jar, war, ear, sar files
[735] Boys will be boys, saved by Ubuntu
[703] Copying files and preserving ownership
[593] Finding where the disc space has gone
[554] What backup is adequate?
[334] Symbolic links and hard links
[153] Linux - where to put swap space
(article) Linux and httpd file system layout - LAMP server
(article) Why Partition a disc drive?
(article) Linux and XP - loading a dual boot system

Module A163 - Network Configuration and Security
[2489] Parallel Pinging, using Python Threads or Expect spawn lists
[2052] How was my web site compromised?
[1904] Ruby, Perl, Linux, MySQL - some training notes
[1712] As different as night and tyres
[1666] Slow boot and terminal start on Linux boxes
[1408] Wireless hotel tips - FTP and Skype connections failing
[1073] Heartbeat script in Perl
[511] Domain Forwarding - 2 ways of doing it
[506] What are DHCP and DNS?
[332] Looking up IP addresses
[267] Searching security holes
[37] Security and Safety
[11] A bolt of lightning on Multicasting
(article) Firewall fundamentals - Linux

Module A164 - Services and Regular Jobs
[2182] What Linux run level am I in?
[2145] Using the internet to remotely check for power failure at home (PHP)
[1903] daemons - what is running on my Linux server?
[1765] Dialects of English and Unix
[1733] memcached - overview, installation, example of use in PHP
[1731] Apache httpd, MySQL, PHP - installation procedure
[1700] FTP server on Fedora Linux
[1633] Changing a screen saver from a web page (PHP, Perl, OSX)
[1553] Automatic startup and shutdown of Tomcat
[1288] Linux run states, shell special commands, and directory structures
[1028] Linux / Unix - process priority and nice
[907] Browser -> httpd -> Tomcat -> MySQL. Restarting.
[544] Repeating tasks with crontab
(article) Windows clients to a Linux Server
{crontab} Sample crontab file - repeated, timed jobs

Module A165 - Installing Software
[2201] Running straight from the jar, but not from a tar
[2139] OS Commerce install made simple
[1700] FTP server on Fedora Linux
[809] What to do during a Linux build

Module A166 - Linux Utilities
[2638] Finding what has changed - Linux / Unix
[2484] Finding text and what surrounds it - contextual grep
[2320] Helping new arrivals find out about source code examples
[2145] Using the internet to remotely check for power failure at home (PHP)
[1690] Conversion of c/r line ends to l/f line ends
[1366] awk - a powerful data extraction and manipulation tool
[1361] Korn shell course
[71] Comparators in Linux and Unix
[63] Almost like old times
(article) awk - pattern scanning and formatting
(article) Korn Shell - Basics
(article) Korn Shell - History, storing to file, commands
(article) Korn Shell Scripting - an introduction
{as1} awk - BEGIN, END and patterns
{ladies.dat} input data for utilities
{demo.pl} Sample Perl script to analyse data file
{as3} Using awk to select and format data, and calculate
{gents.dat} Input data for utilities
{as2} awk - match in whole line or on specific field
{requests.txt} input data for utilities
{aspers.txt} grep example output
{demo.awk} awk script to analyse a data file

Module A167 - Shell Programming
[1904] Ruby, Perl, Linux, MySQL - some training notes
[1527] Selecting file names in a shell - one word or another
[1468] Lexical v Arithemetic testing, Bash and Perl
[1345] Perl and Shell coding standards / costs of an IT project
[1287] Work and play at Well House Manor - Football and Shell Shortcuts
[827] No news is good news with Unix and Linux
[749] Cottage industry or production line data handling methods
[64] Shell Script for CGI on the web
[63] Almost like old times
{skcount} Skill counter - sample script in alternative Perl language
{dcj} Data copy, with command line parameter
{dc4} Data copy, loop to copy files one by one, checking
{datcopy} Simple copy script to run from command line
{dc_checked} Data copy with conditional check
{dci} Data copy, use of shell variables
{skillcounter} Perl script - needs setting up to run as Linux command
{lookup.sh} Bourne Again Shell script for CGI Web server
{dc5} Data copy, calculating statistics
{dcif} Data copy, use of shell if statement

Module A168 - Compiler and Development Tools
[2674] Make and makefiles - a commented example to help you learn
[1671] Compiling C programs with gcc - an overview
[694] Ant and Make
{mytcl.c} C program for gcc practise
{makefile} Simple makefile example

Module A171 - Linux Server Admin - Exercise
[2491] Root is root for a reason!
[1719] A special day - last Friday in July
[1666] Slow boot and terminal start on Linux boxes

Module A172 - Korn Shell - interactive and programming facilities
[1660] Korn shell - some nuggets
[1659] String, Integer, Array, Associative Array - ksh variables
[1658] Some useful variables and settings in the Korn Shell
[1367] korn tips - some useful korn shell techniques
[1365] Korn Shell scripts on the web
[1364] Korn shell course - resources
[1361] Korn shell course
(article) Korn Shell - Basics
(article) Korn Shell - History, storing to file, commands
(article) Korn Shell Scripting - an introduction
{filestat} Comparing one or two files
{dat_backup} Simple shell script to back up file
{script_korn} Korn shell script
{funky} Define a function - Korn shell
{gvar} ksh - global and local variables
{sharon} for loop - Korn Shell
{selk} Korn Shell - Select example
{dat_backup3} Korn shell conditional testing
{hello_korn} Korn shell commands in a file
{numtee} Korn Shell - numeric (integer) testing
{stroppy} String Test Operators
{pippa} Setting up and referencing a Ksh array
{townline} Selects a town ending
{kornserver.cgi} Korn shell / web script using CGI
{tracey} Korn shell array and while loop
{dat_backup2} Uses bourne shell compatible tests

Module A180 - Name Services - overview
[690] Adding Virtual Hosts
[686] Name Services - telling your LDAP from your DNS
(article) What are NIS, LDAP, DNS and BIND

Module A181 - LDAP / OpenLDAP server
[686] Name Services - telling your LDAP from your DNS
(article) What are NIS, LDAP, DNS and BIND
{org_struct.ldif} define the organisation structure
{training.ldif} A sample user data entry

Module A191 - Installing Linux
[1292] DHCP automatic IP address v Static IP
[1288] Linux run states, shell special commands, and directory structures
[705] Disc Partitioning

Module A192 - Firewalls
[806] Check your user is human. Have him retype a word in a graphic
[770] Splash!
(article) Firewall fundamentals - Linux
{chaingang} sample iptables for firewalling a web server

Module A193 - DNS
[2537] Faster network, but not faster browsing until ...
[690] Adding Virtual Hosts
[686] Name Services - telling your LDAP from your DNS
(article) What are NIS, LDAP, DNS and BIND
{cco.php} setting up a menu to offer countries
{resolv.conf} client file to point to DNS server
{named.conf} bind 9 sample file - /etc/named.conf
{wellho.zone} sample zone file for spring.wellho.net domain
{resolve.php} PHP to look up country and domain details from an IP

Module A199 - Additional Linux Administration
[2232] Why sendmail one way, and pop3 the other?
[1774] What is my real and my effective ID? [Linux]
[1292] DHCP automatic IP address v Static IP
[476] May I be politically incorrect?

Module A207 - HTTP
[2596] Http protocol - what does a web server send
[2321] Uploading and Downloading files - changing names (Perl and PHP)
[1549] http, https and ajp - comparison and choice
[1503] Web page (http) error status 405
[1378] Etag in http headers - what is it?
[484] Setting the file name for a downloaded document
{relocate} Move a directory permanently via .htaccess

Module A211 - Web Application Design and Deployment
[2072] Copyright, Portability and other nontechnical web site issues
[1798] What does an browser understand? What does an HTML document contain?
[1547] New bathing idea for hotels from Hotelympia
[1545] Letting new visitors know we provide training courses
[1351] Compressing web pages sent out from server. Is it worth it?
[1256] What country are you in? How we find out on our web site
[1198] From Web to Web 2
[767] Finding the language preference of a web site visitor
[659] Web Application Components
[443] Server side scripting of styles to suit the browser
[356] Sudoku helper or sudoku cheat
[23] Skills and responsibilities
(article) Using current exchange rates on a web page

Module A212 - Secure Service and Credit Cards
[2097] PHP Course - for hobby / club / charity users.
[1840] Validating Credit Card Numbers
[46] Near and far security

Module A213 - Commercial and Legal Aspects
[2592] Re-using our pictures
[2252] Leaping dog, Leaping horse, copyright of old masters
[2140] Beware - giving copyright away when you upload a picture - Dogs Trust
[1937] Getting hold of the wrong end of the stick
[1840] Validating Credit Card Numbers
[1747] Who is watching you?
[1506] Ongoing Image Copyright Issues, PHP and MySQL solutions
[1486] Does anyone understand Lithuanian?
[1485] Copyright and theft of images, bandwidth and members.
[1431] Getting the community on line - some basics
[1054] UK legal requirements for your commercial web site
[994] Training on Cascading Style Sheets
[876] Making pages clearer - easy Disability Discrimination Act Compliance
[795] Remember a site's non-technical issues too
[759] Watch your Google profile
[746] Domain Listing Center and Domain Registry of America
[532] Copyright - how much can I legally copy?
[322] More maps
[320] Ordnance Survey - using a 'Get a map'
[288] Colour blindness for web developers
[259] Responding to spam
[142] Colour for access
(article) Using current exchange rates on a web page

Module A301 - XML, DTD, XSLT, XHTML and More
[2554] Adding retrospective ALT attributes to IMG
[2378] Handling XML in Perl - introduction and early examples
[2246] What difference does using the XHTML standard really make?
[1901] XML, HTML, XHTML and more
[1050] The HTML++ Metalanguage
[653] Easy feed!
(article) Handling XML in Java
(article) Using LWP to write Web Clients
{imglist.xsl} XSLT sample - produces a table of images -->
{xml5.pl} Alternative - using handlers
{xslt.php4} Process an XML file through XSLT in PHP
{capname.pl} Altering an XML document through LibXML
{reminder.html} Sample HTML document from this module

Module A401 - Structured Code and Object Orientation
[1717] Q - Should I use Perl or Python?
[343] Should I use structured or object oriented?
(article) Solution Centre - all article listing
(article) Solution Centre - all article listing
{firstalt} This is a sample of the Perl language
{firstweb} This is a sample of the PHP language
{firstwish} First program in Tcl
{firstprog} This is a sample of the Python language
{firstclass.java} Sample program - written in Java */

Module A501 - Java - Basic Language Overview
[2423] What is a JVM, a JRE, a JDK - components of the core Java Environment
[2120] Java on the Web Server - course for delegates with some prior Java experience
[871] Java oversold?
[659] Web Application Components
(article) New to programming. Portable code. Perl or Java?

Module A502 - Java - Basic Tools
[2422] Looking inside Java classes - javap and javadoc
[2153] Class Loading and Variable Conversion in Java
[1909] javax.servlet cannot be resolved - how to solve
[1771] More HowTo diagrams - MySQL, Tomcat and Java
[1562] Java Compiler - needs all classes, compiles them all too
[1192] What are WEB-INF and META-INF directories?
[1082] Straight from the .jar
[754] tar, jar, war, ear, sar files
{Passport.java} Passport class
{Summer.java} Summer test program

Module A503 - Java - Sourcing, Installing, Initial Testing
[2184] Choosing the right version of Java and Tomcat
[2153] Class Loading and Variable Conversion in Java
[2080] Using ApacheBench and jconsole to test and monitor Tomcat
[2079] Java - Memory Allocation and garbage collection
[1908] Java CLASSPATH explained

Module A504 - Java - Terminologes, Technologies and releases.
[1766] Diagrams to show you how - Tomcat, Java, PHP
[124] PHP v Java

Module A506 - Java - Installing and Deploying optional Technologies
[2082] Jmeter - a first test case
[2081] Connecting jconsole remotely - the principles
[2079] Java - Memory Allocation and garbage collection
[1718] Increasing Java Virtual Machine memory for Tomcat

Module A507 - Java - Servlets and JSPs
[2525] Using JSPs, Tag Libraries, Java Beans, Tomcat in one short example
[2151] What is a JSP tag library?
[479] New servlet from old

Module A509 - Java - Ant build tool
[694] Ant and Make
(article) Overview of Ant - a Java based build tool

Module A601 - Apache httpd - an overview
[2186] An FAQ on the Apache httpd and Apache Tomcat web servers, and on using them together
[2077] Why put Apache httpd in front of Apache Tomcat
[2063] Internal Dummy Connections on Apache httpd
[2054] Tuning httpd / the supermarket checkout comparison
[2038] Sticky Sessions with mod_jk (httpd to Tomcat)
[2016] Apache httpd and Apache Tomcat miscellany
[1897] Keeping on an even keel
[1593] Keep the client experience easy - single server contact point
[1265] Apache, Tomcat, Jakarta, httpd, web server - what are they?
[924] The LAMP Cookbook - Linux, Apache, MySQL, PHP / Perl
[659] Web Application Components
[576] Why run two different web servers

Module A602 - Apache httpd - Sourcing, Installation, Testing
[2520] Global and Enable - two misused words!
[2184] Choosing the right version of Java and Tomcat
[2096] Where is my new Apache httpd installed
[2080] Using ApacheBench and jconsole to test and monitor Tomcat
[1945] Summary - Apache httpd build on Linux
[1768] What is built in to this httpd and PHP?
[1731] Apache httpd, MySQL, PHP - installation procedure
[1707] Configuring Apache httpd
[1455] Connecting to MySQL 5 from PHP on Mac OSX Leopard
[1449] Upgrade Mac OSX to Leopard, Web Server Apache httpd config lost
[1292] DHCP automatic IP address v Static IP
[1095] Apache httpd , browser, MySQL and MySQL client downloads
[982] Notes from the white board
[907] Browser -> httpd -> Tomcat -> MySQL. Restarting.
[660] Stopping and restarting Apache httpd cleanly
[550] 2006 - Making business a pleasure
[526] Apache httpd - serving web documents from different directories
[523] Apache httpd release 2.2
(article) Linux and httpd file system layout - LAMP server
(article) A Web interface for your Linux admin tasks
(article) Windows - running Apache and MySQL from a CD
{yumyum.pl} Setting up and first test program for CGI scripts
{config.nice} Sample configuration details

Module A603 - Further httpd Configuration
[2478] How did I do THAT?
[2272] Monitoring and loading tools for testing Apache Tomcat
[2060] Database connection Pooling, SSL, and command line deployment - httpd and Tomcat
[1974] Moving a directory on your web site
[1955] How to avoid duplicating web page maintainance
[1954] mod_rewrite for newcomers
[1939] mod_proxy_ajp and mod_proxy_balancer examples
[1778] Pointing all the web pages in a directory at a database
[1767] mod_proxy and mod_proxy_ajp - httpd
[1762] WEB-INF (Tomcat) and .htaccess (httpd)
[1707] Configuring Apache httpd
[1636] What to do if the Home Page is missing
[1619] User and Group settings for Apache httpd web server
[1566] Strange behaviour of web directory requests without a trailing slash
[1564] Default file (MiMe types) for Apache httpd and Apache Tomcat
[1554] Online hotel reservations - Melksham, Wiltshire (near Bath)
[1551] Which modules are loaded in my Apache httpd
[1381] Using a MySQL database to control mod_rewrite via PHP
[1377] Load Balancing with Apache mod_jk (httpd/Tomcat)
[1355] .php or .html extension? Morally Static Pages
[1351] Compressing web pages sent out from server. Is it worth it?
[1207] Simple but effective use of mod_rewrite (Apache httpd)
[1121] Sharing the load with Apache httpd and perhaps Tomcat
[1080] httpd.conf or .htaccess?
[1009] Passing GET parameters through Apache mod_rewrite
[934] Clustering, load balancing, mod_rewrite and mod_proxy
[853] To list a directory under httpd on a web server, or not?
[755] Using different URLs to navigate around a single script
[662] An unhelpful error message from Apache httpd
[649] Denial of Service ''attack''
[631] Apache httpd to Tomcat - jk v proxy
[550] 2006 - Making business a pleasure
[526] Apache httpd - serving web documents from different directories
[466] Separating 'per instance' data from binaries and web sites
[345] Spotting a denial of service attack
(article) Linux and httpd file system layout - LAMP server
(article) A Web interface for your Linux admin tasks
(article) Load balancing and robustness - httpd, tomcat, PHP, Servlets, MySQL
(article) Making all your .html files run a Perl script
(article) The proxy jServ, jk, jk2, warp and jk story
(article) Windows - running Apache and MySQL from a CD
{webuser} Script to run
{DOTmy.cnf} Override MySQL defaults with .my.cnf
{AUP} Acceptable User Policy
{DOThtaccess} mod_rewrite - all .html request divert to a script
{andy} A Programmed RewriteMap for mod_rewrite in PHP
{fulluser} Script to create Linux and MySQL accounts
{demo.php} Demonstration of mod_rewrite
{README} sample README file
{add_account.php} Add a MySQL and Linux account from a web page

Module A604 - Apache httpd - virtual hosts
[1896] Virtual Hosts and Virtual Servers
[1687] Virtual Hosting on Apache httpd - a primer example
[690] Adding Virtual Hosts
(article) Multiple domains on a single web server
{vh} Virtual hosts - a simple structure
{vhost.snowdrop.conf} Virtual host sample - snowflake, snowdrop and raindrop
{vhosts_proxy.conf} Virtual Hosting Example with forwarding to Tomcat

Module A606 - Apache httpd - log files and log tools
[1796] libwww-perl and Indy Library in your server logs?
[1780] Server overloading - turns out to be feof in PHP
[1761] Logging Cookies with the Apache httpd web server
[1656] Be careful of misreading server statistics
[1598] Every link has two ends - fixing 404s at the recipient
[1503] Web page (http) error status 405
[1237] What proportion of our web traffic is robots?
[376] What brings people to my web site?
(article) Web Forensics
(article) Log file analysis - short Python example

Module A607 - Apache httpd mod_rewrite
[2555] Bookkeeping
[2094] If you have a spelling mistake in your URL / page name
[1954] mod_rewrite for newcomers
[1778] Pointing all the web pages in a directory at a database
[1771] More HowTo diagrams - MySQL, Tomcat and Java
[1731] Apache httpd, MySQL, PHP - installation procedure
[1636] What to do if the Home Page is missing
[1381] Using a MySQL database to control mod_rewrite via PHP
[1376] Choosing between mod_proxy and mod_rewrite
[1207] Simple but effective use of mod_rewrite (Apache httpd)
[1009] Passing GET parameters through Apache mod_rewrite
[1006] Apache httpd and Apache Tomcat together tips
[934] Clustering, load balancing, mod_rewrite and mod_proxy
[755] Using different URLs to navigate around a single script
[631] Apache httpd to Tomcat - jk v proxy
(article) Making all your .html files run a Perl script
(article) The proxy jServ, jk, jk2, warp and jk story
(article) Load Balancing and Clustering

Module A608 - Apache httpd mod_proxy
[2482] Load balancing with sticky sessions (httpd / Tomcat)
[2325] Apache, Tomcat, mod_proxy
[2273] Three recent questions on Tomcat Convertors
[2062] Virtual hosting and mod_proxy forwarding of different domains (httpd)
[1944] Forwarding session and cookie requests from httpd to Tomcat
[1939] mod_proxy_ajp and mod_proxy_balancer examples
[1767] mod_proxy and mod_proxy_ajp - httpd
[1566] Strange behaviour of web directory requests without a trailing slash
[1376] Choosing between mod_proxy and mod_rewrite
[1121] Sharing the load with Apache httpd and perhaps Tomcat
[1006] Apache httpd and Apache Tomcat together tips
[934] Clustering, load balancing, mod_rewrite and mod_proxy
[631] Apache httpd to Tomcat - jk v proxy
(article) The proxy jServ, jk, jk2, warp and jk story
(article) Load Balancing and Clustering
{proxy.conf} Sample mod_proxy configurations

Module A651 - Tomcat Overview
[2186] An FAQ on the Apache httpd and Apache Tomcat web servers, and on using them together
[2077] Why put Apache httpd in front of Apache Tomcat
[2016] Apache httpd and Apache Tomcat miscellany
[1941] Server - Service - Engine - Host, Tomcat
[1771] More HowTo diagrams - MySQL, Tomcat and Java
[1265] Apache, Tomcat, Jakarta, httpd, web server - what are they?
[659] Web Application Components
[576] Why run two different web servers
[498] Why is Tomcat called Tomcat?
[49] Business is the predominant user of Tomcat, Perl and Tcl

Module A652 - Tomcat -Sourcing, Installing and Initial Testing
[2088] Changing the 404 - file not found - page in Tomcat
[1550] Java (JSP and Servlet examples) live on our server
[1049] Java 6, Apache Tomcat 6.
[837] Tomcat - Shutdown port
(article) Running CGI scripts in Apache Tomcat
(article) Running SSI (Server Side Include) scripts in Apache Tomcat
{server.course.xml} Cut down server.xml file, from a course practical
{web.course.xml} web.xml, as cut down / modified during a training course
{tomcat-users.course.xml} tomcat-users.xml file, modified on a training course

Module A653 - Tomcat - Configuring Web Applications
[2088] Changing the 404 - file not found - page in Tomcat
[1909] javax.servlet cannot be resolved - how to solve
[1564] Default file (MiMe types) for Apache httpd and Apache Tomcat
[1552] Extra public classes in deploying Apache httpd and Tomcat
[1192] What are WEB-INF and META-INF directories?
[1082] Straight from the .jar
[1074] Java beans and classes, .war and .jar files
[1006] Apache httpd and Apache Tomcat together tips
[754] tar, jar, war, ear, sar files
[479] New servlet from old
[465] Changing Tomcat's web.xml and reloading a web application
(article) Running CGI scripts in Apache Tomcat
(article) Running SSI (Server Side Include) scripts in Apache Tomcat
{page1.html} Test page - HTML - for new Tomcat install -->
{Agetest.java} Class to use with age testing JSP pages such as supervisor.jsp
{bookform.html} Form to ask for ISBN number -->
{first.web.xml} Very simplest web.xml -->
{booklook.jsp} JSP tags used to call up Java Beans -->
{demoform.jsp} A JSP to calculate based on form data -->
{TinyServ.java} A Simple servlet for testing initial operation of Tomcat
{Autumn.java} Servlet Sessions, and variable scope.
{together.jsp} A form and a program in the same .jsp -->
{shortform.html} A short form to allow the user to input to a JSP -->
{Smallest.java} Smallest servlet - hit counter
{bookrun.jsp} JSP to get author based on ISBN number in form -->
{Book.java} Book bean - connect to MySQL to look up Author based on ISBN */
{Tempconv.java} Temperature Conversion Servlet -->
{web.xml} mapping servlet URLs to classes -->
{Coffeeweb.java} Servlet source + web.xml + CLASSPATH all in one example
{index.html} Home page for latmj web application -->
{prog1.cgi} Perl script to test Apache Tomcat CGI support
{Summer.java} First Example of using Java Servlet Sessions
{first.jsp} A simple calculator in a JSP page -->
{demo.jsp} A Java Server Page Multiplication table -->
{isbnform.html} Form for bl3.jsp example -->
{supervisor.jsp} JSP Page to compare your age to 21, using the agetest class -->
{idemo.shtml} SSI Script to test Apache Tomcat SSI support

Module A654 - Configuring and Controlling Tomcat
[2652] Reading and writing cookies in Java Servlets and JSPs
[2163] CATALINA_OPTS v JAVA_OPTS - What is the difference?
[2061] Tomcat 6 - Annotated Sample Configuration Files
[2039] The Invoker
[1994] tomcat-users.xml; what a difference a space made
[1943] Port and Glasses
[1762] WEB-INF (Tomcat) and .htaccess (httpd)
[1553] Automatic startup and shutdown of Tomcat
[1503] Web page (http) error status 405
[1370] Apache Tomcat Performance Tuning
[1351] Compressing web pages sent out from server. Is it worth it?
[914] A practical example of roles
[907] Browser -> httpd -> Tomcat -> MySQL. Restarting.
[837] Tomcat - Shutdown port
{6_tomcat-users.xml} Sample tomcat_users.xml for Tomcat 6
{6_context.xml} Tomcat 6 - sample context.xml
{6_web.xml} Sample web.xml for Tomcat 6
{6_server.xml} Tomcat 6 - sample server.xml file
{tomcat} Tomcat 5 startup script for /etc/init.d and chkconfig use

Module A655 - Using Tomcat and Apache httpd Together
[2482] Load balancing with sticky sessions (httpd / Tomcat)
[1944] Forwarding session and cookie requests from httpd to Tomcat
[1940] URL rewriting with front and back servers
[1938] Predictive Load Balancing - PHP and / or Java
[1771] More HowTo diagrams - MySQL, Tomcat and Java
[1552] Extra public classes in deploying Apache httpd and Tomcat
[1549] http, https and ajp - comparison and choice
[1383] Monitoring mod_jk and how it is load balancing
[1376] Choosing between mod_proxy and mod_rewrite
[631] Apache httpd to Tomcat - jk v proxy
[576] Why run two different web servers
[436] Linking Apache httpd to Apache Tomcat
(article) Load balancing and robustness - httpd, tomcat, PHP, Servlets, MySQL
(article) The proxy jServ, jk, jk2, warp and jk story
{jkworkers.properties} Configuration file for mod_jk with load balancing
{snowdrop.httpd.jk.conf} mod_jk configuration example - balancing and status
{httpd.forward} Forwarding from http to Tomcat

Module A656 - More Tomcat Configuration
[2272] Monitoring and loading tools for testing Apache Tomcat
[1899] Virtual Hosting under Tomcat - an example
[1718] Increasing Java Virtual Machine memory for Tomcat
[1370] Apache Tomcat Performance Tuning
[466] Separating 'per instance' data from binaries and web sites
[282] Short weekend
(article) Load balancing and robustness - httpd, tomcat, PHP, Servlets, MySQL
{Store6.java} Store class, used to maintain state in JSP demo */
{server.xml} Sample server.xml file
{products.txt} Product data for Shopping cart demo
{web.xml} Session timeout changed to 120 minutes -->
{index.jsp} A Shopping cart JSP that maintains state -->

Module A657 - Using httpd to front Tomcat
[2483] Clustering on Tomcat
[1944] Forwarding session and cookie requests from httpd to Tomcat
[1940] URL rewriting with front and back servers
[1939] mod_proxy_ajp and mod_proxy_balancer examples
[1566] Strange behaviour of web directory requests without a trailing slash
[1377] Load Balancing with Apache mod_jk (httpd/Tomcat)
[631] Apache httpd to Tomcat - jk v proxy
[576] Why run two different web servers
(article) The proxy jServ, jk, jk2, warp and jk story

Module A690 - Clustering and load balancing
[2483] Clustering on Tomcat
[2482] Load balancing with sticky sessions (httpd / Tomcat)
[2059] Sharing the load between servers - httpd and Tomcat
[1995] Automated server heartbeat and health check
[1993] Load Balancing - Hardware or Software?
[1771] More HowTo diagrams - MySQL, Tomcat and Java
[1121] Sharing the load with Apache httpd and perhaps Tomcat
[934] Clustering, load balancing, mod_rewrite and mod_proxy
(article) Load balancing and robustness - httpd, tomcat, PHP, Servlets, MySQL
(article) The proxy jServ, jk, jk2, warp and jk story
(article) Load Balancing and Clustering

Module A692 - Monitoring and load testing your server
[2272] Monitoring and loading tools for testing Apache Tomcat
[2082] Jmeter - a first test case
[2080] Using ApacheBench and jconsole to test and monitor Tomcat
[2079] Java - Memory Allocation and garbage collection
[1718] Increasing Java Virtual Machine memory for Tomcat

Module A801 - Overview of J2EE technology
[687] Presentation, Business and Persistence layers in Perl and PHP

Module A802 - The JBoss application server
[754] tar, jar, war, ear, sar files

Module A805 - Perl - modPerl, Mason, CGI.pm and LWP
[2416] Automating access to a page obscured behind a holding page
[260] Embperl
[45] CGI v mod_perl
{coojar} Automated web client to wait for results page

Module A900 - Tomcat - Extra Features
[1939] mod_proxy_ajp and mod_proxy_balancer examples
[1899] Virtual Hosting under Tomcat - an example
[1896] Virtual Hosts and Virtual Servers
[1383] Monitoring mod_jk and how it is load balancing
[1377] Load Balancing with Apache mod_jk (httpd/Tomcat)
[1376] Choosing between mod_proxy and mod_rewrite
[1370] Apache Tomcat Performance Tuning
[1121] Sharing the load with Apache httpd and perhaps Tomcat
[1006] Apache httpd and Apache Tomcat together tips
[934] Clustering, load balancing, mod_rewrite and mod_proxy
(article) Load Balancing and Clustering
{balance.conf} httpd mod_rewrite map for load balancing Apache Tomcat
{sslc} server.xml setup example - SSL connector
{mod_rewrite-load_balance} Configuration file mod_rewrite load balancing
{bal.httpd.conf} Load balancing a number of Tomcat instances via httpd
{clust} Clustering - basic setup for server.xml
{cluck.pl} "heartbeat" script to switch servers
{server.xml.virtual} Virtual Hosting on Tomcat.

Module A911 - Using Tomcat in a live environment
[2218] Multiple web applications under Tomcat - what are the options?

Module A912 - Upgrading and tuning Tomcat
[2082] Jmeter - a first test case
[2060] Database connection Pooling, SSL, and command line deployment - httpd and Tomcat
[1908] Java CLASSPATH explained
[1718] Increasing Java Virtual Machine memory for Tomcat
[1377] Load Balancing with Apache mod_jk (httpd/Tomcat)

top - top of pagenew - new articles not yet categorised
A - Linux, Apache httpd and Tomcat C - C and C++ programming 
G - General Training Topics H - PHP programming and techniques 
J - Java programmming including Web M - Well House Manor; hotel and events 
P - Perl programming and use Q - General programming subjects 
R - Ruby programming and use S - Databases / the MySQL database 
T - Tcl, Tcl/Tk, wish and Expect U - Lua programming and use 
W - Web site programming / techniques Y - Python programming and use 
Z - Miscellany end - end of page

C: C and C++ programming

Overview C050 - C - General
[2669] Efficient use of dynamic memory - C and realloc
[2536] All the Cs ... and Java too
[2504] Learning to program in ...
[2091] C, C++ and C# ... Java and JavaScript
[2086] C Programming v Learning to Program in C. Which course?
[2002] New C Examples - pointers, realloc, structs and more
(article) Introduction to the C Programming Language
{tryme.c} realloc - adds new memory in sizeable chunks
{pinc2.c} Pascal's triangle all in calloc'd memory
{cppex.c} uses of preprocessor directives (cpp)
{pinc.c} Pascal's Triangle - calloc'd rows
{globals.h} include file for cppex.c
{starstar.c} multilevel pointers
{remember.c} Call by value v call by address

Overview C051 - C++ - General
[2577] Complete teaching example - C++, inheritance, polymorphism
[2536] All the Cs ... and Java too
[2504] Learning to program in ...
[2370] C++, Python, and other training - do we use an IDE
(article) Introduction to the C plus plus Programming Language
{selfhotel.cpp} extensions to base functionallity - first example
{starredhotel.cpp} extensions to base functionallity - second example
{starredhotel.h} header file - the other extended class
{selfhotel.h} header file - one of the extended classes
{further.cpp} Main demo program to show polymorphism in C++
{g_hotel.cpp} method code for base functionallity
{g_hotel.h} header file - base class

Module C101 - Introduction to C
[1933] Learning to Program in C
[885] Why do we still need C?
[336] Targetted Advertising
[318] Choosing a theme
[317] Programming languages - a comparison
[304] Training courses in the C language
(article) Introduction to the C Programming Language

Module C201 - C Language Fundamentals
[2576] What does const mean? C and C++
[2005] Variables and pointers and references - C and C++
[1671] Compiling C programs with gcc - an overview
[888] Turning C from source to a running program
{hello.c} First C program
{first.c} First program and some comments
{makefile} makefile for C version of "hello world"

Module C202 - A first practical program
[2580] C course inspires new teaching examples
[888] Turning C from source to a running program
{calcit.c} First calculation
{cvopt.c} Prompt - read - calculate - decide - report
{adder.c} Variables and arithmetic in C
{nranges.c} Testing number ranges in C
{fred.c} Calculation of VAT on an amount
{makefile} makefile for module C202
{tconv.c} Temperature conversions

Module C203 - Conditionals and Loops
[2570] Function Prototypes in C
[2002] New C Examples - pointers, realloc, structs and more
[1696] Saying NOT in Perl, PHP, Python, Lua ...
[1582] Ruby, C, Java and more - getting out of loops
[1220] for loop - how it works (Perl, PHP, Java, C, etc)
[1191] Smart English Output - via PHP and Perl ? : operator
[962] Breaking a loop - Ruby and other languages
[353] Wimbledon Neck
{demo.h} Function prototypes for err.c and otherbits.c demo
{cb.c} Using { and } to scope a block
{tall4.c} Temperature conversions with ++ and +=
{tall6.c} Temperature conversions in a while loop
{sindy.c} Singapore teapot in C
{sindol.c} Singapore Teapot answer
{ex_203.c} Exercise - throw a die until you get a 6
{tall2.c} Temperature conversions using switch
{otherbits.c} Functions used in function prototype demo (ANSI C)
{eer.c} Program that makes use of ANSI C function prototypes
{makefile} makefile for module C203
{tall.c} Temperature conversions using if
{tall3.c} Temperature conversions in a while loop

Module C204 - Functions, Macros and programs in multiple files
[2575] Sharing variables between files of code in C - extern
[2570] Function Prototypes in C
[1478] Some new C programming examples - files, structs, unions etc
[1163] A better alternative to cutting and pasting code
[775] Do not duplicate your code
{funfuncs.c} use of extern to reference variable held elsewhere
{fundy.c} call by value v call by pointer / reference
{tcmain.c} Using functions
{tcall.c} Function definition and call
{healthybits.c} functions to be loaded from another program
{healthcheck.c} function prototypes and extern
{makefile} makefile for module C204
{tcsub.h} Using functions - the header file
{funfiles.c} The home for an extern variable
{tcsub.c} Functions in their own file

Module C205 - Arrays
[2002] New C Examples - pointers, realloc, structs and more
[1614] When an array is not an array
{series.c} read array, print in reverse, min and max
{abits.c} extern - a global variable
{abits.h} header file for global variable demo
{morearr.c} Arrays - days and months
{amain.c} Use of constants and globals
{arrbad.c} Arrays - triangle numbers WITH ERROR
{makefile} makefile for module C205
{arr1.c} Arrays - triangle numbers

Module C206 - Character Strings
[1338] Handling Binary data in Tcl (with a note on C)
{rabbit.c} Structures and file i/o - C
{readwrite.c} File handling basics in C
{csame.c} Comparisons of strings in C
{dynbad.c} How NOT to do it - overrunning an array
{fff} Some sample data
{sti1.c} Characters and strings in C
{range.c} Summing numbers from the command line
{cstr.c} String manipulation in C
{pothat.c} Strings via pointers and arrays of chars
{makefile} makefile for module C206
{dynamic.c} memory allocation and release with calloc and free
{cli.c} Command Line Handling

Module C207 - Pointers and references
[2670] Pointers to Pointers to Pointers - what is the point?
[2572] The what and why of C pointers
[2005] Variables and pointers and references - C and C++
[1497] Training Season Starts again!
[1478] Some new C programming examples - files, structs, unions etc
[1155] Pointers in C
{plot.c} Passing an array to a function
{ip2.c} Passing pointers to functions
{ptr1.c} Temperature conversions - pointers
{p1.c} First use of pointers
{pdo.c} Hello pointer world
{psecond.c} How a pointer can give a temporary name
{cli2.c} Handling command line args via pointers
{dj.c} Comparing call by name and call by value
{pfirst.c} use of pointer - passing to function
{arp.c} referencing array members through pointers
{makefile} makefile for module C207
{ex_c207.c} passing pointers in to a function to allow multiple returns
{po.c} Pointers and addresses - the mechanism

Module C208 - Programming techniques and tools
{cle.c} Command line arguments and the environment
{qn208.c} Command line options and parameters
{ctoken.c} Tokenising a string into a structure
{makefile} makefile for module C202
{fyle.c} File reading - template for delegates

Module C209 - Structures and Unions
[2573] C Structs - what, how and why
[1669] What are Unions (C programming)
[1584] Using Structs and Unions together effectively in C
[1572] C - structs and unions, C++ classes and polymorphism
[1478] Some new C programming examples - files, structs, unions etc
{mytrains.c} Use of pointer to a structure
{reso.c} Struct, Structures and Structure Pointers
{dinners.c} Read file into array of structs
{trains.c} An array of structures
{union.c} Example of a Union in C
{tud.c} A Union within a struct - practical use demonstration
{lunches.c} Read file into array of structs
{st1.c} Definition and first use of a structure

Module C210 - File Handling
[2572] The what and why of C pointers
[2571] Reading and writing files in C
[2002] New C Examples - pointers, realloc, structs and more
{filesinc.c} low level file handling with open
{cmelk.c} Text file read and write
{lunches.c} Read file into array of structs
{ffiles.c} fopen to access files at a higher level
{deardir.c} Parsing a directory

Module C211 - Standard Libraries and other headers
[2575] Sharing variables between files of code in C - extern
{cpp.c} C Preprocessor examples
{ex1.c} use of #define and #include
{waterhorse.h} extern, and use of preprocessor to control it
{clever.h} Example of included file
{house.c} Sharing variables between object files - main program
{abc.h} include file example for cpp.c
{bathroom.c} Sharing extern variables - a file of functions

Module C212 - Memory Management
[2669] Efficient use of dynamic memory - C and realloc
[1845] Passing a table from Lua into C
[1670] Dynamic Memory Allocation in C
[1589] Dynamic Memory Allocation in C - calloc, realloc
[1581] What is an lvalue? (Perl, C)
[1497] Training Season Starts again!
(article) Want something more dynamic than an array?
{slurpit.c} Dynamic memory allocation - reading a file of unknown length
{supper.c} Read file into array of structs

Module C221 - Secure C Programming
{oob.c} A poor program - using un initialised variables and an out of bounds array

Module C231 - Introduction to C++
[2169] When should I use OO techniques?
[2004] Variable Scope in C++
[928] C++ and Perl - why did they do it THAT way?
[336] Targetted Advertising
[318] Choosing a theme
[317] Programming languages - a comparison
(article) Introduction to the C plus plus Programming Language
(article) Solution Centre - all article listing
(article) Solution Centre - all article listing
{ir.cpp} File of functions
{app1.cpp} Main application
{makefile} Compile / Load instructions for examples in this module
{ir.inc} Function prototypes for first demo

Module C232 - Defining and using classes in C++
[2579] Creating, setting up and using objects in C++
[2578] Where are your objects stored in C++?
[2577] Complete teaching example - C++, inheritance, polymorphism
[1925] Introduction to Object Oriented Programming
{book.inc} Class interface - book
{demo2.cpp} Further base and subclass definition
{afuncs.cpp} Class use with accessory functions
{demo1.h} Base class and subclass header definition
{dayfour.cpp} Creating objects on the stack or heap
{g_main.cpp} Fundamental use of classes example - C++
{hotel.inc} Class descriptor
{a3.cpp} Inherited methods - test program
{demomake} makefile for module c232
{mylib.cpp} Main application calling constructors and destructors
{hcd.cpp} Class description with accessor functions
{book.cpp} Class implementation code - book
{makefile} Compile / Load instructions for examples in this module
{demo2.h} Further base and subclass header definition
{hotel.cpp} Class member code
{a2.cpp} Array of objects of different types
{melksham.cpp} Class use with accessor functions
{demo1.cpp} Base class and subclass method definition
{allin1.cpp} Class definition and use all in one file
{hmain.cpp} First class in C++

Module C233 - OO in C++ - beyond the basics
[2577] Complete teaching example - C++, inheritance, polymorphism
[1819] Calling base class constructors
[1674] What a lot of files! (C++ / Polymorphism demo)
[1572] C - structs and unions, C++ classes and polymorphism
[1217] What are factory and singleton classes?
[925] C++ - just beyond the basics. More you can do
[831] Comparison of Object Oriented Philosophy - Python, Java, C++, Perl
[801] Simple polymorphism example - C++
[798] References and Pointers in C++
{regionhotel.inc} include file to define region hotel
{beasts.cpp} Definition of polymorphic class methods
{regionhotel.cpp} Derived class member code
{melkshamhotel.cpp} Derived class member code
{allinone.cpp.ex} Inheritance and Polymorphism example (all in 1 file)
{tinin.cpp} base class, extended class, test code
{hotel.inc} Class descriptor
{testh.cpp} First denmo of polymorphism
{testh2.cpp} Demo of polymorphism across an array
{makefile} Compile / Load instructions for examples in this module
{loader} Complete first Polymorphism example
{accom3.cpp} An array of objects
{hotel.cpp} Class member code
{accomchooser.cpp} Class using classes and derived classes with inheritance
{accom2.cpp} Class storing strings within an object
{melkshamhotel.inc} include file to define melkshamhotel
{accom4.cpp} An array of objects
{beasts.h} Definition of polymorphic class headers

Module C234 - Further C++ Object Oriented features
[2673] Multiple Inheritance in C++ - a complete example
[2576] What does const mean? C and C++
[2004] Variable Scope in C++
[1819] Calling base class constructors
[1159] It can take more that one plus one to get two.
[831] Comparison of Object Oriented Philosophy - Python, Java, C++, Perl
[802] undefined reference to typeinfo - C++ error message
[801] Simple polymorphism example - C++
{regionhotel.inc} include file to define melkshamhotel
{PMdemo} Polymorphism - complete example
{regionhotel.cpp} Derived class member code
{melkshamhotel.cpp} Derived class member code
{bighotels.cpp} Comparing objects
{cube.cpp} Operator overloading
{pet.cpp} multiple constructors, default parameters
{hotel.inc} Class descriptor
{erandest.cpp} costly, costly, costliest - object comparison
{r2.cpp} References and Pointers for each array member
{makefile} Compile / Load instructions for examples in this module
{refdemo.cpp} References and Pointers
{hotel.cpp} Class member code
{melkshamhotel.inc} include file to define melkshamhotel

Module C235 - I/O in C++
[1675] Comparing Objects in C++
[1478] Some new C programming examples - files, structs, unions etc
{stdcodes.xyz} Sample data file ...
{file01.cpp} File handling with C++ streams
{makefile} Compile / Load instructions for examples in this module
{fpri.cpp} Formatting floating point numbers in C++
{ioex.cpp} Stream demonstration

Module C236 - Exceptions
[2622] Handling unusual and error conditions - exceptions
[1875] What are exceptions - Python based answer
[799] The case for exceptions
(article) errors v exceptions
{prob.cpp} Exception handling - why we need it
{except.cpp} Exception handling - catches
{levels.cpp} Exceptions - try, catch yourself AND throw to parent too
{makefile} Compile / Load instructions for examples in this module

Module C238 - Templates
[1478] Some new C programming examples - files, structs, unions etc
{template.cpp} Function templates
{vec01.cpp} Use of a vector in C++
{makefile} Compile / Load instructions for examples in this module

Module C239 - Putting it all together
[2674] Make and makefiles - a commented example to help you learn
[2673] Multiple Inheritance in C++ - a complete example
[2646] Compile but do not run PHP - syntax check only
[1181] Good Programming practise - where to initialise variables
[945] Code quality counts
[925] C++ - just beyond the basics. More you can do
[836] Build on what you already have with OO
(article) What makes a good variable name?
{Makefile} Makefile for multiple inheritance demo
{Expense.cpp} A second subclass for multiple inheritance demo
{pd5.cpp} Switching from array to vector
{Film.h} header file for main subclass - multiple inheritance demo
{Make_mark_2} Alternative Makefile to show Makefile facilities
{Film.cpp} main subclass for multiple inheritance demo
{pd1.cpp} Inheritance in C++ - base demonstration
{Filmtest.cpp} Main program for multiple inheitance demo
{HireFilm.h} Main class specification - multiple inheritance demo
{pd4.cpp} add iostream / namespace, inline, new, printing function, override +
{HireFilm.cpp} Main class for multiple inheritance demo
{pd2.cpp} add an array of objects
{Expense.h} Header file for second subclass
{pd3.cpp} Add an object comparator

top - top of pagenew - new articles not yet categorised
A - Linux, Apache httpd and Tomcat C - C and C++ programming 
G - General Training Topics H - PHP programming and techniques 
J - Java programmming including Web M - Well House Manor; hotel and events 
P - Perl programming and use Q - General programming subjects 
R - Ruby programming and use S - Databases / the MySQL database 
T - Tcl, Tcl/Tk, wish and Expect U - Lua programming and use 
W - Web site programming / techniques Y - Python programming and use 
Z - Miscellany end - end of page

G: General Training Topics

Subject G100 - Introduction to Melksham
[2350] Ten years in Melksham - looking forward to ten more.
[2329] Great to be in Melksham
[1725] A future vision for Melksham
[1341] Moving to Melksham? Househunting map.
[866] A lazy programmer is a good programmer
[847] Image maps for navigation - a straightforward example
[676] Melksham, Wiltshire
[517] An occasional chance, and reducing data to manageable levels
[322] More maps
[291] Why are we no. 404
[269] Free parking for short errands in Melksham
(article) Creating Really Memorable Experiences

Subject G101 - Getting to and from Melksham
[2634] London to and from Melksham by public transport
[2493] Melksham buses to/from Chippenham, Trowbridge, Bath, Devizes, London
[2367] Learning to program - how to jump the first hurdles
[2057] Train and Coach fares from London (and airports) to Melksham
[1997] Travelling to a course - station pickups
[1802] Motorcycles welcome at Well House Manor
[1723] Bath - Melksham - Devizes. Bus route changes, new timetable
[1594] Please support improvements in our train service
[1567] Melksham - Swindon. Train v Bus v Car
[1511] Buses from Well House Manor, Melksham, to Bath
[1428] Travel Across Wiltshire - the game
[1085] Lawrence Webb's Melksham Taxi service
[952] Coming from London to Melksham by train for a course
[856] The train returns for a few weeks
[814] Melksham Railway Calendar 2007
[796] Busy day in Melksham
[790] Shadow Transport Minister to visit Melksham
[715] First way to get rid of customers
[606] Train service from December
[538] A company we can work with
[486] Rail services under threat - Swindon, Melksham ... and Newquay and Bicester too
[413] Save the train
[187] a popular bus number
[154] Railway train service, Melksham station
[40] Take the train to training
(article) It's easy to get to Melksham, and there's things to do!

Subject G102 - Things to do in Melksham
[2656] Melksham Carnival
[2175] Melksham in pictures
[2141] Town Crier competiton
[1928] Melksham Oak Secondary School, Melksham, Wiltshire
[1894] Shopping in Melksham
[1452] Santa on the train to Melksham
[1330] While waiting for Melksham Post Office
[989] Melksham Quiz
[977] Melksham and Norwich
[957] Improving the historic town of Melksham
[951] What happened at Geekmas
[929] Presenting Melksham - for a weekend away in Wiltshire
[829] Where to go within 30 minutes of Melksham
[670] Architectural Heritage - Devizes
[524] Santa comes to Melksham
[500] Bowerhill, Melksham, 2006 Calendar
[488] Looking for railway groups and users - Swindon, Salisbury, Southampton
[354] Ballooning from Bath
[344] Walk in Bath
[342] The evening after the course
[329] the Stately Homes of England
[325] Gone Racing - Larkhill, Wiltshire
[312] Maud Heath
[305] Within about an hour
[298] Sharing pictures of Wiltshire
[266] A beautiful place to live and learn
[51] Gym and swimming - Melksham Blue Pool
[5] Driving in the UK for new arrivals from the USA

Subject G103 - Where to stay in Melksham
[2581] Snow scenes - and how snow effected our business
[1929] 2009 - Hotel, Meeting, Training Course prices
[1436] A little touring help during a business trip to England
[933] Course Joining package - updated
[902] Brand new hotel and training centre, Melksham
[667] Well House Manor goes ahead
[571] Well House Manor
[555] Hotel novelties
[550] 2006 - Making business a pleasure
[512] Exciting futures - the Well House Manor project
[475] Where to stay in and near Melksham
[319] Accommodation and landing pages
(article) Good places to stay in Melksham

Subject G104 - Where to eat in Melksham
[2597] Does my course include breakfast, lunch, dinner and a hotel room?
[1447] Refa Tandoori Indian Restaurant, Melksham
[1329] Subway Restaurant in Melksham, Wiltshire
[529] Halal in Melksham
[525] Vision AND venture
[176] Extra chips
[47] Effective fundraising

Subject G200 - Course and Company information
[2661] Current Public Courses
[2659] New numbers, as 01225 707126 and 01225 709638 are being retired
[2637] Courses - Melksham and elsewhere - until the end of April
[2560] Training comparison to QA Training, Learning Tree, GB Direct.
[2558] Happy new decade - and course and hotel prices for 2010
[2505] I almost put the bins out this morning
[2400] Are you wanting to learn PHP?
[2354] Training, Open Source computer languages
[2350] Ten years in Melksham - looking forward to ten more.
[2341] Koulutus, Open Source tietokone kielillä
[2340] ldning, Open Source dator språk
[2339] Opplæring, Open Source datamaskinen språk
[2338] Uddannelse, Open Source computer sprog
[2337] Opleiding, Open Source computertalen
[2336] Formação, Open Source computador línguas
[2335] Ausbildung, die Open-Source-Sprachen
[2334] Formazione, Open Source computer lingue
[2333] Formación, de los lenguajes de código abierto
[2332] Formation, des langages Open Source
[2326] Learn a new programming language this summer.
[2278] First courses for 2010
[2227] Learning PHP, Ruby, Lua and Python - upcoming courses
[2222] A (biased?) comparison of PHP courses in the UK
[2118] Spring Sprung
[2041] httpd, Tomcat and PHP course enhancements
[1629] A short introduction to our courses
[1623] PHP Techniques - a workshop
[1577] Spring and early summer training courses
[1565] Languages compared - based on developer community size
[1492] Well House Consultants Training and Hotel - 2008 news
[1453] What makes our courses special?
[1384] An email update for past guests and delegates
[1317] 2008 course schedule - Perl, Python, PHP, Linux, Java Deployment, Ruby and more
[1102] A Reference
[1087] Telling a story in different ways
[1018] Open Source Courses and Business Hotel - products and prices for 2007
[564] Open Source training from Well House Consultants
[550] 2006 - Making business a pleasure
[549] 2005 - Come as a student, leave as a friend
[504] We are about Open Source programming courses in the UK
[419] Most popular courses
[277] Fire drill
[234] How to get the best from your supplier
[181] Maximum number of trainees on a course
[13] Mobile Office revamp
(article) Training - our guarantee and commitment
(article) For the newcomer to Well House Consultants

Subject G203 - Training course prices
[2560] Training comparison to QA Training, Learning Tree, GB Direct.
[2541] VAT Changes
[2311] Floor to ceiling
[2003] Discount Training Courses - PHP, Perl, Python
[1912] Book now for 2009
[1492] Well House Consultants Training and Hotel - 2008 news
[499] Good IT training cannot be cheap
[295] Pricing strategy - simple and fair
[163] Introduction fees, bonuses, commissions, kickbacks
[101] Good value, low cost, cheap.
(article) How come our list prices are lower?
(article) Price Comparison on our training courses
(article) Pay on the day - not months in advance!

Subject G204 - Equipment and facilities
[2370] C++, Python, and other training - do we use an IDE
[2222] A (biased?) comparison of PHP courses in the UK
[2032] Mobile Internet - an alternative to hotel WiFi
[1701] Training Course and Business Conference Technology
[1488] New trainee laptop fleet for our Open Source courses
[1364] Korn shell course - resources
[1363] One computer per delegate, or pair programming?
[1126] MacFormat - Me and My Mac
[1089] Playing old games
[460] New Network
[452] Is enough enough?
[450] Wheelchair access - can do!
[432] New print centre for our manuals

Subject G205 - Food and Drink.
[2591] Melksham Hotel, B and B or business accommodation?
[2590] A healthy, local breakfast in Melksham
[1904] Ruby, Perl, Linux, MySQL - some training notes
[1843] How many cups of coffee?
[1332] Melksham Hotel - Five Star Kitchen!
[456] Laying out a vegetarian lunch
[302] Dining full circle
[221] Lunchtime Drink
[211] Look after your staff and they'll look after you. AOL.
[207] Canteen Dragon
[184] MTBF of coffee machines
[36] Tesco at 5
(article) Solution Centre - all article listing
(article) Solution Centre - all article listing

Subject G206 - Our training centre
[2660] One number for Well House - 01225 708225
[2538] Open Source Training Centre and Courses for 2010
[2537] Faster network, but not faster browsing until ...
[2126] Weeding out old phone numbers
[1200] Training information - England, Scotland, Wales and Ireland
[640] Training Centre Pictures
[627] JIT or JAU
[448] Out of the norm.
[256] Spring is in the air
[53] Drive the drive
(article) Bottles from Melksham Spa
(article) Well House Consultants - Key Facts

Subject G207 - Staff
[2566] Excellent staff make for excellent hotel
[2164] Updating my public profile - Graham Ellis
[2050] Why the Pony Tail?
[2044] Please Trouble me
[2009] The Royal Mail Receipt
[1324] Well House Manor appoints a General Manager
[1141] A strong team broadens the professional coverage
[1083] Behind the scenes
[1065] Graham Ellis - an Introduction
[1002] Meet the neighbours
[972] Both one team and two
[895] Welcome, Martin
[862] 4 weeks to go
[578] Woman screaming at me
[393] Trainer answers phone
[371] The training team that's looking out for you
[185] Who am I
[168] Welcoming Leah Davies to our team
[88] Getting the right level of trainer
[41] A Thousand and four words
[10] What do you look for in your IT trainer?
(article) The Author of the Apache httpd and Tomcat Course

Subject G208 - Library
[924] The LAMP Cookbook - Linux, Apache, MySQL, PHP / Perl
[669] The best Open Source library in town
[167] Upgrade to the Library

Subject G209 - Keeping up to date
[2564] Microblogging services - Plurk, Twitter, Jaiku and more
[2352] Printed Directories - the start of the updating season
[2078] A lot has changed - but the memory lingers on
[2032] Mobile Internet - an alternative to hotel WiFi
[1488] New trainee laptop fleet for our Open Source courses
[396] The next technologies
[250] We dont stand still
[160] Review of the Autumn
[143] Network Camera
[86] Talk review - Idiomatic Perl, David Cross
[83] Geek Cruising
[82] Keeping up to date
(article) Portrait of the Author of PHP

Subject G210 - History
[225] 10 years and counting
[164] Well House Consultants - review of 2004
[38] An update for old friends
(article) Time Line - growth of our Open Source training
(article) Taxi from Melksham Station, Sir?

Subject G211 - The story of our Georgian HQ and Edwardian Hotel
[2565] Bright day, snowy day
[2548] Ten years ago, we moved to Melksham Spa
[2350] Ten years in Melksham - looking forward to ten more.
[2158] On the roof of a Melksham Spa House
[1443] Christmas is coming very early
[1126] MacFormat - Me and My Mac
[830] Butterflies in a Wiltshire garden
[811] Melksham in Bloom
[719] Gardens, Well House Consultants HQ
[174] Contrast - the storm and the calm.
[118] History around you
(article) Time Line - growth of our Open Source training
(article) Bottles from Melksham Spa
(article) Well House Consultants - Key Facts

Subject G300 - Public Courses
[2558] Happy new decade - and course and hotel prices for 2010
[2341] Koulutus, Open Source tietokone kielillä
[2340] ldning, Open Source dator språk
[2339] Opplæring, Open Source datamaskinen språk
[2338] Uddannelse, Open Source computer sprog
[2337] Opleiding, Open Source computertalen
[2336] Formação, Open Source computador línguas
[2335] Ausbildung, die Open-Source-Sprachen
[2334] Formazione, Open Source computer lingue
[2333] Formación, de los lenguajes de código abierto
[2332] Formation, des langages Open Source
[2048] Learning to program in PHP, Python, Java or Lua ...
[1968] Review of 2008
[1929] 2009 - Hotel, Meeting, Training Course prices
[1857] November and December Public Course Schedule
[1836] Next in the sequence - courses next year (2009)
[1751] Public Training Course Dates until July 2009
[1693] July to December 2008 - Open Source training schedule
[1615] PHP training courses every month
[1565] Languages compared - based on developer community size
[1420] The Learning Perl crew, October 2007
[1414] What we teach - expained for the non-technical
[1035] Longer hours and better value courses
[933] Course Joining package - updated
[845] Course scheduling and Geekmas - are they traditions yet?
[646] PHP - London course, Melksham Course, Evening course
[387] Training course plans for 2006
[181] Maximum number of trainees on a course
[172] Public courses in London
(article) Free software - the joy of Open Source

Subject G301 - Booking a Public Courses
[2352] Printed Directories - the start of the updating season
[2278] First courses for 2010
[1932] Training Passports - booking a training program
[1693] July to December 2008 - Open Source training schedule
[1634] Kiss and Book
[1555] Advanced Python, Perl, PHP and Tcl training courses / classes
[1193] Dangerous Dogs and Hotel Marketing
[664] Ruby course - oops - it's not happening
[487] On line course booking - credit card protection
(article) How come our list prices are lower?
(article) Pay on the day - not months in advance!

Subject G302 - Coming to a course.
[2286] New to programming? It is natural (but needless) for you to be nervous
[2249] Public Transport from London to Melksham, Wiltshire
[1996] Advise before my Apache / Tomcat course
[1792] All the pieces fall into place - hotel and courses
[952] Coming from London to Melksham by train for a course
[933] Course Joining package - updated
[898] Courses at Well House Manor
[695] In the hospitality business
[490] A new way to get lost
[464] Technical Loneliness
[306] Bristol Airport this morning, The Farm this evening.
[264] 100% Training
[2] Diary entry - 5th August 2004
(article) It's easy to get to Melksham, and there's things to do!

Subject G303 - During the course
[2560] Training comparison to QA Training, Learning Tree, GB Direct.
[2342] Training Classes in other tongues
[1816] Holt on holt
[1466] Effective Java training - the bootcamp approach
[1459] Interactive training, and advancing techniques further
[1420] The Learning Perl crew, October 2007
[1363] One computer per delegate, or pair programming?
[1245] Ensuring that our tutor answers YOUR questions
[1035] Longer hours and better value courses
[670] Architectural Heritage - Devizes
[640] Training Centre Pictures
[570] Features and Benefits
[455] A Stengthening day
[342] The evening after the course
[273] Course Picture
[56] Dress Code
(article) Moving up a class

Subject G304 - Getting home
[2366] At the end of the course
[2248] Getting home from Melksham
[1989] So sad to see you go

Subject G305 - Post Course support
[2102] What do people think of our Apache httpd / Tomcat course?
[1874] Is it worth it?
[1245] Ensuring that our tutor answers YOUR questions
[651] Please Register with Opentalk - but just once!
[609] Been on a course, but still not got it?
[569] Instructions for bright people
[516] Open source questions? Anyone can ask.
[509] Snippets from Geekmas
[389] Tough Love
[336] Targetted Advertising
[327] How far should our support go
[293] Course follow-ups
[248] Use me, but use me effectively
[244] Getting your examples, my examples and the data files after your course
[199] Post course support - part of the service
[136] Please tell us

Subject G310 - A better class of course
[2633] Why do I teach niche skills rather than mainstream?
[2187] Are we IITT (Institute of IT Training) members?
[2109] Why most training fails ...
[2084] Books and distance learning from Well House Consultants?
[2074] Weekday or Weekend PHP, Python and Perl classes?
[2049] Why Choose Well House Consultants for your course?
[2010] How long should a training module be?
[1933] Learning to Program in C
[1645] Seeing how others do it - PHP training
[1576] Making PHP and MySQL training relevant to the course delegates
[1488] New trainee laptop fleet for our Open Source courses
[1453] What makes our courses special?
[1035] Longer hours and better value courses
[726] In praise of training course delegates.
[646] PHP - London course, Melksham Course, Evening course
[579] Short Linux and Perl courses for small groups
[577] Learning to program in Perl or PHP
[559] ''I don't know'' is sometimes a good answer
[554] What backup is adequate?
[497] I have a river to cross
[394] A year on - should we offer certified PHP courses
[371] The training team that's looking out for you
[350] Want to be one better
[292] Elegant languages - Perl, PHP, Python
[230] Course sizes - beware of marketing statistics
[224] YOUR application and YOUR data
[219] Some unusual features
[215] Open Source becomes mainstream
[211] Look after your staff and they'll look after you. AOL.
(article) Moving up a class
(article) Why so many different courses?
(article) Training - our guarantee and commitment
(article) For the newcomer to Well House Consultants
(article) Creating Really Memorable Experiences

Subject G400 - Private course
[1968] Review of 2008
[1929] 2009 - Hotel, Meeting, Training Course prices
[1555] Advanced Python, Perl, PHP and Tcl training courses / classes
[1414] What we teach - expained for the non-technical
[1092] Tcl training - often for a larger group
[994] Training on Cascading Style Sheets
[387] Training course plans for 2006
[321] Sales - the alternative close
[181] Maximum number of trainees on a course

Subject G401 - On Site courses
[2311] Floor to ceiling
[2309] Lua training class in Spanish
[2041] httpd, Tomcat and PHP course enhancements
[1781] Reception
[1600] Cambidge - Tcl, Expect and Perl courses
[1465] Perl, PHP, Python, Tcl, Linux, MySQL, Ruby courses ...
[1027] Cue the music, I'm happy.
[439] You cant
[438] Fair system for travel and accommodation expenses
[382] Central London Courses - Perl, PHP, Python, Tcl, MySQL
[241] Dress for training
[213] Off to Munich
[191] Setting up a training room for a course
[139] Just provide a room and the students
(article) Onsite training - expenses
(article) On the Oban Road
(article) Pay on the day - not months in advance!

Subject G402 - Private courses at Melksham
[1989] So sad to see you go
[1900] Table Topics
[1081] Customer takes over class, and I am delighted
[933] Course Joining package - updated
[898] Courses at Well House Manor
[640] Training Centre Pictures

Subject G403 - On site - venues, UK and Ireland
[1599] Fresher tutor, better course
[1200] Training information - England, Scotland, Wales and Ireland
[910] Helping the miles pass
[710] Linux training Glasgow, Python programming course Dundee
[378] A word of admiration for the London cabbie
[120] Good early morning

Subject G404 - On site venues
[2309] Lua training class in Spanish
[741] Last week - picture of the Perl course
[727] A journey, an arrival, a people
[382] Central London Courses - Perl, PHP, Python, Tcl, MySQL
[196] An Open Source course on the Channel Islands
[107] Taking Equipment offshore to run a course

Subject G500 - Running a training company
[2144] Looking for a career change - Physician to Web Site Designer
[2084] Books and distance learning from Well House Consultants?
[2074] Weekday or Weekend PHP, Python and Perl classes?
[2049] Why Choose Well House Consultants for your course?
[2021] Short health and safety course
[2003] Discount Training Courses - PHP, Perl, Python
[1963] Best source to learn Java (or Perl or PHP or Python)
[1884] Recession? Depression?
[1433] Linux, PHP, Tcl, Ruby, C, C++ - last minute training course availability
[1393] First Alternative / what has happened there?
[1369] One business, four different angles!
[1040] What the customer is looking for - effective training
[978] Wellhouse Manor, Hotel, Melksham
[926] Training rooms to learn Open Source programming
[838] Talking about other training companies.
[813] Monday Morning at Well House Consultants Melksham
[652] Morning Post
[627] JIT or JAU
[545] Is training seasonal?
[470] I wanna be a Python trainer
[402] Netless
[385] Feast or famine
[251] WIBNIF
[171] Skills and techniques of being a successful trainer

Subject G501 - Customer Service
[2650] Getting a phone line changed ...
[2530] Taking a knock over Santa
[2258] Questions I have been asked on answering the phone
[2236] Alumni - revisiting and supporting the old University
[2124] Building down expectations
[2102] What do people think of our Apache httpd / Tomcat course?
[2049] Why Choose Well House Consultants for your course?
[2015] Service Excellence Awards
[1991] Rules for a King
[1985] Learning to program as a part of your job
[1835] 23:30 bookings and midnight checkins
[1637] Providing exceptional service - and carrying on doing so.
[1606] Sheep Shearers, Marathon Runners and Ocean Sailors
[1516] Pictures you can use - for free - from our library
[1446] An answer to a student asking 'Help'
[1434] Market survey - to learn, to prove a point, or to sell your product?
[1319] Customer feedback - lifeblood of a business
[1262] Keep in touch with PHP, Perl, Python and old friends too
[1046] Bounce, bounce, bounce
[1007] Friends and family
[966] CSL, KISS and RTFM
[961] Products that our customers want more of
[944] Just ******* Google it
[852] Eventful evening - a lesson in looking after contacts
[841] Forum help - a push in the right direction
[725] Better communication
[717] A customer service company
[650] A person of few words
[628] Active Learning
[621] And the staff put the icing on the cake
[609] Been on a course, but still not got it?
[569] Instructions for bright people
[566] May all your screw-ups be big ones
[552] Keeping Customers Informed
[482] Different ways of selling
[440] Upgrade!
[393] Trainer answers phone
[350] Want to be one better
[327] How far should our support go
[265] Business practise, 2005 style
[233] Giving customers best value
[195] Customer service - examples to warn us
[189] Tuesdays and Fridays
[150] Confession
[126] Feedback shows the tip of an iceberg
[91] On line every 24 hours
[72] On Customer Service

Subject G502 - Business Practice
[2598] An excuse for making a sales call
[2465] Melksham Town - asleep or awake?
[2331] Certification Revisted - Lua
[2283] Everyone is in the customer relations business
[2190] How you are (re)presented at an exhibition
[2187] Are we IITT (Institute of IT Training) members?
[2161] Get it right ... if it goes wrong, it takes so much effort to sort out!
[2126] Weeding out old phone numbers
[2122] Commission Creep
[2044] Please Trouble me
[1913] Alastair Darling helps make paperwork and confusion
[1855] Volunteer v Employee - a skewed balance? (FSB)
[1713] Ways to accept credit cards - or not!
[1626] Early May - a short chance to regroup and improve
[1485] Copyright and theft of images, bandwidth and members.
[1453] What makes our courses special?
[1394] Business to Business Networking - North and West Wilts / Melksham
[1373] New Month, New Quarter, New Laws
[1342] Google, wwmdirectory, Freshwater, ATP - new scam?
[1319] Customer feedback - lifeblood of a business
[1263] 0800 043 8225 - a new phone number for Well House
[1260] An inspirational business talk from one of our prospective MPs
[1243] Heavy duty hole punch
[1165] Extended Credit request - train in June and be paid in September
[1157] Speed Networking - a great evening and how we arranged it
[1133] B-2-B Networking, 20th April. Useful for YOUR business?
[1084] Writing terms and conditions for conferences and other events
[1057] Selling by phone and Skype - our policy
[906] A commitment we won't be making
[883] Age discrimination law
[869] UNABLE TO ATTEND
[849] Staff Meeting
[766] Discounts and approved supplier lists
[664] Ruby course - oops - it's not happening
[652] Morning Post
[626] Not just a pretty face to answer the phone.
[536] Cancellations and penalties
[491] Being atypical is typical
[487] On line course booking - credit card protection
[467] Tell them three times
[457] Do the work and take the risk - a PHP contract to avoid
[438] Fair system for travel and accommodation expenses
[399] simplicity hides real size
[321] Sales - the alternative close
[297] A reminder that the customer is King
[226] Growing our systems
[217] Use of time
[211] Look after your staff and they'll look after you. AOL.
[200] Tips for the top
[188] Pink elephant and appreciation
[180] Skunk works
[157] Automatic service upgrades
[137] Certification schemes
[129] Trawling our site to prevent student copying
[125] Staff theft
[121] Fair and Simple
[108] A typical morning
[95] Five red flags
[88] Getting the right level of trainer
[77] Telephone systems
[68] Get the strategy worked out and the tactics just fall into place.
[27] Sales technique
[15] 90 to 10 or 80 to 20 rule
(article) Free software - the joy of Open Source
(article) Phone and fax to 070059 numbers in the UK
(article) Creating Really Memorable Experiences

Subject G503 - Newsletter and publicity
[2564] Microblogging services - Plurk, Twitter, Jaiku and more
[2388] `Of Course` is back!
[2244] What should a web site cost you?
[2124] Building down expectations
[2051] A Presentation about our company - web and PHP
[1698] Dealing with The Press
[1673] Spam Filters ... are working!
[1494] A time to update pictures
[1284] An update on the West Wilts show ...
[1090] Too many instructions, too much detail
[1087] Telling a story in different ways
[1000] One Thousand Posts and still going strong
[904] Of course I'll tell you by email
[734] Keeping customers informed by email
[480] New look to website
[458] Final courses of '05 coming up ....
[336] Targetted Advertising
[281] What they are saying about our OF COURSE newsletter
[57] Posting 1000 letters!
[48] PHP - onwards and upwards

Subject G504 - Writing Notes
[2481] Sample code with errors in it on our web site
[2414] Hello World - a good traditional start to a Java course
[2192] Copy writing - allowing for the cut
[2010] How long should a training module be?
[1950] Copyright of Training Notes and Web Site
[982] Notes from the white board
[979] Empty seats, Nodding Donkeys and buses
[797] Writing up new C / C++ notes.
[407] Theft of training material
[398] Training course material - why we write our own
[394] A year on - should we offer certified PHP courses
[9] Study room - the Oxford train
[7] Writing on a Sunday
[4] Seeing the wood for the trees.
(article) The Author of the Apache httpd and Tomcat Course

Subject G600 - Well House Manor
[2565] Bright day, snowy day
[1706] The Story of Well House Manor
[1520] Terms and Conditions - Hotel, England - plain English
[1388] Well House Manor - a year on
[1332] Melksham Hotel - Five Star Kitchen!
[1211] A lot has happened in a year
[1072] Well House Manor in the Snow
[1059] Three sets of twins
[963] George Hotel and Well House Manor, Melksham
[933] Course Joining package - updated
[902] Brand new hotel and training centre, Melksham
[891] Well House Manor Hotel, Melksham, Wiltshire
[884] Drive time
[667] Well House Manor goes ahead
[643] If it's Sunday, it must be Bedwyn
[617] Easy, Free, Reliable internet access
[615] Looking for leading not bleeding edge
[598] Should we cruise around the world?
[594] Twice is a co-incidence and three times is a pattern
[582] DWIM and AWWO
[575] Eating for the single business traveller
[571] Well House Manor
[558] Converting between acres and hectares
[555] Hotel novelties
[550] 2006 - Making business a pleasure
[525] Vision AND venture

Subject G900 - Miscellany
[2258] Questions I have been asked on answering the phone
[2144] Looking for a career change - Physician to Web Site Designer
[2019] Baby Caleb and Fortune City in your web logs?
[1898] Every cloud has a silver lining
[1867] Domain Renewal Group
[1183] Improving searches - from OR to AND?
[1040] What the customer is looking for - effective training
[1024] Web site - a refresh to improve navigation
[636] What is your business latency and potential?
[397] Where now for dial-up providers?
[336] Targetted Advertising
[333] Do NOT follow links or read attachments in these emails
[201] 0870 telephone numbers
[170] MySQL, Java, PHP and Linux - new technical articles

Subject G901 - Talks and lectures
[1459] Interactive training, and advancing techniques further
[1422] Wiltshire - speaker / after dinner talker offer
[1419] National Speaker - now to get the talk ready
[1242] Speaking at St. Catherine's College, Oxford University
[1101] Mushroom Curry and Perl Courses
[924] The LAMP Cookbook - Linux, Apache, MySQL, PHP / Perl
[310] Just in time - the talk is writ
[247] Extreme training
[134] Geekmas - a brief review
[128] Technical Weekend / Geekmas
[99] Should we call it 'Geekmas'?
[62] Technical Open House
(article) Open Source - here to stay, or a flash in the pan?
(article) Web applications using LAMP technologies

Subject G902 - Web site techniques, utility and visibility
[2668] Is it worth it?
[2569] How to run a successful online poll / petition / survey / consultation
[2552] Web site traffic - real users, or just noise?
[2532] Analysing Google arrivals by country of origin
[2519] Status Page / breaks of service in early December
[2410] Removal of technical resources from this site
[2389] Writing with our customers words
[2341] Koulutus, Open Source tietokone kielillä
[2340] ldning, Open Source dator språk
[2340] ldning, Open Source dator språk
[2339] Opplæring, Open Source datamaskinen språk
[2338] Uddannelse, Open Source computer sprog
[2337] Opleiding, Open Source computertalen
[2336] Formação, Open Source computador línguas
[2335] Ausbildung, die Open-Source-Sprachen
[2334] Formazione, Open Source computer lingue
[2333] Formación, de los lenguajes de código abierto
[2332] Formation, des langages Open Source
[2225] How important is a front page ranking on a search engine?
[2065] Static mirroring through HTTrack, wget and others
[2056] Web Site Loading - experiences and some solutions shared
[1982] Cooking bodies and URLs
[1970] Plagarism - who is copying my pages?
[1961] Making our things easier to find
[1955] How to avoid duplicating web page maintainance
[1888] Find the link
[1856] A few of my favourite things
[1833] Web Bloopers - good form design - avoiding pitfalls
[1797] I have been working hard but I do not expect you noticed
[1793] Which country does a search engine think you are located in?
[1756] Ever had One of THOSE mornings?
[1747] Who is watching you?
[1711] Rapid growth leads to server move
[1653] How do Google Ads work?
[1634] Kiss and Book
[1630] To provide external links, or not?
[1610] PHP course dot co, dot uk
[1554] Online hotel reservations - Melksham, Wiltshire (near Bath)
[1541] Colour, Composition or Content
[1534] Where in the world / country is my visitor from?
[1513] Perl, PHP or Python? No - Perl AND PHP AND Python!
[1506] Ongoing Image Copyright Issues, PHP and MySQL solutions
[1505] Script to present commonly used images - PHP
[1494] A time to update pictures
[1437] Above the fold with First Great Western
[1297] Stuffing content into a web page - easy maintainance
[1237] What proportion of our web traffic is robots?
[1212] What brought YOU to our web site?
[1207] Simple but effective use of mod_rewrite (Apache httpd)
[1198] From Web to Web 2
[1186] Two new pages / sites
[1184] Finding resources - some pointers
[1177] Sorting out for a site map
[1104] Drawing dynamic graphs in PHP
[1055] Above the fold
[1029] Our search engine placement is dropping.
[1015] Search engine placement - long term strategy and success
[994] Training on Cascading Style Sheets
[976] Santa at the station
[916] Driving customers away
[893] Visibility
[800] Effective web campaign?
[767] Finding the language preference of a web site visitor
[757] Horse and Python training
[732] Where is a web site visitor browsing from
[718] Protecting images from theft
[681] Mirroring a dynamic site
[658] Keeping the visitors happy and browsing
[649] Denial of Service ''attack''
[533] Bigger Box Campaign
[528] Getting favicon to work - avoiding common pitfalls
[510] Dynamic Web presence - next generation web site
[492] New Navigation Aid - Launch of My Wellho
[414] Form Madness
[376] What brings people to my web site?
[369] CMS - the minefield of Choices
[348] Graveyard pages
[347] Frightening and from-friend viruses and spams
[322] More maps
[320] Ordnance Survey - using a 'Get a map'
[314] What language is this written in?
[311] Growth pains
[288] Colour blindness for web developers
[284] The Iconish language
[278] Cover all the options
[276] An apology to Mr Boneparte
[274] Our most popular resources
[268] Information request forms, cleaning up spam
[261] Putting a form online
[259] Responding to spam
[222] Who are all these visitors?
[202] Searching for numbers
[197] Allow for peak traffic on your web site
[182] Your personal Google ranking
[179] The hunt for unique words
[173] Data Mining
[165] Implementing an effective site search engine
[142] Colour for access
[117] A case of case
[109] URLs - a service and not a hurdle
[98] No more 'Error 404' pages. Something better.
[32] Web design platoon
[23] Skills and responsibilities
(article) Spotting and stopping denial of service attacks
(article) Suggesting alternative search terms to web site users
(article) Making all your .html files run a Perl script
(article) Error messages in PHP
(article) Keeping the PHP and the HTML apart

Subject G903 - Running and moderating forums
[2569] How to run a successful online poll / petition / survey / consultation
[2527] Flying tonight
[2526] A reluctance to move from old shoes to new
[2386] Computing under the influence of alcohol
[2254] Forum membership - a privilege not a right
[2177] Preventing forum spam - checks at sign up
[2162] Admins thoughts on banning a member from a forum
[2156] Stopping forum spam - control of the signup process
[2116] Why do we delay new forum members through authorisation?
[2103] Ask the Tutor - Open Source forum
[1972] Pettifog and forum boards away from public view
[1923] Making it all worthwhile
[1759] While the world sleeps ...
[1678] Software - changes and delays. But courses must run on time!
[1595] First Great Western Weekend
[1578] Please don't shout at me!
[1569] I dont care - goodbye
[1563] Guidlines for posting on a forum
[1539] A forum is not always the best vehicle
[1532] Comment spam blocked. Please comment via Forums
[1523] Ive just received an email from myself. Should I be worried?
[1485] Copyright and theft of images, bandwidth and members.
[1472] The Horse goes on and on
[1362] No Thank You
[1190] Save the Forum - A regular clean sweep
[1088] Why use BBC code not HTML?
[948] Running an on line campaign
[923] Why shouldn't I spam?
[919] Freedom for X is denial of privacy for Y
[841] Forum help - a push in the right direction
[828] Freedom of speech and freedom to post
[806] Check your user is human. Have him retype a word in a graphic
[651] Please Register with Opentalk - but just once!
[516] Open source questions? Anyone can ask.
[424] How not to run a forum
[248] Use me, but use me effectively
[231] Feedback as lifeblood
[204] The confidence to allow public comments
[130] Spelling and grammar
[115] Expiration dates or times on web pages
[29] Silence is Golden
[22] Falling out over the silliest things
(article) Moderating a forum

Subject G904 - Mac and OS X
[2267] winmail.dat enclosure ... reading on an Apple
[1491] Apple Mac Operating System OS X - code names and version numbers
(article) Running open source on Mac OSX

Subject G905 - Blogging and Blog Administration
[2564] Microblogging services - Plurk, Twitter, Jaiku and more
[2517] Blogging accuracy - open invitation for any corrections
[2449] Four aspects - Chamber, Transport, Courses and Hotel
[2192] Copy writing - allowing for the cut
[2000] 2000th article - Remember the background and basics
[1978] From spam to mod_alias - finding resources
[1203] A Fresh horse
[1077] In answer to 'am I glad I started a blog' ...
[1000] One Thousand Posts and still going strong
[876] Making pages clearer - easy Disability Discrimination Act Compliance
[671] Both ends of the animal
[508] Comment, please!
[425] Caching an XML feed
[410] Reading a news or blog feed (RSS) in your PHP page
[405] Horse's Mouth is a year old
[390] Moderating wiki, blog, and forum contributions
[359] Chicken soup without the religion
[245] I'm not blogging it
[231] Feedback as lifeblood
[204] The confidence to allow public comments
[185] Who am I
[177] Blogs come of age
[145] a comment on comments
[141] Too technical?
[18] Wanted - more hours in the day
[6] Blog v Forum
[1] First Jottings

Subject G906 - Programming Standards
[2364] Getting it right from the start - new programmers
[2363] Alpaca Case or Camel Case
[2322] Looking for a practical standards course
[1852] Perl and Blackberries
[1679] PHP - Sanitised application principles for security and useability
[1596] Selling curry to the chinese takeaway
[945] Code quality counts
[356] Sudoku helper or sudoku cheat
[343] Should I use structured or object oriented?
[272] More to programming than just programming
[148] Programming in isolation
{fur1.py} Read, calculate, report
{fur4.py} Comments

Subject G907 - Recruitment and Career Development
[2294] Can you learn to program in 4 days?
[2255] Past PHP delegates / others - coding help needed for next 3 months
[2109] Why most training fails ...
[1967] LinkedIn - Thrice Asked, and joined.
[1963] Best source to learn Java (or Perl or PHP or Python)
[849] Staff Meeting
[759] Watch your Google profile
[751] Want to be a technical trainer in the UK?
[729] Career development advice
[722] I'm answering a job applicant
[587] Job vacancy - double agent wanted
[585] Looking for Python staff
[503] 10 years C# knowledge please
[408] Can an older person learn a programming language
[389] Tough Love
[285] What career opportunities for web designers
[253] Finding the right holes
[198] A new skill may not be quick and easy
[116] The next generation of programmer
(article) Creating Really Memorable Experiences

Subject G908 - Language Comparisons
[1990] Speaking all the languages
[1717] Q - Should I use Perl or Python?
[1582] Ruby, C, Java and more - getting out of loops
[209] FAQ - Perl or PHP
(article) errors v exceptions

Subject G909 - Spam, Spamming and Spammers
[2398] Websitemediasolution and a goldfish called Carl Johnson
[2276] Who is Marc Schneider of Multilingual Search Engine Optimization Inc
[2179] Offers that I can refuse
[2177] Preventing forum spam - checks at sign up
[2019] Baby Caleb and Fortune City in your web logs?
[1978] From spam to mod_alias - finding resources
[1817] Marc Schneider is still having email trouble
[1763] Co-operating to save, yet we dont
[1532] Comment spam blocked. Please comment via Forums
[1523] Ive just received an email from myself. Should I be worried?
[1115] Unexpected visitors to our site
[1037] Impact Engineering and Backscatter
[872] Email metrics
[495] More spam - a success story
[417] Telephone Preference Service - we're registered
[347] Frightening and from-friend viruses and spams
[338] OO techniques are hard to teach
[276] An apology to Mr Boneparte
[268] Information request forms, cleaning up spam
[259] Responding to spam

Subject G910 - Scams
[2524] An update on legal changes from the FSB?
[2403] Hotel Booking Scam / Cost of calls to 070 numbers
[2373] Translation from Ghanaian to English
[1795] What have iTime, honeytrapagency and domain listing center got in common?
[1772] Ken Palm, iTime, and Domain Name Tasting
[1680] Astroturfing - the online definition
[1342] Google, wwmdirectory, Freshwater, ATP - new scam?
[1313] Tratum Technologies
[860] Warning - false emails, said to be from Paypal
[347] Frightening and from-friend viruses and spams
[178] Calling a spade a spade
[78] Domain Registry of America
(article) Identity theft - Phishing for your details

Subject G911 - Search Engine Optimisation
[2562] Tuning the web site for sailing on through this year
[2552] Web site traffic - real users, or just noise?
[2428] Diluting History
[2330] Update - Automatic feeds to Twitter
[2324] What search terms FAIL to bring visitors to our site, when they should?
[2137] Reaching the right people with your web site
[2107] How to tweet automatically from a blog
[2106] Learning to Twitter / what is Twitter?
[2065] Static mirroring through HTTrack, wget and others
[2045] Does robots.txt actually work?
[2019] Baby Caleb and Fortune City in your web logs?
[2000] 2000th article - Remember the background and basics
[1984] Site24x7 prowls uninvited
[1982] Cooking bodies and URLs
[1971] Telling Google which country your business trades in
[1969] Search Engines. Getting the right pages seen.
[1793] Which country does a search engine think you are located in?
[1344] Catching up on indexing our resources
[1029] Our search engine placement is dropping.
[1015] Search engine placement - long term strategy and success
[427] The Melksham train - a button is pushed
[165] Implementing an effective site search engine

Subject G912 - Photography for the Web
[2592] Re-using our pictures
[2252] Leaping dog, Leaping horse, copyright of old masters
[2224] Trowbridge - a missed opportunity? Melksham - into the breach?
[1895] Comparison - with and without flash
[1732] Old pictures and comparisons
[1568] What colour is the season?
[1506] Ongoing Image Copyright Issues, PHP and MySQL solutions
[1396] Using PHP to upload images / Store on MySQL database - security questions
[1194] Drawing hands on a clock face - PHP
[1188] What shape is your shake?
[1185] Themes for the web site
[1114] PHP Image upload script
[1087] Telling a story in different ways
[937] Display an image from a MySQL database in a web page via PHP
[819] My projector has a photo-id
[665] PHP Image viewing application
[563] Merging pictures using PHP and GD
[553] Keep that image small
[546] The relevance of the hairy woodpecker
[194] Published Photographer
[97] What makes a professional photographer?

Subject G913 - Hardware and Devices
[2667] Web page to telephone calls / links using an iPhone
[2188] Camera to record where a picture was taken
[2055] Effect on server when memory runs out and swapping starts
[2033] Huawei D100 Wireless Router - Mobile Internet
[1993] Load Balancing - Hardware or Software?
[1827] What a shock
[1281] Latercomer to the technology
[630] Hostnames spring forward

Subject G914 - Other Software
[2600] Go Programming Language and Courses?
[2470] Windows 7 and Open Source Programming
[2191] RT @brento - a valuable source for the twitter newbie
[2106] Learning to Twitter / what is Twitter?
[75] It's just not cricket

Subject G996 - Newsletter Scripts
[2539] Changing Images
[2433] Controlling, supressing, enabling PHP error messages
[2360] Error Handling in Lua with assert and pcall
[2259] Grouping rows for a summary report - MySQL and PHP
[2145] Using the internet to remotely check for power failure at home (PHP)
[2046] Finding variations on a surname
[1954] mod_rewrite for newcomers
[1813] Ajax - going Asyncronous and what it means
[1743] First class functions in Lua lead to powerful OO facilities
[1665] Factory method example - Perl
[1601] Replacing the last comma with an and
[1505] Script to present commonly used images - PHP
[1487] Efficient PHP applications - framework and example
[1387] Error logging to file not browser in PHP
[1321] Resetting session based tests in PHP
[1217] What are factory and singleton classes?
[1123] mysqldump and mysqlrestore
[1066] Final, Finally and Finalize - three special words in Java
[1001] .pdf files - upload via PHP, store in MySQL, retrieve

Subject G997 - Newsletter Lead Articles
[2538] Open Source Training Centre and Courses for 2010
[2425] Weekend and Christmas Promotion - Well House Manor Hotel, Melksham
[2370] C++, Python, and other training - do we use an IDE
[2253] Walks in and around Melksham, Wiltshire
[2119] Make your business a DESTINATION business
[2052] How was my web site compromised?
[1912] Book now for 2009
[1819] Calling base class constructors
[1754] Upgrade from PHP 4 to PHP 5 - the TRY issue
[1663] Python in an afternoon - a lecture for experienced programmers
[1600] Cambidge - Tcl, Expect and Perl courses
[1545] Letting new visitors know we provide training courses
[1488] New trainee laptop fleet for our Open Source courses
[1386] New software product for warmblooded programmers
[1318] Well House Manor - feature comparison against the old place!
[1224] Object Relation Mapping (ORM)
[1136] Buffering output - why it is done and issues raised in Tcl, Perl, Python and PHP
[1065] Graham Ellis - an Introduction
[1000] One Thousand Posts and still going strong

Subject G998 - Newsletter Highlighted Box
[2520] Global and Enable - two misused words!
[2400] Are you wanting to learn PHP?
[2385] Reading all our recent news from a single source
[2222] A (biased?) comparison of PHP courses in the UK
[2125] We have lost a regular business guest
[2050] Why the Pony Tail?
[1967] LinkedIn - Thrice Asked, and joined.
[1843] How many cups of coffee?
[1751] Public Training Course Dates until July 2009
[1629] A short introduction to our courses
[1621] Linux and Java Course in London
[1521] Evening drive across the roof of Wiltshire
[1475] Tcl/Tk - updating your display while tasks are running
[1375] Python v Ruby
[1307] Troy, up state New York
[1237] What proportion of our web traffic is robots?
[1132] Well House Manor, Melksham, Art Gallery
[1068] ls -l report, Linux / Unix - types and permssions
[1011] Well House Manor and Beechfield House, Hotels, Melksham

Subject G999 - Keynote
[2537] Faster network, but not faster browsing until ...
[2483] Clustering on Tomcat
[2384] Looking ahead to the Autumn season of training and accommodation
[2326] Learn a new programming language this summer.
[2228] Where do I start when writing a program?
[2216] Past Delegate Offer - Summer Holiday / Weekend Break
[2144] Looking for a career change - Physician to Web Site Designer
[1975] Well House Manor Hotel - on plan for 2009 business guests
[1955] How to avoid duplicating web page maintainance
[1929] 2009 - Hotel, Meeting, Training Course prices
[1859] Wiltshire at dawn - the tourist trail
[1857] November and December Public Course Schedule
[1773] The Longest Possible Day
[1748] Hotel room prices - Melksham, Wiltshire
[1676] A warm welcome for visitors from the USA
[1615] PHP training courses every month
[1555] Advanced Python, Perl, PHP and Tcl training courses / classes
[1492] Well House Consultants Training and Hotel - 2008 news
[1481] The Christmas Letter
[1414] What we teach - expained for the non-technical
[1319] Customer feedback - lifeblood of a business
[1317] 2008 course schedule - Perl, Python, PHP, Linux, Java Deployment, Ruby and more
[1245] Ensuring that our tutor answers YOUR questions
[1161] A contrast in room rates and facilities
[1079] Wilts and Berks - two conference / training rooms in Melksham
[929] Presenting Melksham - for a weekend away in Wiltshire
[898] Courses at Well House Manor
[890] Open
[845] Course scheduling and Geekmas - are they traditions yet?
[774] Bed and Breakfast, or Hotel?
[695] In the hospitality business
[626] Not just a pretty face to answer the phone.
[549] 2005 - Come as a student, leave as a friend
[464] Technical Loneliness
[452] Is enough enough?
[428] Swindon - Chippenham - Melksham - Trowbridge - Westbury train service
[419] Most popular courses
[360] Spring turns to Summer
[295] Pricing strategy - simple and fair
[225] 10 years and counting
[164] Well House Consultants - review of 2004

top - top of pagenew - new articles not yet categorised
A - Linux, Apache httpd and Tomcat C - C and C++ programming 
G - General Training Topics H - PHP programming and techniques 
J - Java programmming including Web M - Well House Manor; hotel and events 
P - Perl programming and use Q - General programming subjects 
R - Ruby programming and use S - Databases / the MySQL database 
T - Tcl, Tcl/Tk, wish and Expect U - Lua programming and use 
W - Web site programming / techniques Y - Python programming and use 
Z - Miscellany end - end of page

H: PHP programming and techniques

Overview H050 - PHP - General
[2663] Improve your PHP on a weekend away
[2589] Your PHP code does not work? Here is where to start looking.
[2559] Moving the product forward - ours, and MySQL, Perl, PHP and Python too
[2504] Learning to program in ...
[2430] Not just a PHP program - a good web application
[2400] Are you wanting to learn PHP?
[2227] Learning PHP, Ruby, Lua and Python - upcoming courses
[2222] A (biased?) comparison of PHP courses in the UK
[2097] PHP Course - for hobby / club / charity users.
[1722] PHP examples - source code and try it out too
[235] Preparation for a day's work
[116] The next generation of programmer
(article) What is PHP?
{fourth.php} Straightforward form and simple validation
{p_fifth.php} One page application - design and human interface MATTERS

Module H101 - Introduction to PHP
[2097] PHP Course - for hobby / club / charity users.
[1958] PHP - Parse error: syntax error, unexpected $end ...
[1753] Perl v PHP, choosing the right language
[1717] Q - Should I use Perl or Python?
[1198] From Web to Web 2
[1050] The HTML++ Metalanguage
[949] Sludge off the mountain, and Python and PHP
[924] The LAMP Cookbook - Linux, Apache, MySQL, PHP / Perl
[917] Syntax checking in PHP
[846] Is Perl being replaced by PHP and Python?
[795] Remember a site's non-technical issues too
[789] Hot answers in PHP
[712] Why reinvent the wheel
[691] Testing you Perl / PHP / MySQL / Tcl knowledge
[646] PHP - London course, Melksham Course, Evening course
[629] Choosing the right language
[624] It's REALLY easy to add a little PHP
[577] Learning to program in Perl or PHP
[433] FTP - how to make the right transfers
[382] Central London Courses - Perl, PHP, Python, Tcl, MySQL
[380] Bridging to the customer requirement
[341] Happy Birthday, PHP
[317] Programming languages - a comparison
[135] Too many Perls
[132] Portrait of the author
[124] PHP v Java
[93] Case Sensitive?
[55] Evening classes to learn PHP
[48] PHP - onwards and upwards
(article) Portrait of the Author of PHP
(article) What is PHP?
{abc.php} Some easy things to do with PHP
{t2.php} cost comparison script
{t3.php} Totalling script - daily, weekly, monthly, annual amounts

Module H102 - A First PHP Web Page
[2432] Using print_r in PHP to explore mysql database requests
[1448] Question on division (Java) - Also Perl, PHP, Python ...
[624] It's REALLY easy to add a little PHP
{a1.html} Date stamping a page automatically (for copyright and audit)
{greeting.php4} HTML page with embedded PHP
{g2.php4} Multiple statements and functions calls
{g3.php3} Multiple print statements, showing case insignificance of functions

Module H103 - Variables, Operators and Expressions
[2215] If nothing, make it nothing.
[748] Getting rid of variables after you have finished with them
[483] Double Dollars in PHP
{master.php4} PHP page that calls in an include file ?>
{k2.php4} A calculation with variables
{k1.php4} A calculation in PHP
{result} Master and Header code merged
{k3.php4} Getting a variable from a form - OLD style
{header.txt} File to be included in master example ?>
{k4.php} Example of comment types
{simsan.php} Simple sanitisation and sticky field example
{k3a.php4} Getting a form variable - new and more secure style

Module H104 - Control Statements
[2304] Extracting real data from an exported file in PHP or Perl
[1825] Question Mark - Colon operator (Perl and PHP)
[1696] Saying NOT in Perl, PHP, Python, Lua ...
[1477] Decisions - small ones, or big ones?
[1220] for loop - how it works (Perl, PHP, Java, C, etc)
[1199] Testing for one of a list of values.
[1191] Smart English Output - via PHP and Perl ? : operator
[962] Breaking a loop - Ruby and other languages
[863] Double and Triple equals operator in PHP
[657] The ternary operator in Python
[421] Don't repeat code - use loops or functions
[406] Assignment, equality and identity in PHP
[353] Wimbledon Neck
[340] Code and code maintainance efficiency
{tt2.php} for loop
{condits.php} example simple if statements
{ttab.php} Temperature table - a while loop
{houred.php} different image to reflect time of day
{ifvswit.php} if v switch / first "step through" application
{units.php} Conversion of units of area
{macorder.php} 2 page simple ordering system
{coin.php} switch, case, default and break
{tt3.php} lazy operators, increments, +=, ? : and endfor
{if2.php} if, block, else and elseif

Module H105 - Functions
[2682] Adding extensions to PHP Open Source applications - callbacks
[2630] Static variables and ampersands in PHP
[2488] A variable number of arguments in a PHP function
[1784] Global - Tcl, PHP, Python
[1380] Static variables in PHP
[1357] Clean my plate, but keep my wine bottle. (PHP; Static)
[1267] is there a lookup function in php?
[1202] Returning multiple values from a function (Perl, PHP, Python)
[1163] A better alternative to cutting and pasting code
[1021] PHP - static declaration
[936] Global, Superglobal, Session variables - scope and persistance in PHP
[866] A lazy programmer is a good programmer
[775] Do not duplicate your code
[421] Don't repeat code - use loops or functions
[409] Functions and commands with dangerous names
[340] Code and code maintainance efficiency
[339] Passing information into and out of PHP functions
[308] Call by name v call by value
[223] There is a function in PHP to do that
[96] Variable Scope
{funsan.php} Simple sanitisation and sticky field example using functions
{callback} Calling a list of functions named in an array
{dressing.inc} example of "call by name" and defaulting parameters
{near.php} Ordnance Survey and Map reference point calculations
{hotdiary.php} PHP Diary generator
{stademo.php} use of a static variable in PHP
{funky.php} Defining and calling a function
{funk3.php} Loading functions from an include file
{dropahead.php} Selection from the week ahead
{funk2.php} Example with local, global and static variables

Module H106 - Arrays
[2274] PHP preg functions - examples and comparision
[2215] If nothing, make it nothing.
[1614] When an array is not an array
[1451] More PHP sample and demonstration programs
[1199] Testing for one of a list of values.
[1116] PHP adding arrays / summing arrays
[832] Displaying data at 5 items per line on a web page
[773] Breaking bread
[603] PHP - setting sort order with an associative array
[409] Functions and commands with dangerous names
{a3.php4} Array_walk example. Also the difference between null and empty
{simgrep.php} read a file into an array and display selected items
{rubys.php} read a file into an array and display selected items
{skills.php} A Small search tool
{5pl.php} Display a list in columns
{arrx.php} Ways of passing through an array
{a2.php4} Array - dealing with missing elements and finding keys
{pflog.php} Most viewed pictures (Mk 1)
{arrarr.php} Summing arrays in PHP
{nbm.html} Speed networking - seating matrix generator
{a1.php4} Setting up an array, looking at individual elements
{ts.php} Lengthen or shorten an array
{fullmenu.php} Ordering system from menu file
{menu.txt} Menu for fullmenu.php example
{pflog2.php} Where are scripts loaded from (2)
{nb.html} Speed networking - generate a page for an attendee

Module H107 - String Handling in PHP
[2629] Curly braces within double quoted strings in PHP
[2238] Handling nasty characters - Perl, PHP, Python, Tcl, Lua
[2165] Making Regular Expressions easy to read and maintain
[2046] Finding variations on a surname
[1799] Regular Expressions in PHP
[1613] Regular expression for 6 digits OR 25 digits
[1603] Do not SHOUT and do not whisper
[1533] Short and sweet and sticky - PHP form input
[1372] A taster PHP expression ...
[1336] Ignore case in Regular Expression
[1195] Regular Express Primer
[1058] PHP Regular expression to extrtact link and text
[1008] Date conversion - PHP
[728] Looking ahead and behind in a Regular Expression
[716] Evaluating arithmetic expressions in configuration files
[642] How similar are two words
[608] Don't expose your regular expressions
[589] Robust PHP user inputs
[574] PHP - dividing a string up into pieces
[560] The fencepost problem
[558] Converting between acres and hectares
[493] Running a Perl script within a PHP page
[463] Splitting the difference
[422] PHP Magic Quotes
[337] the array returned by preg_match_all
[54] PHP and natural sorting
[31] Here documents
(article) An overview of PHP String functions
(article) Analysing incoming data lines
(article) Nasty Characters in Web Applications
(article) Pattern Matching - a primer on regular Expressions
(article) Web Page and HTML Spell Checker
{mystdinc.inc} Include file for sticky fields demo
{echovalley.php} How to put in blocks of HTML
{stdist.php} Search - do two words look or sound the same?
{s3.php4} String cleansing with functions such as strspn
{pmoffs.php} Capturing regular expression offsets
{regex.php4} Regular expression - validating an email address
{secdo.php4} Convert seconds to minutes and seconds
{spell.php} Spell Checker
{sprint.php4} Formatting with sprintf
{strp.php} Curly braces in double quoted strings
{bustimes.php} Using PHP to format data (timetable in this example)
{stickform.php} Stick Fields and Input Validation
{s2.php4} Character string as an array
{toke.php4} String tokenising - strtok, implode, explode
{clformat.php} Formatting data [file] for quick web display
{extrawords} Extra words for spell checker
{sfex.php} Demo of sticky fields and security
{s1.php4} Single and double quoted strings
{shunt.php} Evaluting BODMAS expression using MySQL cell tables
{code} Reaping from an HTML page with regular expressions
{myform.php} Robust, sticky form demo with field validation

Module H108 - Objects in PHP
[2680] Static class members in PHP - a documented example
[2641] Object Oriented Programming in PHP
[2632] Shipping a test harness with your class in PHP
[2435] Serialization - storing and reloading objects
[2434] Abstract classes, Interfaces, PHP and Java
[2380] Object Oriented programming - a practical design example
[2172] PHP4 v PHP5 - Object Model Difference
[2171] Cleaning up redundant objects
[2169] When should I use OO techniques?
[2160] PHP - getclass v instanceof
[1925] Introduction to Object Oriented Programming
[1820] Sorting objects in PHP
[1819] Calling base class constructors
[1682] Accounts in PHP - an OO demo
[1535] OO PHP demonstration - comparing objects and more
[1217] What are factory and singleton classes?
[1153] Object Oriented Model - a summary of changes from PHP4 to PHP5
[1027] Cue the music, I'm happy.
[836] Build on what you already have with OO
[720] Planning a hotel refurb - an example of a Gant chart in PHP
[656] Think about your design even if you don't use full UML
[485] North, Norther and Northest - PHP 5 Objects
[421] Don't repeat code - use loops or functions
[343] Should I use structured or object oriented?
[205] PHP5 lets you say no
[124] PHP v Java
[67] Object Oriented Programming in PHP
{valentines.php} Inheritance, Overloading, Polymorphism in PHP objects
{equtest.php4} Explicits PHP4 - objects, foreach, array_push ....
{elligant.php} Gant chart in PHP
{staffsys.inc} Staff system - a derived class
{pdemo.php} PHP application using places.inc - create array of place objects from file
{animal2.php} Abstract class, extended to a subclass, instantised via the subclass
{pets.php} Test page for the dog.inc class
{equtest.php} PHP example - objects, foreach, array_push ....
{allone.php} Complete OO example
{systems.php4} Objects and inheritance - main worked example program
{cwa.inc} cwa class
{ob1.php} OO PHP demo - inhertitance, statics, test harness, etc
{bewarethedog.php} Object copying - beware - differs in PHP4 and PHP5
{pps} Data for Gant Chart Demo
{staticmember.php} Static class members - set up and use
{dogdisc.php} Serialization of an object for save and restore
{dogs.inc} Simple class in PHP
{animal3.php} Abstract class and interface example
{ns.php} Namespaces in PHP5 - a short syntax demo
{demo.php} PHP Version tester
{studentsys.inc} Student system - a derived class
{systems.php} Objects and inheritance - main worked example program
{ob2.php} Loading in a class from another file and using it
{accos.php} Complete example with polymorphism and inheritance
{hound.inc} Simple class in PHP
{places.inc} A PHP abstract class (places) with postcode, county and other subclasses
{systems.txt} Data file for systems example
{cwuseanimal.php} Test program for cwa class
{kennel.php} Application to use class hound
{compo.php} Complete inheritance and object method demonstration
{third.php} Command line PHP classes - inheritance, overloading, polymorphism, comparator
{animal1.php} An Abstract class - cannot construct directly
{dog.inc} Simple class in PHP
{serversys.inc} Server system - a derived class
{equip.inc} equip.inc - define pieces of equipment (base class)

Module H109 - Input / Output
[1780] Server overloading - turns out to be feof in PHP
[1442] Reading a file multiple times - file pointers
[1113] File and URL reading in PHP
[1096] Sample script - FTP to get a file from within PHP
[1094] PHP fread - truncated data
[997] Most recent file in a directory - PHP
[709] Handling huge data files in PHP
[653] Easy feed!
[616] printf - a flawed but useful function
[114] Relative or absolute milkman
{grabtitle.php4} Grab the title of a web page (local or remote)
{cloak.php} Cloaking a web site in a PHP wrapper
{spammiest.php} The 20 spammiest emails in our filter records are ...
{seedoku.php4} highlighting a source file
{top_pdf.php} Showing top 10 downloads from our site
{webhelpers.inc} Web Helpers for quote demo
{secdo.php4} Convert seconds to minutes and seconds
{recent.php} Link to the recently updated file in a directory
{buslogic.inc} Business logic for quote demo
{exchange.html} Exchange rate convertor
{fread2.php4} File system and status reports and directory listings
{quote.php} Quote demo - top level code
{saver.php4} Write to file - simple diary page
{fr2.php} Pulldown menu of files, then search for regex
{eurorates.php} Read currency exchanges rates
{savepeople.php4} Using PHP to download a data file
{radio.php4} look up current radio program in a text file
{quote.htp} HTML template for quote demo -->
{fread1.php4} Read all lines from a data file, report matches
{mail_analysis.php4} Read and analyse spam report file
{xmasq.php} Christmas Quiz in PHP
{mcq.txt} data for Christmas Quiz

Module H110 - HTML Web Page Data Handling
[2135] What features does this visitors browser support? (PHP)
[2107] How to tweet automatically from a blog
[2046] Finding variations on a surname
[2025] Injection Attack if register_globals in on - PHP
[1831] Text formating for HTML, with PHP
[1169] Emailing as HTML (Web Page) - PHP example
[1136] Buffering output - why it is done and issues raised in Tcl, Perl, Python and PHP
[1053] Sorting people by name in PHP
[1001] .pdf files - upload via PHP, store in MySQL, retrieve
[896] PHP - good coding practise and sticky radio buttons
[789] Hot answers in PHP
[589] Robust PHP user inputs
[50] Current cost in your local currency
(article) Example - PHP form, Image upload. Store in MySQL database. Retrieve.
{veryniceform.php4} Form completion with sticky fields and generalised code
{one_pizza.php} Validating a Pizza order in one page.
{pdfup.php} form to upload a .pdf to a PHP script
{melksham.php} Images at random - pictures of Melksham
{mcheck.php} generate and select from radio boxes
{agnew.php} How to do it - sending header first
{alang.php} What langauge does the visitor prefer?
{pdfstore.php} store a .pdf that's uploaded into a MySQL database
{feedlet.php} Bare Bones demo of password protection
{agone.php} How NOT to do it - sending header too late
{veryniceform.php} Form completion with sticky fields and generalised code
{sticker.php} Sticky form demo ...
{myenv.php4} The PHP environment - use of variables available to you
{getpost.php} Using a PHP script to POST to another server
{selfinfo.php4} Information available from PHP
{pdfget.php} download a .pdf file from a MySQL database
{apull.php} Selection of database records via a pulldown menu
{urlex.html} Does a URL exist?

Module H112 - Further Web Page and Network Handling
[2679] How to build a test harness into your PHP
[2632] Shipping a test harness with your class in PHP
[1549] http, https and ajp - comparison and choice
[1518] Downloading data for use in Excel (from PHP / MySQL)
[1515] Keeping staff up to date on hotel room status
[1505] Script to present commonly used images - PHP
[1496] PHP / Web 2 logging
[1495] Single login and single threaded models - Java and PHP
[1485] Copyright and theft of images, bandwidth and members.
[1379] Simple page password protection - PHP
[1355] .php or .html extension? Morally Static Pages
[1210] PHP header() function - uses and new restrictions
[1187] Updating a page strictly every minute (PHP, Perl)
[1183] Improving searches - from OR to AND?
[1114] PHP Image upload script
[1009] Passing GET parameters through Apache mod_rewrite
[936] Global, Superglobal, Session variables - scope and persistance in PHP
[904] Of course I'll tell you by email
[847] Image maps for navigation - a straightforward example
[789] Hot answers in PHP
[767] Finding the language preference of a web site visitor
[732] Where is a web site visitor browsing from
[675] Adding PHP tags to an old cgi program
[603] PHP - setting sort order with an associative array
[565] Using PHP to output images, XML, Style sheets, etc
[542] Morning image, afternoon image
[537] Daily Image Santafied
[484] Setting the file name for a downloaded document
[451] Accessing a page via POST from within a PHP script
[443] Server side scripting of styles to suit the browser
[425] Caching an XML feed
[410] Reading a news or blog feed (RSS) in your PHP page
[376] What brings people to my web site?
[372] Time calculation in PHP
[356] Sudoku helper or sudoku cheat
[345] Spotting a denial of service attack
[314] What language is this written in?
[220] When to use Frames
(article) Using current exchange rates on a web page
(article) Using Frames with PHP
(article) Shopping cart application in PHP
(article) A Web interface for your Linux admin tasks
(article) Suggesting alternative search terms to web site users
{cook.php4} Setting and reading a cookie
{sessions.php5} Session demo for more recent PHP4 and PHP5 systems
{fromwhere.php} Tracking how visitors reach a page
{dopost.php} Using the POST method to read from a URL within a PHP script
{supermail.php} simple form for mailing
{imap.php} Image map controlled by PHP script
{sesscart.php4} Session demo - shopping cart
{sessdemo.php} Session demo - shopping cart - from PHP 4.2
{phpemenc} Emailing with enclosures from a web page
{ppmh} Sending an email as HTML not plain text
{roomstates.php} Room State Reporter
{pubsales.php4} Cookie check for new visitor
{pcook.php4} Setting and checking a persistent cookie
{cookie_demo.php4} Setting and deleting a cookie
{d404.html} Script run when our web site can't find a requested page
{exchange.php} Exchange rate convertor
{sucksee.php4} does a URL exist?
{automailer} PHP script to email from the command line

Module H113 - Using MySQL Databases in PHP Pages
[2628] An example of an injection attack using Javascript
[2561] The future of MySQL
[2447] MySQL stored procedures / their use on the web from PHP
[2432] Using print_r in PHP to explore mysql database requests
[2320] Helping new arrivals find out about source code examples
[2259] Grouping rows for a summary report - MySQL and PHP
[2071] Setting up a MySQL database from PHP
[1983] Keeping PHP code in database and running it
[1561] Uploading to a MySQL database through PHP - examples and common questions
[1010] Dates, times, clickable diarys in PHP
[947] What is an SQL injection attack?
[937] Display an image from a MySQL database in a web page via PHP
[915] Paging through hundreds of entries
[723] Viewing images held in a MySQL database via PHP
[666] Database design - get it right from first principles
[647] Checking for MySQL errors
[581] Saving a MySQL query results to your local disc for Excel
[572] Giving the researcher power over database analysis
[515] MySQL - an FAQ
[104] mysql_connect or mysql_pconnect in PHP?
(article) MySQL version 5, PHP version 5 and mysqli
(article) MySQL and PHP - enquiry tool for ad-hoc requirements
(article) Interfacing applications to a MySQL database engine
{agents.php} Joining MySQL database and searching results in PHP
{select1.php4} Selecting information from a database table - unchecked
{picscript.php} Retrieve an image from a database and display it
{sqladd.php4} Add information to a database table
{generic.php} Display a MySQL table, summarising rows
{sqd.php} Algorithm selection of where clauses
{sqldelete.php4} deleting a database table from PHP
{picclim.php} Search a database of images
{bookstats.php} PHP to front a MySQL multiway join
{pic_up.php4} Uploading an image from a form to a MySQL database via PHP
{sqlcreate.php4} Create a MySQL table from a PHP page
{select2.php4} Selecting information from a database table - fully validated
{yikes.php4} Downloading complete database via a PHP script
{sqlhelper.inc} PHP helper - make up a where clause element
{aos.php} Save a MySQL result set to the local machine
{mysql_joins.php} Showing Joined tables on a web page
{sqlreport.php4} report on information held in a relational database
{mqchunks.php} Pagination through a database - PHP and MySQL
{mqclim.php} searching and paging through results
{sort_sql.php} Using an array to sort records off a database
{pic_alog.php4} view images stored in a MySQL database via PHP
{people.php4} Simple database lookup - using MySQL from PHP
{sekiy.php4} Converts data into MySQL commands
{sql_image_store.html} Web page to call up an image held in an SQL database
{sqltab.php4} Full navigation around an SQL database from PHP

Module H114 - Sourcing, installing and configuring PHP
[2646] Compile but do not run PHP - syntax check only
[2589] Your PHP code does not work? Here is where to start looking.
[2433] Controlling, supressing, enabling PHP error messages
[2317] How to make a Risotto (PHP build style)
[1936] Quick Summary - PHP installation
[1768] What is built in to this httpd and PHP?
[1731] Apache httpd, MySQL, PHP - installation procedure
[1688] cannot restore segment prot after reloc message - PHP / httpd
[1667] Checking server performance for PHP generated pages
[934] Clustering, load balancing, mod_rewrite and mod_proxy
[481] PHP upgrade - traps to watch
[316] Development Environments
[192] Current MySQL and PHP paths and upgrades
(article) Sourcing, installing and configuring PHP
{ini.extras} Some commonly changed limits for PHP

Module H115 - Designing PHP-Based Solutions: Best Practice
[2679] How to build a test harness into your PHP
[2430] Not just a PHP program - a good web application
[2221] Adding a newsfeed for your users to a multipage PHP application
[2199] Improving the structure of your early PHP programs
[1794] Refactoring - a PHP demo becomes a production page
[1694] Defensive coding techniques in PHP?
[1623] PHP Techniques - a workshop
[1533] Short and sweet and sticky - PHP form input
[1490] Software to record day to day events and keep an action list
[1487] Efficient PHP applications - framework and example
[1482] A story about benchmarking PHP
[1391] Ordnance Survey Grid Reference to Latitude / Longitude
[1390] Converting from postal address to latitude / longitude
[1389] Controlling and labelling Google maps via PHP
[1381] Using a MySQL database to control mod_rewrite via PHP
[1323] Easy handling of errors in PHP
[1321] Resetting session based tests in PHP
[1194] Drawing hands on a clock face - PHP
[1182] Painting a masterpiece in PHP
[1181] Good Programming practise - where to initialise variables
[1166] Back button - ensuring order are not submitted twice (PHP)
[1052] Learning to write secure, maintainable PHP
[1047] Maintainable code - some positive advice
[945] Code quality counts
[936] Global, Superglobal, Session variables - scope and persistance in PHP
[896] PHP - good coding practise and sticky radio buttons
[839] Reporting on the 10 largest files or 10 top scores
[572] Giving the researcher power over database analysis
[563] Merging pictures using PHP and GD
[426] Robust checking of data entered by users
[394] A year on - should we offer certified PHP courses
[340] Code and code maintainance efficiency
[261] Putting a form online
[237] Crossfertilisation, PHP to Python
[123] Short underground journeys and a PHP book
(article) Portrait of the Author of PHP
(article) The practical solution of requirements using PHP
(article) Error messages in PHP
(article) Keeping the PHP and the HTML apart
(article) What makes a good variable name?
{stdsess.inc} standard functions for sc5 and sc6 demos
{sqldemo.inc} SQL functions for sc5 and sc6 demos
{4lm_top.php} Full PHP application / 4 layer model - start here
{4lm_template.htp} HTML template for 4 layer model
{hph2.php} Sticky form, Regex Validation, save to db when AOK
{sc6.php} Main demo script; uses sessions, functions, SQL, XML and XSLT
{sc5.php} Main demo script (for older versions of PHP)
{gruse.php} Capthca Driver
{sc5.php4} Main demo script - uses sessions, functions, SQL, XML and XSLT
{imnames.xsl} Style sheet used to get a list of all images held in XML file
{xsltdemo.inc} xslt functions for sc5 and sc5 demos
{niceform.php4} Form, validation, sticky fields, email results
{details.xsl} Style sheet to format one particular piece of information from an XML file
{4lm_business.inc} business logic for 4 layer demo
{images.xml} XML data used by demonstration program
{demo.htp} Template for sc5.php4 and sc6 "best practise" examples
{grgen.php} Generate a graphic to show a text string
{slidetell.php} Look up records (paginated) in a MySQL table.
{hph.php} Using an array to set a generalised form
{4lm_webhelpers.inc} Web Helpers for 4 layer model demo

Module H116 - Shopping Cart Application in PHP
[1634] Kiss and Book
[1623] PHP Techniques - a workshop
[1487] Efficient PHP applications - framework and example
[1321] Resetting session based tests in PHP
(article) Shopping cart application in PHP
{getaddy.htp} Template web page for carter.php4
{thankyou.htp} Template web page for carter.php4
{getshop.inc} Functions for carter.php4 and other shopping cart apps
{getccard.htp} Template web page for carter.php4
{carter.php4} Session demonstration - full shopping cart
{offer.htp} Template web page for carter.php4

Module H117 - Security in PHP
[2628] An example of an injection attack using Javascript
[2025] Injection Attack if register_globals in on - PHP
[1779] Injection Attacks - avoiding them in your PHP
[1747] Who is watching you?
[1694] Defensive coding techniques in PHP?
[1679] PHP - Sanitised application principles for security and useability
[1542] Are nasty programs looking for security holes on your server?
[1482] A story about benchmarking PHP
[1396] Using PHP to upload images / Store on MySQL database - security questions
[1387] Error logging to file not browser in PHP
[1323] Easy handling of errors in PHP
[1086] Injection attacks - safeguard your PHP scripts
[1052] Learning to write secure, maintainable PHP
[947] What is an SQL injection attack?
[920] A lion in a cage - PHP
[426] Robust checking of data entered by users
[345] Spotting a denial of service attack
(article) Spotting and stopping denial of service attacks

Module H118 - Generating CSS through PHP
[996] Setting your colour theme through PHP
[565] Using PHP to output images, XML, Style sheets, etc
[501] .css - using PHP to make dynamic style sheets
{style.inc} Full demo - PHP to set style sheets
{stdsess.inc} Full demo - web helper functions
{picklet.php} Image library application using dynamic PHP style sheets
{west.html} Selecting and applying CSS themes through PHP
{revinf.php} MySQL content report with counts, in PHP using CSS
{index.php} full demo - top layer and main code file
{httpd.hta} full demo - .htaccess file
{dss.php} Dynamic Style sheet
{page.htp} Full demo - template for display

Module H201 - PHP and MySQL for Content Management
[2071] Setting up a MySQL database from PHP
[1745] Moodle, Drupal, Django (and Rails)
[1576] Making PHP and MySQL training relevant to the course delegates
[1555] Advanced Python, Perl, PHP and Tcl training courses / classes
[647] Checking for MySQL errors
{offeredit.php4} Validate an editor's login if necessary, and offer a list of records that can be edited
{tail.txt} Boiler plate HTML for the foot of every page -->
{user.inc} User definable functions - optional file that may include functions to run on any of the database columns when the content is being reported
{index.php4} Start of application - offer a series of search boxes, and also an editor's login form
{error.txt} Error messages file - allows for translation into other languages
{edit.php4} Offer the content editor a record to edit (or a blank record)
{top.txt} Boiler plate HTML for the head of every page
{stdfuncs.inc} Standard functions for all pages e.g. open database connection, shopping cart handling
{select.php4} List out all records that match the searcher's criteria, in the form of a selection menu
{confirm.php4} Confirm and update to the content, and save it into database.
{display.php4} Display a single record from the database in full detail
{create.sql} File of SQL commands to create an empty database and tables for this example

Module H202 - Case Study
[2051] A Presentation about our company - web and PHP
[1495] Single login and single threaded models - Java and PHP
(article) Solution Centre - all article listing
(article) Solution Centre - all article listing
{sendform.php} Emailing form entries to the web site owner
{review.php} Form - course review

Module H203 - Complete example - Registering for a get-together
(article) Complete PHP example - Registering for a get-together
{qmeet.php} Complete Application - meeting room quotation
{together.php} Complete source code - registering for a get-together

Module H204 - PHP and MySQL example application - adhoc database analysis
[572] Giving the researcher power over database analysis
{businesslogic.inc} BUSINESS LOGIC
{adhoc_sql_query_engine.php} Application to look after generalise casual queries on a complex table structure
{help20.txt} Sample help file - result page
{helppage.php} Help system - template wrapper
{webhelpers.inc} standard functions 4 layer model applications
{help10.txt} Sample help file - query type
{help199.txt} Sample help file - logout
{adhoc.conf} Configuration file for ad hoc MySQL query system
{sampledata.sql} Commands used to create sample SQL database and tables
{help12.txt} Sample help file - select columns
{sqlwrapper.inc} An SQL wrapper to aid portability
{help1.txt} Sample help file
{page_layout.htp} Template for adhoc MySQL Query system
{help11.txt} Sample help file - select rows

Module H300 - PHP Revision
[1787] Howto - write and manage a news box on your web page
[1615] PHP training courses every month
{showdb.php} Retreiving and displaying information from a database
{nibs.php} Extracting data / complex text file format
{xxy.php} Web Site news - a simple edit box

Module H301 - Sticky fields and session
[2416] Automating access to a page obscured behind a holding page
[1911] Remember Me - PHP
[1766] Diagrams to show you how - Tomcat, Java, PHP
[1739] Bath, Snake or Nag?
{fru2.php} Sticky fields, and preventing injection attacks
{zxzx.php} Viewing session from another web page
{wsss.php} Sessions - a demo of the mechanism
{dozen.php} Sending out holding pages before final result page

Module H302 - MVC, 4 layer model and templating
[2221] Adding a newsfeed for your users to a multipage PHP application
[2199] Improving the structure of your early PHP programs
[2174] Application design in PHP - multiple step processes
[1766] Diagrams to show you how - Tomcat, Java, PHP
[1716] Larger applications in PHP
[1634] Kiss and Book
(article) Keeping the PHP and the HTML apart
{stages.finish1.inc} validate email, name and department
{business.inc} Business Logic
{product.txt} Product listing
{needed.inc} Sample included file
{stages.htp} Multiple Stage Application
{shoptop.php} Top level
{stages.finish0.inc} initialise for new visitor
{mpc.php} Session based multiple page application Mk 1
{mpa.php} First shell for multipage application
{simsess.php} Session demo / single included file
{stages.php} Muliple page, session based application
{stages.webhelpers.inc} Web helpers for stage.php demo
{mpd.php} Session based multiple page application Mk 2
{template.txt} template file
{mpe.php} Session based multiple page application Mk 3
{web.inc} Web Helpers
{mpb.php} Stepping through and validating over multiple pages
{stages.finish2.inc} Read and record an incident record
{stages.prepare2.inc} prepare for phase 2
{stages.prepare1.inc} prepare for phase 1
{stages.prepare3.inc} prepare phase 3 - no form, just an onward link

Module H303 - Long and short term cookies and security
[2238] Handling nasty characters - Perl, PHP, Python, Tcl, Lua
[1911] Remember Me - PHP
[1646] Using cookies and sessions to connect different URLs - PHP
{suggest.php} Cookie and clean form demo
{codo.php} Memorising via a cookie

Module H304 - DDA, Style and image handling
[2539] Changing Images
[2343] World Flags in your PHP pages
[2031] Choosing from an image with an image map
[1506] Ongoing Image Copyright Issues, PHP and MySQL solutions
[806] Check your user is human. Have him retype a word in a graphic
{gbs.php} What can PHP tell me about my browser?
{park.php} Change image every minute. Retain style based on cookie (DDA)
{browsers.php} Counting browser types visiting our site
{browtype.php} Check browser type - feed out plain text or image / flash references

Module H305 - Web server configuration
[2478] How did I do THAT?
[1938] Predictive Load Balancing - PHP and / or Java
[1778] Pointing all the web pages in a directory at a database
{frontend} Front end task - Predictive Load Balancing
{backend} Back end task - Predictive Load Balancing

Module H306 - Who is your visitor?
[2667] Web page to telephone calls / links using an iPhone
[2380] Object Oriented programming - a practical design example
[2343] World Flags in your PHP pages
[2135] What features does this visitors browser support? (PHP)
[1736] Current visitors from around the world - PHP
{parly.php} Welcome a User - but only between 3pm and 5pm on Wednesday!
{second.php} Web Log Analysis - example

Module H307 - Web2 and caching
[2545] Scraping content for your own page via PHP
[2321] Uploading and Downloading files - changing names (Perl and PHP)
[2196] New Example - cacheing results in PHP for faster loading
[1995] Automated server heartbeat and health check
[1926] Flash (client) to PHP (server) - example
[1814] Javascript/HTML example, dynamic server monitor
[1813] Ajax - going Asyncronous and what it means
[1812] Starting Ajax - easy example of browser calling up server data
[1733] memcached - overview, installation, example of use in PHP
[1647] Exchange Rates - PHP with your prices in your users currency
[1633] Changing a screen saver from a web page (PHP, Perl, OSX)
(article) Using current exchange rates on a web page
{cademo.php} Caching between pages via memcached
{ajaxcode.php} Web Service provider - first Ajax demo ajax123.html
{scraper.php} Scraping a remote URL content
{ajax456.html} Asyncronous call from Javascript on client to PHP on server
{ajax123.html} JavaScript to load data from server
{a_logshow.php} Log file analysis (2) - code optimised for readability
{rs.php} Web service to give user current server stats
{exr.php} Grab exchange rates to/from Euro
{hb.php} Heartbeat script to check server
{a_timbershow.php} Log file analysis (1) - base case - functioning but poorly structured
{sendimage.php} Serve a download from a database
{currency.inc} Currency abbreviations and names
{train_pixelreport.php} An easy way to add an image point to a file
{phping.php} Heartbeat script to watch vital server
{train_graphic.php} Display info from application server on an image
{ajaxstatus.html} Ajax demonstration - a dynamically updating status page.
{a_papershow.php} Log file analysis (3) - results cached for run time efficiency

Module H308 - Searches, and search engines
[2631] How to show a large result set page by page in PHP
[2166] Crossrefering documents with uniqueness and inconsistency issues - PHP proof of concept demo
[2137] Reaching the right people with your web site
[1735] Finding words and work boundaries (MySQL, Perl, PHP)
[1020] Parallel processing in PHP
{page_it.php} Paging through a result set
{globalindex.html} ") {
{pplev.php} Looking for a similar surname
{ntx} File of surnames for matching demo

Module H309 - Maps, Graphics and Geographics
[2675] Redirecting to your main domain for correct security keys
[2583] Reducing image size on digital photos - PHP
[2390] Dynamic / changing images on your web page
[2361] Geocoding - converting address to latitude / Longitude with PHP via Google
[2343] World Flags in your PHP pages
[1956] Images for Christmas
[1923] Making it all worthwhile
[1756] Ever had One of THOSE mornings?
[1752] Dynamic maps / geographics in PHP
[1734] All around the world?
[1724] addslashes v mysql_real_escape_string in PHP
[1628] Gant charts - drawing them with a PHP script
[1391] Ordnance Survey Grid Reference to Latitude / Longitude
[1390] Converting from postal address to latitude / longitude
[1389] Controlling and labelling Google maps via PHP
[1194] Drawing hands on a clock face - PHP
[1104] Drawing dynamic graphs in PHP
[937] Display an image from a MySQL database in a web page via PHP
[665] PHP Image viewing application
[563] Merging pictures using PHP and GD
[320] Ordnance Survey - using a 'Get a map'
{tfdt.txt} Sample text file - location of places on image
{showmanor.php} Slide Show - single file example
{tgf.html} Graphic and report based on data from application server
{isp_eu.php} Plot web site visitors on a map of Europe
{showmap.php} Selecting from an image map
{latlong2os.php} latitude / longitude to ordnance Survey grid positions
{train_pixelreport.php} An easy way to add an image point to a file
{train_graphic.php} Display info from application server on an image
{tfd.txt} Bare data that we've cached from our application server
{isp.php} Plotting your web site visitors on a world map
{popup.php} A popup window to show details of an item on a page

Module H310 - Putting it all together
[2635] A PHP example that lets your users edit content without HTML knowledge
[2275] Debugging multipage (session based) PHP applications
[1962] Index Card System for Game Characters in PHP
[1840] Validating Credit Card Numbers
[1794] Refactoring - a PHP demo becomes a production page
[1754] Upgrade from PHP 4 to PHP 5 - the TRY issue
[1716] Larger applications in PHP
[687] Presentation, Business and Persistence layers in Perl and PHP
[468] Stand alone PHP programs
{jndex.php} Simple wiki demonstration
{indexcard.php} Index Card System - Version 0.9
{dot_htaccess} .htaccess file for wiki demonstration
{todo4.htp} Template for the wiki demonstration

Module H312 - Tips and Techniques
[2478] How did I do THAT?
[2274] PHP preg functions - examples and comparision
[2025] Injection Attack if register_globals in on - PHP
[1983] Keeping PHP code in database and running it
[1958] PHP - Parse error: syntax error, unexpected $end ...
[1684] Two PHP include files to make easy web site indexing and navigation
[1667] Checking server performance for PHP generated pages
[1649] Easy conversion - image formats, currencies and distances
[1270] PHP Standalone - keyboard to screen
[1010] Dates, times, clickable diarys in PHP
[917] Syntax checking in PHP
[789] Hot answers in PHP
{ppq.php} Crossreferencing data markers to web pages
{myod.php} generates HTML to link to subdirectories
{robert} Sample data for crossreference demo
{msf.php} generates HTML to link to files in

Module H400 - Open Source Applications in PHP
[2682] Adding extensions to PHP Open Source applications - callbacks

Module H401 - Some extra PHP modules
[2682] Adding extensions to PHP Open Source applications - callbacks

Module H998 - ADOdb
{adodb.php} Adodb example - selecting from a database
{mysql.php} MySQL example - selecting from a database

Module H999 - Additional PHP Material
[2215] If nothing, make it nothing.
[2073] Extra PHP Examples
[1623] PHP Techniques - a workshop
[1519] Flipping images on your web page
[1505] Script to present commonly used images - PHP
[1485] Copyright and theft of images, bandwidth and members.
[1451] More PHP sample and demonstration programs
[1391] Ordnance Survey Grid Reference to Latitude / Longitude
[1390] Converting from postal address to latitude / longitude
[1389] Controlling and labelling Google maps via PHP
[1270] PHP Standalone - keyboard to screen
[1194] Drawing hands on a clock face - PHP
[1104] Drawing dynamic graphs in PHP
[1053] Sorting people by name in PHP
[1020] Parallel processing in PHP
[1010] Dates, times, clickable diarys in PHP
[937] Display an image from a MySQL database in a web page via PHP
[917] Syntax checking in PHP
[839] Reporting on the 10 largest files or 10 top scores
[822] PHP - a team member leaves
[806] Check your user is human. Have him retype a word in a graphic
[789] Hot answers in PHP
[687] Presentation, Business and Persistence layers in Perl and PHP
[665] PHP Image viewing application
[603] PHP - setting sort order with an associative array
[563] Merging pictures using PHP and GD
[493] Running a Perl script within a PHP page
[483] Double Dollars in PHP
[468] Stand alone PHP programs
[372] Time calculation in PHP
[337] the array returned by preg_match_all
[322] More maps
[320] Ordnance Survey - using a 'Get a map'
[239] What and why for the epoch
[54] PHP and natural sorting
(article) Graphic User Interfaces (GUIs)
(article) Example - PHP form, Image upload. Store in MySQL database. Retrieve.
{imgflip.php} Flipping an image in PHP
{uso.php4} User defined sorting
{xml1.php4} Xml handling in PHP
{imglist.xsl} Sample XSLT template as used in xslt.php4 example and others
{exc.php} An exercise in sorting
{image1.php4} Generating a graphic in PHP
{dademo.php} Date and Time and sorting em in PHP
{vars.php4} Variable types in PHP
{lottery.php4} Array manipulation functions range, shuffle etc
{uso2.php4} More complex user defined sort
{feeder.php} Script to handle image library in MySQL database as if it was a directory of images
{thumb.php4} thumbnailing an image in one file and saving in another
{mergeover.php4} Stippleover from one image to another
{2dar.php4} 2 dimensional array in PHP
{xslt.php4} Process an XML file through an XSLT template and insert result in a PHP page
{site_title} Stand alone script - grab title of remote web page
{image2.php4} Generating a button with variable graphics and text in PHP
{whowentwhere.php4} Practical example of 2 dimensional array in use
{th.php} dynamic thumbnail generator
{mkgraphic.php4} Stand along programming in PHP / also graphics example
{imgdump.php} Generate the html to call up 10 images from a database
{gmap.php} Google Maps / PHP - show your office
{xml2.php4} Second example - using PHP to handle XML
{gobbler} Forking in PHP - parallel processing
{hands.php} Draw hands on a clock
{mustcount.php4} Script to accompany access counter discussion
{hml.inc} Horses Mouth - latest topic feed
{showcount.php4} Show counter record file
{ml1.php} Simple Author extraction from Medline
{imgfeed.php} Show an image held in a MySQL database
{xdo.php} Reading an RSS feed in your PHP page
{grids.php4} Shows you where a place is on an Ordnance Survey Map
{picclim.php} Search a database of images
{nats.php4} Natural Sort Order demo
{oursites.php} Parallel processes in PHP
{thumbview.php} Thumbnail index and image view application
{th.php4} dynamic thumbnail generator
{tear.php4} Tear from one image to another
{exp.php} Exceptions in PHP
{rome.php4} Random image for use in a web page
{php_parallel} Parallel processing example in PHP
{ac_check.php4} Sorting an associative array
{images.xml} Sample XML file as used in xslt.php4 example and others
{tinso.php} Sorting an associative array
{loclook.php} Google Maps / Geocoding demo
{fader.php4} Fade from one image to another
{xml3.php4} Using PHP to handle XML, stand alone!
{aso.php4} First sorting example
{os2latlong.php} Convert Ordnance survey grid positions to latitude / longitude

top - top of pagenew - new articles not yet categorised
A - Linux, Apache httpd and Tomcat C - C and C++ programming 
G - General Training Topics H - PHP programming and techniques 
J - Java programmming including Web M - Well House Manor; hotel and events 
P - Perl programming and use Q - General programming subjects 
R - Ruby programming and use S - Databases / the MySQL database 
T - Tcl, Tcl/Tk, wish and Expect U - Lua programming and use 
W - Web site programming / techniques Y - Python programming and use 
Z - Miscellany end - end of page

J: Java programmming including Web

Overview J050 - Java - General
[2504] Learning to program in ...
[2420] Exceptions in Java - why and how
[2417] Java Programming Fundamentals
[2114] Which Version of Java am I running?
[2091] C, C++ and C# ... Java and JavaScript
[2087] Comparing Java Courses - what can we do?
(article) Overview of Java
{Time.java} Base class for examples up to Lenny
{Wendy.java} Test program within a class
{Chloe.java} First use of variables and conditionals
{Viv.java} An ArrayList - an extendable array
{Zoe.java} StringTokeniszer, ArrayList and Exception demonstration
{Fred.java} Reading user input from keyboard
{Hilary.java} Passing values in and out of a local method
{Rolf.java} Extended class
{Ulrika.java} An array of objects
{Orlando.java} Class within a package
{Lenny.java} Static Methods, comparing objects
{Xena.java} Example with and without exception handling
{Bernie.java} static method (function) calls
{Keith.java} Using a class
{Edward.java} Shared code - load and run method from another class
{Margaret.java} String handling example
{Aileen.java} Sorting an ArrayList
{Quentin.java} Calling in an extended class
{Glenda.java} loop, with break and continue
{Steve.java} A second extended class
{Trevor.java} Polymorphism - an array of different objects
{Daniel.java} Integer Calculation
{Peter.java} underlying (base) class
{Niamh.java} loading a method from a class in a package
{Yvonne.java} Directory listing, file i/o and formatting demo
{Adam.java} Hello World, and command line input
{Julie.java} Array of arrays (i.e. 2 dimensional array)
{WellHouseInput.java} Reading from the keyboard or a file
{Irene.java} Arrays - setup, fill, pass, process, length

Module J601 - Java Introduction
[2536] All the Cs ... and Java too
[2423] What is a JVM, a JRE, a JDK - components of the core Java Environment
[2115] Finding your java program - the CLASSPATH variable
[1908] Java CLASSPATH explained
[1766] Diagrams to show you how - Tomcat, Java, PHP
[1557] Trying out our Java examples on our web site
[1497] Training Season Starts again!
[1466] Effective Java training - the bootcamp approach
[1418] A Golf Club Decision - Perl to Java
[1158] Private Java Course - A customer's pictures
[1049] Java 6, Apache Tomcat 6.
[871] Java oversold?
[792] Is Java the right language to learn?
[317] Programming languages - a comparison
[124] PHP v Java
[111] Training notes available under Open Distribution license
[25] Release numbers
(article) Overview of Java
(article) Book review - Beginning Java 2
{Hello.java} Program to test basic operation of Java tools.
{demolet.java} Sample Servlet - init doGet and doPost methods

Module J606 - Java Roadmap - Beyond the Fundamentals
[2036] Java Tag Libraries / how they work / Tomcat Deployment
[1910] Java - Generics
[1562] Java Compiler - needs all classes, compiles them all too
[1049] Java 6, Apache Tomcat 6.

Module J607 - Servlets, JSP, Tomcat
[2642] What does a web application look like under Tomcat?
[2147] A very easy JSP (Java Server Page)
[2058] Invoker and cgi servlets on Tomcat 6
[1766] Diagrams to show you how - Tomcat, Java, PHP

Module J608 - Naming Conventions and Code Management
[2604] Tips for writing a test program (Ruby / Python / Java)
[2415] Variable names like i and j - why?

Module J610 - Archived examples from previous versions of courses
[2654] Java - from applets to servlets. JSPs and more
[1070] Java Deployment course - lunch break
{lapwing.java} lapwing.java
{dunlin.java} Java Properties - what version / OS / etc
{jackdaw.java} jackdaw.java
{spot.html} spot.html
{hawthorn.html} hawthorn.html
{fclient.java} socket programming (client)
{svl_left.html} svl_left.html
{svl_outer.html} svl_outer.html
{nuthatch.java} nuthatch.java
{curlew.java} test program to log events generated by an applet
{svl_o2.html} svl_o2.html
{chough.java} font handling
{Eiger.java} awt GridBag
{Phone.java} Phone.java
{curlew.html} curlew.html
{ramsbury.java} ramsbury.java
{playing_card_8.java} playing_card_8.java
{jackdaw.html} jackdaw.html
{dice_1.java} Random throws of a die
{jackdaw2.html} jackdaw2.html
{hen.html} hen.html
{fir.java} border layout example
{potterne.java} potterne.java
{siskin.html} siskin.html
{card_8.java} card_8.java
{gadwall.java} Server (present swap on port 7979) with graphic monitor
{pack_1.java} pack_1.java
{bulford.java} while loop
{bremhill.java} Heavily commented simple program
{fyfield.java} fyfield.java
{kingsdown.java} kingsdown.java
{gp2.java} Grabbing a page of html
{westwood.java} westwood.java
{figheldean.java} a first for loop
{redshank.java} redshank.java
{parcel.java} parcel.java
{charlton.java} Array of array (quasi 2D array)
{nettleton.java} nettleton.java
{redpoll.java} redpoll.java
{teal.java} teal.java
{packages.html} packages.html
{talker.java} talker.java
{fcdata.java} socket programming (client)
{card_7.java} definition of an interface
{enford.java} basics of using an array
{Chocolate.java} Extending a class
{n2.java} n2.java
{cyprus.java} border layout in awt
{coot.html} coot.html
{took.html} took.html
{crossbill.java} Command line and stand alone added to an applet
{puffin.java} puffin.java
{Dunkery.java} for loop and Float objects
{seend.java} seend.java
{Obj_v_prim.java} Obj_v_prim.java
{Phone_002.java} Phone_002.java
{hawthorn.java} hawthorn.java
{durrington.java} while, if, break
{jay.html} jay.html
{coot.java} dynamic graphics drawing
{new_street.html} new_street.html
{honeystreet.java} honeystreet.java
{Maovally.html} Maovally.html
{chalfield.java} using an enumeration
{rook.java} rook.java
{Whitfell.java} Whitfell.java
{playing_card_9.java} playing_card_9.java
{chough.html} chough.html
{worton.java} worton.java
{fifield.java} labels - also break v continue v exit
{svl_temp.html} svl_temp.html
{porton.java} porton.java
{Snowdon.java} Snowdon.java
{goldfinch.html} goldfinch.html
{birch.java} Grid layout with buttons
{playing_card_6.java} playing_card_6.java
{pack_3.java} pack_3.java
{maple.java} maple.java
{BenHutig.java} AWT grid layout
{elm.html} elm.html
{mildenhall.java} mildenhall.java
{DialApplet.java} Dialler applet using Swing
{Swapp.java} Swapp.java
{BeinnDearg.java} Character frequency analysis in a data file
{longer.java} longer.java
{atworth.java} exception handling
{Tryfan.html} Tryfan.html
{pack_5.java} pack_5.java
{ford.java} ford.java
{Scafell.java} Scafell.java
{greenshank.java} greenshank.java
{t3.java} t3.java
{graphic_finger.java} a graphic client program to call up the finger daemon
{bromham.java} hello world
{grittleton.java} grittleton.java
{new_street.java} new_street.java
{green3.html} green3.html
{magpie.html} magpie.html
{acorn.html} acorn.html
{MoelHebog.html} MoelHebog.html
{palm.java} palm.java
{jay.java} jay.java
{rsp.java} rsp.java
{AllNames.html} AllNames.html
{oak.html} oak.html
{burton.java} arrays of objects
{pochard.java} pochard.java
{heron.java} heron.java
{corsham.java} corsham.java
{t1.java} t1.java
{hen.java} hen.java
{tree.html} tree.html
{Fish.java} Simple base class (see Catchfish)
{green2.html} green2.html
{quote.java} quote.java
{inglesham.java} inglesham.java
{mailout.java} mailout.java
{brambling2.html} brambling2.html
{greenfinch.html} greenfinch.html
{siskin.java} siskin.java
{pagestats.java} pagestats.java
{lapwing.html} lapwing.html
{fittleton.java} fittleton.java
{scaup.html} scaup.html
{Canisp.java} a telephone keypad using awt
{rowde.java} rowde.java
{haxton.java} haxton.java
{idmiston.java} idmiston.java
{PastelFilter.java} PastelFilter.java
{avocet.java} Internationalisation / resource strings
{heron.html} heron.html
{Whitfell.html} Whitfell.html
{brambling.html} brambling.html
{Maovally.java} Maovally.java
{Swsmall.java} Swsmall.java
{larkhill.orig.java} larkhill.orig.java
{marlborough.java} marlborough.java
{chestnut.java} applet to show colours
{swift.java} swift.java
{greenshank.html} greenshank.html
{yew.html} yew.html
{chippenham.java} chippenham.java
{marden.java} marden.java
{goldfinch.java} goldfinch.java
{card_9.java} card_9.java
{amesbury.java} read from keyboard via a supplied class
{alderton.java} Test program to call intter classes example
{holly.java} holly.java
{fir.html} fir.html
{wraxall.java} wraxall.java
{pack_2.java} pack_2.java
{whitley.java} whitley.java
{oak.java} oak.java
{skylark.html} skylark.html
{nuthatch.html} nuthatch.html
{cholderton.java} if and else
{alton.java} while loop demonstration
{lavington.java} lavington.java
{broughton.java} exception handling
{all.java} all.java
{redpoll.html} redpoll.html
{bradley.java} file handling
{chaffinch.java} chaffinch.java
{linnet.html} linnet.html
{scaup.java} scaup.java
{BigginHill.java} Command line input / validation
{milston.java} milston.java
{ivy.java} ivy.java
{t2.java} t2.java
{maple.html} maple.html
{chirton.java} Non rectangular 2D arrays
{swallow.java} swallow.java
{willow.java} willow.java
{suspect_card_9.java} suspect_card_9.java
{box.html} box.html
{Hms2.java} Hms2.java
{mp.html} mp.html
{teal.html} teal.html
{moorhen.java} moorhen.java
{aspen.html} aspen.html
{larkhill.java} larkhill.java
{bremhill.html} bremhill.html
{bradford.java} file manipulation
{mallard.java} mallard.java
{smew.html} smew.html
{Eiger.html} Eiger.html
{Coin.java} abstract base class
{chestnut.html} chestnut.html
{Whernside.html} Whernside.html
{blunsdon.java} Unicode and character string handling
{redstart.java} redstart.java
{Daily.java} extending the class Coin
{tilshead.java} tilshead.java
{crow2.html} crow2.html
{grabpage.java} grabpage.java
{imgframe.java} imgframe.java
{spruce.java} spruce.java
{lechlade.java} lechlade.java
{suspect_card_8.java} suspect_card_8.java
{gargany.java} extended gadwall
{twite.html} twite.html
{winEvent.java} winEvent.java
{playing_card_7.java} playing_card_7.java
{bullfinch.html} bullfinch.html
{hawfinch.html} hawfinch.html
{pack_6.java} pack_6.java
{Scafell.html} Scafell.html
{suspect_card_6.java} suspect_card_6.java
{willow.html} willow.html
{wilsford.java} wilsford.java
{waxwing.java} Generalised Graphing Applet
{puffin.html} puffin.html
{Trip.java} Trip.java
{blackbird.java} threading example via the runnable interface
{waxwing.html} waxwing.html
{TreeDemo.java} TreeDemo.java
{beech.java} More applet components
{rserver.java} rserver.java
{goftp.java} ftp from a java program
{Pocket.java} Pocket.java
{MoelHebog.java} MoelHebog.java
{smew.java} smew.java
{Whernside.java} Whernside.java
{twite.java} twite.java
{Nevis.java} Nevis.java
{woodborough.java} woodborough.java
{beech.html} beech.html
{ash.html} ash.html
{palm.html} palm.html
{suspect_card_7.java} suspect_card_7.java
{calne.java} calne.java
{lockeridge.java} lockeridge.java
{linnet.java} linnet.java
{Catchfish.java} extending a class and calling the base class constructor
{brambling.java} general graphing applet
{svlmp.java} svlmp.java
{aspen.java} applet components
{raven.java} raven.java
{moorhen.html} moorhen.html
{redshank.html} redshank.html
{elm.java} elements that can be drawn on a canvas
{shrewton.java} shrewton.java
{gp3.java} gp3.java
{lapwing2.html} lapwing2.html
{rook.html} rook.html
{lime.java} lime.java
{Tryfan.java} Tryfan.java
{svl_l2.html} svl_l2.html
{Phone_001.java} Phone_001.java
{lemon.java} lemon.java
{card_6.java} card_6.java
{Commem.java} extending a base class AND implementing an interface
{Canisp.html} Canisp.html
{ImageHold.java} ImageHold.java
{raven.html} raven.html
{buzzard.html} buzzard.html
{crossbill.html} crossbill.html
{pack_4.java} pack_4.java
{Caldemo.java} Caldemo.java
{patrick.java} patrick.java
{Task.java} Task.java
{birch.html} birch.html
{hawfinch.java} hawfinch.java
{greenfinch.java} greenfinch.java

Module J702 - Hello Java World
[2414] Hello World - a good traditional start to a Java course
(article) Overview of Java
(article) Hello Java World
{Hello.java} "Hello World!" in Java
{Two.java} Second Java program - calls methods

Module J703 - Variables
[2153] Class Loading and Variable Conversion in Java
[2148] Variable scope in Java Servlets and other web applications
[1448] Question on division (Java) - Also Perl, PHP, Python ...
[127] Conversion and coercion in Java
{Addup.java} Simple use of variables - adding
{Average.java} Averages - how NOT to (try to) do it
{Av3.java} Average - *this* one works
{Add2.java} Adding and declaring variables in a single statement
{Av3b.java} An alternative working example
{Cost.java} Reading a cost from the user
{WellHouseInput.java} Easy user interaction class
{Av2.java} Average - fails at compile

Module J704 - Loops and Conditional Statements
[1696] Saying NOT in Perl, PHP, Python, Lua ...
[1582] Ruby, C, Java and more - getting out of loops
[1220] for loop - how it works (Perl, PHP, Java, C, etc)
[353] Wimbledon Neck
(article) Solution Centre - all article listing
(article) Solution Centre - all article listing
{Day2a.java} Sample program for exercise
{Secondif.java} Nested 'ifs', and 'else'
{Updown.java} Example of a boolean variable
{Forloop.java} the 'for' loop in Java
{Loop1.java} 'While' loop example
{Firstif.java} Example of a first if statement
{Loop2.java} Breaking from a loop
{Bills.java} Nested loops, conditionals, breaks, labels etc

Module J705 - Arrays
[2648] Java arrays - are they true arrays or not?
[1614] When an array is not an array
[1498] Java is a dynamic language .... (and comparison)
[1497] Training Season Starts again!
{compton.java} Array initialisation
{Arr1.java} First Array in Java
{rowby.java} Dynamic use of arrays
{rushall.java} Two dimensional array
{upavon.java} Array Manipulation
{Weekend.java} Array of Objects
{Gurdy.java} Pascal's triangle using dynamic arrays
{Hurdy.java} Pascal's traingle using a two dimensional array

Module J706 - Objects and Classes
[2651] Calculation within objects - early, last minute, or cached?
[2616] Defining a static method - Java, Python and Ruby
[2422] Looking inside Java classes - javap and javadoc
[2169] When should I use OO techniques?
[1925] Introduction to Object Oriented Programming
[1906] Long, Longer, Longest in Java
[1500] First Class Java. First step and moving forward.
[1296] An example of Java Inheritance from scratch
[1163] A better alternative to cutting and pasting code
[477] Class, static and unbound variables
[96] Variable Scope
{Eve2.java} Example class that uses the Film2 class */
{Film3.java} Static methods and comparing objects - class
{Film.java} Defining a simple class of objects in Java */
{Film2.java} A class of objects with static methods, public variables, overloaded constructors and private internal methods */
{Eve.java} Example class that uses the Film class */
{Ourpets.java} Our Pets - example application
{Eve3.java} Static methods and comparing objects - test harness
{Ourzoo.java} Ourzoo - sample application
{Animal.java} Sample class for use during practical
{Ourmenag.java} Sample application for use during practical

Module J707 - Strings
[2649] Length, size or capacity in Java?
[1557] Trying out our Java examples on our web site
[1446] An answer to a student asking 'Help'
(article) Analysing incoming data lines
{oaksey.java} indexOf and substring
{malmesbury.java} Stringbuffers
{minety.java} Accessing characters within a string object
{ashton.java} Comparing Strings
{highworth.java} More character variables
{ransbury.java} char variables and char arrays
{cricklade.java} String object manipulation
{purton.java} Startwith endswith and other string comparison methods
{crudwell.java} copyValueOf and toCharArray examples
{marston.java} Character String Objects

Module J708 - Packages
[2419] Where is my Java class?
[2114] Which Version of Java am I running?
[754] tar, jar, war, ear, sar files
{sopworth.java} Calling a class in a subpackage
{pack.java} Package class example
{sherston.java} Importing a class from a package
{axford.java} Calling a class in current package

Module J709 - Class Access
[2535] When should I use Java, Perl, PHP, or Python?
[2419] Where is my Java class?
[874] Who can use which access door?
(article) "Java Cookbook" - review
{luckington.java} Inner class example

Module J710 - Extending Classes and More
[2604] Tips for writing a test program (Ruby / Python / Java)
[2434] Abstract classes, Interfaces, PHP and Java
[2185] Abstract Classes - Java
[1819] Calling base class constructors
[1556] Java - a demonstration of inheritance on just one page
[1538] Teaching Object Oriented Java with Students and Ice Cream
[1501] Java - using super to call a method in the parent class
[1294] An example of Java Inheritance from scratch
[1217] What are factory and singleton classes?
[1066] Final, Finally and Finalize - three special words in Java
[831] Comparison of Object Oriented Philosophy - Python, Java, C++, Perl
[656] Think about your design even if you don't use full UML
{Lecturer.java} Lecturer - subclass for use in exercise
{BaseFile.java} An abstract base class
{Student.java} second subclass for use in exercise
{insurable.java} Interface definition
{Car.java} Class that implements an interface
{Round.java} Exercise template - calculate price of a round
{HireFilm.java} Class HireFilm (extends film from other module)
{Book.java} Inheriting from the Universal Superclass. Also test harness in same file as class.
{Ipay.java} Application using an array of objects that implement an interface
{Babysitter.java} Application that uses Hire, Cinema and TV films
{Hire.java} Hire Film - extended class
{Tv.java} Another extended class - TV
{House.java} Another class than implements an interface
{People.java} People - base class for use in exercise
{Hires.java} Application to use HireFilm
{Lecture.java} Lecture - application for exercise
{Cinema.java} extended class example

Module J711 - Java in the Web Page
[2036] Java Tag Libraries / how they work / Tomcat Deployment
[1325] Java - Client side applet applications as well as server side
{box.java} Applet to draw a rectangle in a border

Module J712 - Exceptions
[2622] Handling unusual and error conditions - exceptions
[2420] Exceptions in Java - why and how
[1875] What are exceptions - Python based answer
[1066] Final, Finally and Finalize - three special words in Java
(article) errors v exceptions
{E1.java} Class to which to add exception handling during practicals
{wadswick.java} Sample program that will throw an exception, not catch it, and fail
{neston.java} Catching an exception

Module J713 - More Input and Output
[2420] Exceptions in Java - why and how
[1239] End of File on a Java BufferedReader
(article) Formatting to a fixed number of decimal places
{farleigh.java} Checking file status, reading and writing
{snip2} File existence checking
{bratton.java} Formatted Printing
{snip1} Code snippet - reading from a file
{winsley.java} File Manipulation examples
{snip3} Writing to a file
{wellreader.java} Sample Input class from earlier courses and modules
{Javafgrep.java} Example for modification exercise

Module J714 - Fundamental classes
[2649] Length, size or capacity in Java?
[2421] Sorting Collections of Objects in Java
[2418] Viv.java uses unchecked or unsafe operations - explanation and cure
[2323] Java Collection Objects in the java.util package
[1910] Java - Generics
[1502] Java, sorting, ArrayList example, generics
[1062] Java sorting - comparable v comparator
[42] Do languages change?
(article) Want something more dynamic than an array?
(article) Fundamental classes java.lang, java.util and others
{About.java} System Properties
{Acsort.java} Sorting in Java using the comparable interface
{Hset.java} Hashset example
{holt.java} Using a Vector object
{Handbag.java} A class in which descructor calls are delayed
{Mypocket.java} Forcing a destructor to run
{Objvprim.java} Object to primitive comparison
{Access.java} Access Log analysis in Java - example
{Mathop.java} Maths operations
{Mhs2.java} A further example of sorting in Java
{Arlist.java} ArrayList in Java
{hinton.java} An Example of a Hashtable
{Thing.java} Example of destructor
{floater} Float object v float primitive
{Bynum.java} A Comparator class
{Discfree.java} Running an operating system command from Java
{Strtok.java} StringTokenizer example
{Hmap.java} Hashmap example
{outmarsh.java} Using a stack
{Hmapsort.java} Sorting in Java - using collections

Module J715 - Putting the Java Language Together
[1181] Good Programming practise - where to initialise variables
[836] Build on what you already have with OO
{Placefinde.java} Solution - application class
{PF2.java} Second example application
{Area.java} defintion of an area of the UK
{Place.java} Solution - base class (abstract)
{MF.java} Final example application
{PF4.java} Final lookup on data example, ignoring area v district distinction
{PF1.java} Sample extended class
{PF3.java} Third example application
{P3.java} Example object
{Multifinder.java} Full application
{District.java} definition of a district of the UK
{P4.java} Object P4 definition

Module J801 - Review of Java Basics
[1082] Straight from the .jar
(article) Overview of Java
{Desert.java} Base Class for use in Dairy Queen demo
{Icecream.java} A subclass of Desert
{DairyQueen.java} Main application to show inheritance and polymorphism
{Insurable.java} Dairy Queen demo - just a shell interface to show the implements mechanism
{Colddesert.java} Part of the Dairy Queen demo

Module J802 - Abstract Windowing Toolkit
[2654] Java - from applets to servlets. JSPs and more
[2649] Length, size or capacity in Java?
[2245] Client side (Applet) and Server side (Servlet) Graphics in Java
[1325] Java - Client side applet applications as well as server side
(article) Graphic User Interfaces (GUIs)
{acorn.java} Basic Graphic Applet
{skylark.java} General Purpose Graphing Applet
{yew.java} Applet, nested panels and layouts
{ash.java} Constructs and scaling - AWT and Applets
{awtfont.java} Fonts, text manipulation, graphics. Applet or stand alone application.
{magpie.java} A Histogram of financila results

Module J803 - Applet Parameters
[2654] Java - from applets to servlets. JSPs and more
[1325] Java - Client side applet applications as well as server side
{crow.html} Web page calling applet with data parameters
{crow.java} Graphing Applet that picks up parameters from the HTML

Module J804 - Threads
[2212] Dripping taps, Java threads and the single thread model
{redtail.java} Syncronisation problem
{wren.java} Using threads by extending the Thread class
{redwing.java} Syncronisation solution
{robin.java} Using threads via the runnable interface

Module J807 - Images
[2245] Client side (Applet) and Server side (Servlet) Graphics in Java
{gannet.java} Applet to load an image
{Imgfilter.java} Changing the colours of an image to make a subtle background
{starling.html} HTML to load a parameter driven applet
{gannet.html} HTML frame for applet
{waxwing.java} Graphic Applet - labelled, markers, etc
{waxwing.html} Load an applet with data parameters
{ConfirmDialog.java} Dialog Confirmation Class
{starling.java} Graphing Applet with command line interface too

Module J808 - Network Programming
[1976] Where is this IP address, IPv4 and IPv6
(article) "Java Cookbook" - review

Module J809 - Serialization
[2435] Serialization - storing and reloading objects
[1149] Turning objects into something you can store - Pickling (Python)
[1067] Serialization in Java - all layers required!
{Drawing.java} A class managing a vector of selializable objects
{mousehandler.java} Serialiazable demo mouse handler class
{kingfisher.java} Application to demonstrate serialiasble objects
{Bead.java} The Serialiable class itself

Module J810 - Internationalization
{pintail.java} Numbers, currency and date - internationalization
{Avocet.java} Resource bundles in use
{buzzard.java} An Applet to show and navigate a Unicode font

Module J811 - JDBC - Relational Database Access
[2154] Bean Classes in Java and Java Database Connections
[515] MySQL - an FAQ
(article) Interfacing applications to a MySQL database engine
{jdbc1.java} Connecting to a MySQL database
{J850sjdbc.java} Generic database insert and select code (MySQL demo)
{Oralink.java} Connecting to an Oracle database
{J850insert.java} Servlet that adds a MySQL table row
{J850select.java} Servlet to run a MySQL select (jdbc)
{J850_jdbc.java} Class to perform a MySQL table insert
{make_J850.java} Create table for J850 series of demos
{J850staff.java} Servlet to insert into and report on a table

Module J812 - Java Beans
[2155] No subject or title?
[1074] Java beans and classes, .war and .jar files
{Cube.java} Java Bean example as used by Tag library (J907)

Module J815 - Handling XML in Java
(article) Handling XML in Java

Module J816 - Regular Expressions in Java
[1195] Regular Express Primer
(article) Regular Expressions in Java
{Reg1.java} Regular expressions - look for email address
{Reg2.java} Regular expressions - look for all matching lines in a file
{Reg3.java} Look for all lines containing a term and report the first field from matching lines
{Reg4.java} Look for email address on command line and report on user and domain name parts
{Reg6.java} Regular expressions - match and replace

Module J901 - Servlets
[2652] Reading and writing cookies in Java Servlets and JSPs
[1909] javax.servlet cannot be resolved - how to solve
(article) Sessions in Servlets
{Memo.java} Linking requests together via a session in a servlet
{Maryland.java} Checking and setting cookies in a Servlet
{svl_right.java} Servlet to read form and echo
{svl.html} Servlet demo - HTML form
{symdyn.html} Dynamic operation of a Servlet
{Lifeanswer.java} Basic Servlet - simple calculation and a visit counter

Module J902 - Extending Graphics in Java
[1326] GUI design - Sketch it out first! (Java / Swing example)
[1325] Java - Client side applet applications as well as server side
(article) Graphic User Interfaces (GUIs)
(article) Extending Graphics in Java
(article) Extending Graphics in Java part 2
(article) Extending Graphics in Java Part 3
{swsmall.java} Event handler - Swing
{S2.java} Grid layout - Jbuttons for telephone dialer
{Swtiny.java} Swing - tiny example (JFrame and JLabel)
{Dialapplet.java} Swing Applet - dialler example
{Dialer.java} Java dialer with echo in a Jlabel
{TreeDemoSetup.java} Jtree
{TreeDemo2.java} Jtree with contents and interaction
{S1.java} JFrame, JLabel and Jbutton - Swing

Module J906 - Servlets in More Detail
[2652] Reading and writing cookies in Java Servlets and JSPs
[2183] Servlet life cycle, and Java Servlet variable scope
[1909] javax.servlet cannot be resolved - how to solve
[1550] Java (JSP and Servlet examples) live on our server
[1495] Single login and single threaded models - Java and PHP
[479] New servlet from old
(article) Sessions in Servlets
{Barman.java} Web server / Servlet Sessions - simple demo
{HelloServlet.java} Hello Servlet World
{PubWatch.java} Tracking and sessions for clustering demo
{Landlord.java} Web Server / Servlet / Sessions, with session interaction

Module J907 - JSP - JavaServer Pages
[2525] Using JSPs, Tag Libraries, Java Beans, Tomcat in one short example
[2183] Servlet life cycle, and Java Servlet variable scope
[2151] What is a JSP tag library?
[2147] A very easy JSP (Java Server Page)
[1550] Java (JSP and Servlet examples) live on our server
[1050] The HTML++ Metalanguage
[79] Last day of Java
{graham.jsp} Hello JSP world
{tcform.html} Form to read a temperature in degrees F
{gje2.jsp} JSP example - Java separated from HTML
{boxes.jsp} JSP / Tag Library / Java Bean - the JSP part
{Store6.java} Store class, used to maintain state in JSP demo */
{gje3.jsp} JSP - Form input and validation
{lovely.jsp} JSP example linking a series of pages, good practise shown
{Tconv.java} Class for use from JSP using standard tag library
{bookjava.jsp} Replacing Java Source code with Tags - some equivalents
{products.txt} Product data for Shopping cart demo
{tcvt.jsp} JSP to read temperature in C and convert to F
{web.xml} Session timeout changed to 120 minutes -->
{counter.jsp} Sessions in a JSP
{index.jsp} A Shopping cart JSP that maintains state -->

Module J909 - Putting it all together
[2653] Java Server Pages - putting it all together
[2525] Using JSPs, Tag Libraries, Java Beans, Tomcat in one short example
(article) A multithreaded server in Java
(article) What makes a good variable name?
{price.jsp} Example of a JSP and what the raw Java would be
{Room.java} Business logic for JSP demo (price)
{hello.jsp} Simple JSP calling in business logic from a class
{Beast.java} Java Bean for JSP demo (hello)
{loglook.jsp} JSP to read and analyse data from a file

Module J910 - Introduction to Ant
[694] Ant and Make
(article) Overview of Ant - a Java based build tool
{build.xml} ant instructions for Babysitter application -->

Module J950 - Tomcat Sourcing, Installation and Initial Testing
[2219] Configuring httpd, or Tomcat, to run CGI scripts in Perl
[2218] Multiple web applications under Tomcat - what are the options?

Module J951 - Tomcat - Configuring Web Applications
[754] tar, jar, war, ear, sar files

Module J953 - Combined Java Web Example: Servlets, JDBC and Graphics
[2245] Client side (Applet) and Server side (Servlet) Graphics in Java
[1466] Effective Java training - the bootcamp approach
{Im1.java} Generating an image file through AWT */
{formpage.html} Web form that uses Im4.java -->
{Im2.java} Generating an image file (AWT) using data from a database (JDBC) */
{Im3.java} An image file (AWT) from a database (JDBC) via a web page (Servlet) */
{web.xml} Tomcat config file for the sample application -->
{Im4.java} An image (AWT) with form selected data (HTTP) from a database (JDBC) via a web page (Servlet) */
{multigraph.html} Web form that uses Im4.java (multiple images in one page) -->

top - top of pagenew - new articles not yet categorised
A - Linux, Apache httpd and Tomcat C - C and C++ programming 
G - General Training Topics H - PHP programming and techniques 
J - Java programmming including Web M - Well House Manor; hotel and events 
P - Perl programming and use Q - General programming subjects 
R - Ruby programming and use S - Databases / the MySQL database 
T - Tcl, Tcl/Tk, wish and Expect U - Lua programming and use 
W - Web site programming / techniques Y - Python programming and use 
Z - Miscellany end - end of page

M: Well House Manor; hotel and events

Subject M100 - Introduction to Well House Manor
[2425] Weekend and Christmas Promotion - Well House Manor Hotel, Melksham
[2125] We have lost a regular business guest
[2119] Make your business a DESTINATION business
[2076] A New Advert for Well House Manor
[1975] Well House Manor Hotel - on plan for 2009 business guests
[1968] Review of 2008
[1866] What a difference a day made
[1706] The Story of Well House Manor
[1492] Well House Consultants Training and Hotel - 2008 news
[1388] Well House Manor - a year on
[1384] An email update for past guests and delegates
[1371] Hotel in Melksham at Christmas
[1332] Melksham Hotel - Five Star Kitchen!
[1261] High summer at Well House Manor
[1211] A lot has happened in a year
[1132] Well House Manor, Melksham, Art Gallery
[1112] Bank Holiday country breaks in Melksham, Wiltshire
[1072] Well House Manor in the Snow
[1069] Rail trouble forced me to buy hotel
[1018] Open Source Courses and Business Hotel - products and prices for 2007
[1002] Meet the neighbours
[978] Wellhouse Manor, Hotel, Melksham
[940] Winter at Well House Manor - Open Houses
[902] Brand new hotel and training centre, Melksham
[891] Well House Manor Hotel, Melksham, Wiltshire
[793] The Wilts and Berks Canal
[756] Seeing the bricks for the trees
[677] Sympathetic development
[571] Well House Manor
[512] Exciting futures - the Well House Manor project

Subject M101 - Business Accommodation in Melksham
[2581] Snow scenes - and how snow effected our business
[2558] Happy new decade - and course and hotel prices for 2010
[2024] Carry on Training - in spite of the weather
[1929] 2009 - Hotel, Meeting, Training Course prices
[1907] Melksham Hotel Rates
[1824] Which is your best hotel room?
[1808] We love children ... but our hotel is not going to be their scene
[1748] Hotel room prices - Melksham, Wiltshire
[1701] Training Course and Business Conference Technology
[1676] A warm welcome for visitors from the USA
[1520] Terms and Conditions - Hotel, England - plain English
[1318] Well House Manor - feature comparison against the old place!
[1164] Grand Central Station
[1089] Playing old games
[1079] Wilts and Berks - two conference / training rooms in Melksham
[1059] Three sets of twins
[1011] Well House Manor and Beechfield House, Hotels, Melksham
[963] George Hotel and Well House Manor, Melksham
[926] Training rooms to learn Open Source programming
[902] Brand new hotel and training centre, Melksham
[889] Opening approaches!
[873] Hotel Exchange Rates
[857] Strikingly busy
[844] Hotel, Melksham, Wiltshire
[731] Hotel Technology Requirements
[721] Residential
[717] A customer service company
(article) Good places to stay in Melksham

Subject M102 - Well House Manor - booking system
[2436] Melksham Hotel Rooms - pictures
[2403] Hotel Booking Scam / Cost of calls to 070 numbers
[2377] Wiltshire / Melksham Weddings - guest accommodation
[1907] Melksham Hotel Rates
[1815] Hotel Guest Surveys
[1554] Online hotel reservations - Melksham, Wiltshire (near Bath)
[1311] What do people look for on a hotel web site?
[1084] Writing terms and conditions for conferences and other events
[864] Add to shopping cart - NO VACANCIES sign

Subject M103 - Getting to and from Well House Manor
[2634] London to and from Melksham by public transport
[2493] Melksham buses to/from Chippenham, Trowbridge, Bath, Devizes, London
[2249] Public Transport from London to Melksham, Wiltshire
[2248] Getting home from Melksham
[1802] Motorcycles welcome at Well House Manor
[1511] Buses from Well House Manor, Melksham, to Bath
[1452] Santa on the train to Melksham
[1382] First Great Western - information for customers
[1200] Training information - England, Scotland, Wales and Ireland
[952] Coming from London to Melksham by train for a course
[814] Melksham Railway Calendar 2007
(article) It's easy to get to Melksham, and there's things to do!

Subject M104 - Finding Well House Manor.
[2659] New numbers, as 01225 707126 and 01225 709638 are being retired
[1802] Motorcycles welcome at Well House Manor
[1311] What do people look for on a hotel web site?
[933] Course Joining package - updated
[555] Hotel novelties

Subject M105 - Where to eat
[2593] Food and drink launch
[2584] Melksham Food and Drink Festival, 2010
[2239] Cornerstone Cafe, Melksham
[1957] Why are cooks bad tempered?
[1843] How many cups of coffee?
[1359] Little Gems but not Lettuce
[1332] Melksham Hotel - Five Star Kitchen!
[1329] Subway Restaurant in Melksham, Wiltshire
[1226] Melksham Art Cafe

Subject M106 - We suggest these local businesses
[2591] Melksham Hotel, B and B or business accommodation?
[2027] Who sticks by you in the snow?
[2021] Short health and safety course
[1894] Shopping in Melksham
[1883] Spa Road Garage and Convenience Store, Melksham
[1655] A date for your diary - 16th July 2008
[1559] Calling on Melksham / Trowbridge / Devizes / Chippenham businesses
[1394] Business to Business Networking - North and West Wilts / Melksham
[1257] Data cabling (Cat 5e), Melksham, Wiltshire
[1253] Key new contacts
[1250] Business speed networking - a place tonight!
[1223] Asda opening large new store in Melksham
[1208] Meet other local businesses in Melksham
[1085] Lawrence Webb's Melksham Taxi service
[894] Where quality costs less
[851] Emergency First Aid Training
[315] Supporting local business
(article) Solution Centre - all article listing
(article) Solution Centre - all article listing

Subject M149 - Well House Manor - FAQ
[2352] Printed Directories - the start of the updating season
[2014] First Class
[1809] Coming home tonight
[1683] Plenty of car parking at Well House Manor, Hotel, Melksham
[1263] 0800 043 8225 - a new phone number for Well House
[820] Robert and William Whitworth
[617] Easy, Free, Reliable internet access
(article) Good places to stay in Melksham

Subject M150 - For users of Well House Manor.
[2660] One number for Well House - 01225 708225
[2590] A healthy, local breakfast in Melksham
[2307] Breakfast in Mexico
[2253] Walks in and around Melksham, Wiltshire
[1290] Badges, Breakfasts and Trigger
[582] DWIM and AWWO
(article) Creating Really Memorable Experiences

Subject M151 - Conference Facilities
[2663] Improve your PHP on a weekend away
[2068] Playing Catchup
[1942] Christmas scenes and events
[1929] 2009 - Hotel, Meeting, Training Course prices
[1701] Training Course and Business Conference Technology
[1683] Plenty of car parking at Well House Manor, Hotel, Melksham
[1264] Business events in Melksham
[1255] Interviewing job candidates in Melksham
[1227] Melksham businesses - networking together
[1211] A lot has happened in a year
[1100] Wondering where I have been
[998] The year of the exploding projector

Subject M152 - Hotel Facilities
[2559] Moving the product forward - ours, and MySQL, Perl, PHP and Python too
[2490] Friendly Hotel in Melksham, near Bath
[2424] A Winter Weekend Special at Well House Manor
[2303] Turning potential customers away
[2216] Past Delegate Offer - Summer Holiday / Weekend Break
[2076] A New Advert for Well House Manor
[1328] Oliver says ....

Subject M153 - Training Facilities
[2538] Open Source Training Centre and Courses for 2010
[2537] Faster network, but not faster browsing until ...
[1227] Melksham businesses - networking together
[379] Getting the lighting right

Subject M160 - Environmental
[2253] Walks in and around Melksham, Wiltshire
[1800] Spiders Web
[1499] Climate change, renewable resources and paper v plastic

Subject M161 - Gardens at Well House Manor
[1786] Picturing the rain
[1683] Plenty of car parking at Well House Manor, Hotel, Melksham
[1196] The last tree to leaf
[1142] Planters in the Spring
[707] A story of goldfish

Subject M162 - Disabled Facilities
[876] Making pages clearer - easy Disability Discrimination Act Compliance
[654] Making use of disabled facilities
[252] A West End show

Subject M200 - Wiltshire
[2594] Melksham Area - your community view is sought
[2411] Further North - long summer days and lovely countryside
[2288] Wiltshire Community Area Partnerships
[2279] Understanding the new local government structure in Wiltshire
[2176] Balloon Journey in Wiltshire
[2128] Wiltshire - where everybody matters
[1981] Bitter cold
[1859] Wiltshire at dawn - the tourist trail
[1521] Evening drive across the roof of Wiltshire
[1428] Travel Across Wiltshire - the game
[1399] Pictures Framed
[1382] First Great Western - information for customers
[1156] Two by One by Wiltshire
[1129] Golfing, Wiltshire (near Melksham)
[1112] Bank Holiday country breaks in Melksham, Wiltshire
[1106] Spring Pictures
[971] Wiltshire letterboxes
[946] Look around this mouth.
[942] Index of Pictures
[829] Where to go within 30 minutes of Melksham
{osmap.tk} Draw a Tk Canvas using Ordnance Survey data
{tracks.txt} OS data for Wiltshire Public Transport
{game01.php} Choosing start and end points for a game

Subject M201 - Around Melksham, Wiltshire
[2665] Early Spring walk in Melksham
[2585] Consultation in Melksham, on Melkshams future
[2528] Melksham Christmas Lights
[2497] Brown horses in Melksham
[2480] Pantomimes around Melksham - 2009/2010 season
[2349] Businesses effected by road works in Melksham
[2329] Great to be in Melksham
[2297] Standing on the corner, Melksham Carnival
[2262] History is not always pretty
[2253] Walks in and around Melksham, Wiltshire
[2175] Melksham in pictures
[2168] In honour of the photograph, I present ... a walk from Reybridge to Lacock
[2142] Riverside Development
[2066] Melksham Industrial
[2064] East of Melksham Countryside
[2043] Confidence, Customer Service and Tourism in Melksham
[2008] The Month Ahead - What is happening in Melksham
[1986] Walk to Bowerhill
[1977] Going round the block
[1928] Melksham Oak Secondary School, Melksham, Wiltshire
[1451] More PHP sample and demonstration programs
[1436] A little touring help during a business trip to England
[1368] Getting the local voice heard
[1360] Asda in Melksham - Welcome or not?
[1343] Melksham Laundrette
[1341] Moving to Melksham? Househunting map.
[1330] While waiting for Melksham Post Office
[1271] Till the cows come home
[1266] Party in the Park
[1206] Where and When - can you place the picture?
[1177] Sorting out for a site map
[1137] Wiltshire Circles
[1117] Newport Male Voice Choir
[977] Melksham and Norwich
[957] Improving the historic town of Melksham