The Well House Newsletter - Sunday, 1st March 2009
About us and this newsletter [link] ...
Previous editions: January 2009November 2008September 2008July 2008May 2008March 2008January 2008November 2007September 2007 • or current edition

Public Transport Training from Well House Consultants And also ... Tcl, Tcl/Tk and Expect Programming in Lua Python Programming Well House Manor - Hotel and Training Centre Apache HTTP and Tomcat Servers The Perl Programming Language and its use Ruby and Ruby on Rails PHP - the language and its application C and C++ Programming Linux and Shell Programming Melksham SQL and MySQL For the Webmaster, Postmaster and moderator Java and the Java Environment Fun and Flames Running a training and hotel company Around, about and nearby to Wiltshire Client Side Languages (HTML, CSS, Javascript) Keynote Articles General Programming Topics
Keynote article ...

How to avoid duplicating web page maintainance

How do you move from a web site with a single static page to a web site with a thousand pages (URLs) without multiplying your maintainance work by a thousand? Such is the critical importance of being able to do this that there are many schemes available - many solutions - and virtually every site that's more than a single shop front window uses them. Here are some of the techniques:

Scripted Content Generation Where a program that's run whenever [part of] the web site is updated regenerates the individual static .html files.

Site Management Programs Where a static .html page is generated by a program that a content provider submits.

Style Sheets Where the look and feel that's been developed for one page is carried across many others.

Include Files Where a page is held on the server in "HTML++" - that's html with extra bits such as SSI, PHP, ASP, JSP, Mason, Rails which are interpreted by the server before it's passed to the browser allowing a single piece of content to be maintained for insertion in many pages

URL rewriting Where a whole number of apparently different static .html pages are actually served by a single page or program that produces a response based in part on the name of the page to be served.

Under the Apache httpd web server, URL rewriting is performed by mod_rewrite. See mod_rewrite for newcomers for further details of this (that's really the second part of this article)
(this article written on 2008-12-20)

Other articles ...

Apache HTTP and Tomcat Servers
[2059] Sharing the load between servers - httpd and Tomcat - (new - 2009-02-28)
[2055] Effect on server when memory runs out and swapping starts - (new - 2009-02-26)
[2054] Tuning httpd / the supermarket checkout comparison - (new - 2009-02-26)
[2039] The Invoker - (new - 2009-02-13)
[2038] Sticky Sessions with mod_jk (httpd to Tomcat) - (new - 2009-02-12)
[2016] Apache httpd and Apache Tomcat miscellany - (new - 2009-01-30)
[1994] tomcat-users.xml; what a difference a space made - (new - 2009-01-16)
[1974] Moving a directory on your web site - (new - 2009-01-03)
[1969] Search Engines. Getting the right pages seen. - (new - 2009-01-01)
Top or Show all for Apache HTTP and Tomcat Servers

C and C++ Programming
[2005] Variables and pointers and references - C and C++ - (new - 2009-01-23)
[2004] Variable Scope in C++ - (new - 2009-01-22)
[2002] New C Examples - pointers, realloc, structs and more - (new - 2009-01-20)
[1675] Comparing Objects in C++
[1674] What a lot of files! (C++ / Polymorphism demo)
Top or Show all for C and C++ Programming

Melksham
[2043] Confidence, Customer Service and Tourism in Melksham - (new - 2009-02-15)
[2015] Service Excellence Awards - (new - 2009-01-30)
[2012] The Wiltshire Police - (new - 2009-01-29)
[1997] Travelling to a course - station pickups - (new - 2009-01-16)
[1987] One Cheer for Local Democracy - Asda in Melksham - (new - 2009-01-11)
[1979] Looking forward, in Melksham, in 2009 - (new - 2009-01-05)
[1966] Background to the TransWilts Train Fiasco - (new - 2008-12-29)
Top or Show all for Melksham

Training from Well House Consultants
[2041] httpd, Tomcat and PHP course enhancements - (new - 2009-02-14)
[2032] Mobile Internet - an alternative to hotel WiFi - (new - 2009-02-09)
[1996] Advise before my Apache / Tomcat course - (new - 2009-01-16)
[1989] So sad to see you go - (new - 2009-01-12)
[1933] Learning to Program in C
Top or Show all for Training from Well House Consultants

Running a training and hotel company
[2049] Why Choose Well House Consultants for your course? - (new - 2009-02-20)
[2044] Please Trouble me - (new - 2009-02-16)
[2021] Short health and safety course - (new - 2009-02-02)
[2010] How long should a training module be? - (new - 2009-01-27)
[2007] Launch of Melksham Food and Drink Festival - (new - 2009-01-24)
[2003] Discount Training Courses - PHP, Perl, Python - (new - 2009-01-21)
[1991] Rules for a King - (new - 2009-01-13)
[1975] Well House Manor Hotel - on plan for 2009 business guests - (new - 2009-01-03)
[1973] Required Request - (new - 2009-01-03)
Top or Show all for Running a training and hotel company

Well House Manor - Hotel and Training Centre
[2014] First Class - (new - 2009-01-29)
[1968] Review of 2008 - (new - 2008-12-31)
[1929] 2009 - Hotel, Meeting, Training Course prices
[1907] Melksham Hotel Rates
[1866] What a difference a day made
Top or Show all for Well House Manor - Hotel and Training Centre

For the Webmaster, Postmaster and moderator
[2056] Web Site Loading - experiences and some solutions shared - (new - 2009-02-26)
[2052] How was my web site compromised? - (new - 2009-02-24)
[2033] Huawei D100 Wireless Router - Mobile Internet - (new - 2009-02-10)
[2019] Baby Caleb and Fortune City in your web logs? - (new - 2009-01-31)
[1993] Load Balancing - Hardware or Software? - (new - 2009-01-15)
[1984] Site24x7 prowls uninvited - (new - 2009-01-10)
[1982] Cooking bodies and URLs - (new - 2009-01-08)
[1978] From spam to mod_alias - finding resources - (new - 2009-01-05)
[1971] Telling Google which country your business trades in - (new - 2009-01-02)
[1970] Plagarism - who is copying my pages? - (new - 2009-01-02)
[1967] LinkedIn - Thrice Asked, and joined. - (new - 2008-12-30)
Top or Show all for For the Webmaster, Postmaster and moderator

General Programming Topics
[2048] Learning to program in PHP, Python, Java or Lua ... - (new - 2009-02-19)
[2022] Pre and post increment - the ++ operator - (new - 2009-02-03)
[2001] I have not programmed before, and need to learn - (new - 2009-01-19)
[1990] Speaking all the languages - (new - 2009-01-12)
[1985] Learning to program as a part of your job - (new - 2009-01-10)
[1976] Where is this IP address, IPv4 and IPv6 - (new - 2009-01-04)
[1963] Best source to learn Java (or Perl or PHP or Python) - (new - 2008-12-28)
Top or Show all for General Programming Topics

PHP - the language and its application
[2051] A Presentation about our company - web and PHP - (new - 2009-02-23)
[2046] Finding variations on a surname - (new - 2009-02-17)
[2031] Choosing from an image with an image map - (new - 2009-02-08)
[2025] Injection Attack if register_globals in on - PHP - (new - 2009-02-04)
[1995] Automated server heartbeat and health check - (new - 2009-01-16)
[1983] Keeping PHP code in database and running it - (new - 2009-01-09)
Top or Show all for PHP - the language and its application

Java and the Java Environment
[2058] Invoker and cgi servlets on Tomcat 6 - (new - 2009-02-27)
[2036] Java Tag Libraries / how they work / Tomcat Deployment - (new - 2009-02-11)
[1910] Java - Generics
[1909] javax.servlet cannot be resolved - how to solve
[1908] Java CLASSPATH explained
Top or Show all for Java and the Java Environment

Around, about and nearby to Wiltshire
[1930] Bath Christmas Market
[1859] Wiltshire at dawn - the tourist trail
[1851] Pictures from a delegate
[1846] Old Piles of the South West
[1834] Seend, near Melksham, Wiltshire
Top or Show all for Around, about and nearby to Wiltshire

The Perl Programming Language and its use
[2047] Small Web Server in Perl - (new - 2009-02-18)
[2045] Does robots.txt actually work? - (new - 2009-02-16)
[1951] Whisky - Setting and reading cookies from Perl
[1947] Perl substitute - the e modifier
[1946] Variable Types in Perl
Top or Show all for The Perl Programming Language and its use

Client Side Languages (HTML, CSS, Javascript)
[1998] Text on a background image - (new - 2009-01-16)
[1926] Flash (client) to PHP (server) - example
[1831] Text formating for HTML, with PHP
[1814] Javascript/HTML example, dynamic server monitor
[1813] Ajax - going Asyncronous and what it means
Top or Show all for Client Side Languages (HTML, CSS, Javascript)

Ruby and Ruby on Rails
[1891] Ruby to access web services
[1890] MySQL database from Ruby - an example
[1889] Ruby mixins, modules, require and include
[1887] Ruby Programming Course - Saturday and Sunday
[1875] What are exceptions - Python based answer
Top or Show all for Ruby and Ruby on Rails

SQL and MySQL
[2053] What a difference a MySQL Index made - (new - 2009-02-25)
[1935] Summary of MySQL installation on a Linux system
[1885] Hiding a MySQL database behind a web page
[1771] More HowTo diagrams - MySQL, Tomcat and Java
[1766] Diagrams to show you how - Tomcat, Java, PHP
Top or Show all for SQL and MySQL

Tcl, Tcl/Tk and Expect
[2040] Error: Cant read xxxxx: no such variable (in Tcl Tk) - (new - 2009-02-14)
[1785] What is running on your network? (tcl and expect)
[1782] Calling procs in Tcl and how it compares to Perl
[1614] When an array is not an array
[1613] Regular expression for 6 digits OR 25 digits
Top or Show all for Tcl, Tcl/Tk and Expect

Programming in Lua
[1847] Lua - IAQ (Infrequently Answered Questions)
[1845] Passing a table from Lua into C
[1844] Calling functions in C from your Lua script - a first HowTo
[1842] Lua Course, and the Wiltshire Countryside too
[1841] Formatting with a leading + / Lua and Perl
Top or Show all for Programming in Lua

Python Programming
[2020] Learning Python - many new example programs - (new - 2009-01-31)
[2018] UnboundLocalError - Python Message - (new - 2009-01-31)
[2017] Python - a truly dynamic language - (new - 2009-01-30)
[2013] wxPython - Introduction and sample - (new - 2009-01-29)
[2011] Conversion of OSI grid references to Eastings and Northings - (new - 2009-01-28)
[1925] Introduction to Object Oriented Programming
[1879] Dynamic code - Python
[1878] Pascals Triangle in Python and Java
[1876] Python Regular Expressions
[1873] List Comprehensions in Python
[1871] Optional and named parameters in Python
[1870] What to do with a huge crop of apples
[1869] Anonymous functions (lambdas) and map in Python
[1819] Calling base class constructors
[1791] The road ahead - Python 3
[1790] Sharing variables with functions, but keeping them local too - Python
[1789] Looking for a value in a list - Python
[1788] Python 2 to Python 3 / Python 3000 / Py3k
[1784] Global - Tcl, PHP, Python
[1745] Moodle, Drupal, Django (and Rails)
[1696] Saying NOT in Perl, PHP, Python, Lua ...
[1663] Python in an afternoon - a lecture for experienced programmers
[1661] Equality, sameness and identity - Python
[1644] Using a utility method to construct objects of different types - Python
[1641] Tektronix 4010 series / Python Tuples
[1608] Underlining in Perl and Python - the x and * operator in use
[1555] Advanced Python, Perl, PHP and Tcl training courses / classes
[1517] Python - formatting objects
[1477] Decisions - small ones, or big ones?
[1464] Python Script - easy examples of lots of basics
[1461] Python - input v raw input
[1448] Question on division (Java) - Also Perl, PHP, Python ...
[1442] Reading a file multiple times - file pointers
[1430] Integer v float - Python
[1375] Python v Ruby
[1348] Screw it or Glue it? Access to Object variables - a warning
[1340] Tk locks up - 100% c.p.u. on a simple program (Tcl, Perl, Python)
[1336] Ignore case in Regular Expression
[1310] Callbacks - a more complex code sandwich
[1306] Python class rattling around
[1305] Regular expressions made easy - building from components
[1304] Last elements in a Perl or Python list
[1236] Trying things in Python
[1220] for loop - how it works (Perl, PHP, Java, C, etc)
[1217] What are factory and singleton classes?
[1202] Returning multiple values from a function (Perl, PHP, Python)
[1201] No switch in Python
[1195] Regular Express Primer
[1181] Good Programming practise - where to initialise variables
[1163] A better alternative to cutting and pasting code
[1149] Turning objects into something you can store - Pickling (Python)
[1148] Python decorators - wrapping a method call in extra code
[1146] __new__ v __init__ - python constructor alternatives?
[1145] Using a list of keys and a list of values to make a dictionary in Python - zip
[1144] Python dictionary for quick look ups
[1140] Python GTK - Widget, Packing, Event and Feedback example
[1136] Buffering output - why it is done and issues raised in Tcl, Perl, Python and PHP
[1134] Function / method parameters with * and ** in Python
[1110] Python - two different splits
[1043] Sending an email from Python
[1042] Nested exceptions in Python
[1036] Python Qt, wX, TkInter, and Jython - training??
[970] String duplication - x in Perl, * in Python and Ruby
[964] Practical polymorphism in action
[959] It's the 1st, not the 1nd 1rd or 1th.
[956] Python security - trouble with input
[955] Python collections - mutable and imutable
[954] Splitting Pythons in Bradford
[950] Python and the Magic Roundabout
[949] Sludge off the mountain, and Python and PHP
[945] Code quality counts
[943] Matching within multiline strings, and ignoring case in regular expressions
[913] Python - A list of methods
[912] Recursion in Python
[909] Python is like a narrowboat
[903] Pieces of Python
[901] Python - listing out the contents of all variables
[900] Python - function v method
[899] Python - extend v append on a list
[846] Is Perl being replaced by PHP and Python?
[836] Build on what you already have with OO
[835] Python - when to use the in operator
[834] Python makes University Challenge
[831] Comparison of Object Oriented Philosophy - Python, Java, C++, Perl
[821] Dynamic functions and names - Python
[788] New - Conditional expressions in Python 2.5
[775] Do not duplicate your code
[773] Breaking bread
[753] Python 3000 - the next generation
[749] Cottage industry or production line data handling methods
[748] Getting rid of variables after you have finished with them
[745] Python modules. The distribution, The Cheese Shop and the Vaults of Parnassus.
[712] Why reinvent the wheel
[710] Linux training Glasgow, Python programming course Dundee
[672] Keeping your regular expressions simple
[668] Python - block insets help with documentation
[663] Python to MySQL
[657] The ternary operator in Python
[656] Think about your design even if you don't use full UML
[633] Copying a reference, or cloning
[629] Choosing the right language
[595] Add a friendly front end with Tk
[561] Python's Generator functions
[560] The fencepost problem
[496] Python printf
[477] Class, static and unbound variables
[463] Splitting the difference
[444] Database or Progamming - which to learn first?
[433] FTP - how to make the right transfers
[426] Robust checking of data entered by users
[418] Difference between import and from in Python
[386] What is a callback?
[383] Overloading of operators on standard objects in Python
[382] Central London Courses - Perl, PHP, Python, Tcl, MySQL
[381] Exceptions in Python
[380] Bridging to the customer requirement
[353] Wimbledon Neck
[340] Code and code maintainance efficiency
[328] Making programs easy for any user to start
[324] The backtick operator in Python and Perl
[317] Programming languages - a comparison
[316] Development Environments
[308] Call by name v call by value
[303] Lambdas in Python
[299] What - no switch or case statement?
[296] Using a Python dictionary as a holder of object attributes
[294] Python generator functions, lambdas, and iterators
[239] What and why for the epoch
[237] Crossfertilisation, PHP to Python
[236] Tapping in on resources
[235] Preparation for a day's work
[208] Examples - Gadfly, NI Number, and Tcl to C interface
[190] Python engines
[183] The elegance of Python
[114] Relative or absolute milkman
[105] Distance Learning
[103] Can't resist writing about Python
[61] Python is a fabulous language
[16] Python training
Top or Show all for Python Programming

And also ...
[2037] The Interview and The Lift - (new - 2009-02-12)
[2034] Through Snow and Flood to Linux and Tomcat - (new - 2009-02-10)
[2030] The final step to being British - (new - 2009-02-07)
[2029] Also for the eyes of the cat - (new - 2009-02-07)
[2027] Who sticks by you in the snow? - (new - 2009-02-05)
[2008] The Month Ahead - What is happening in Melksham - (new - 2009-01-25)
[2006] Contrast - (new - 2009-01-23)
[2000] 2000th article - Remember the background and basics - (new - 2009-01-18)
[1992] A good time to travel - (new - 2009-01-14)
[1981] Bitter cold - (new - 2009-01-07)
Top or Show all for And also ...

Public Transport
[2057] Train and Coach fares from London (and airports) to Melksham - (new - 2009-02-26)
[2042] Wiltshire Rail Service Update - (new - 2009-02-15)
[2026] Melksham Climate Friendly Group - (new - 2009-02-05)
[2024] Carry on Training - in spite of the weather - (new - 2009-02-03)
[1999] How low can you sink? - (new - 2009-01-17)
[1986] Walk to Bowerhill - (new - 2009-01-10)
[1965] How much does a train service actually cost - (new - 2008-12-29)
[1964] Why hasnt the fiasco been put right - (new - 2008-12-29)
Top or Show all for Public Transport

Fun and Flames
[2050] Why the Pony Tail? - (new - 2009-02-21)
[2028] Things people say on the phone - (new - 2009-02-06)
[2009] The Royal Mail Receipt - (new - 2009-01-26)
[1988] Melksham, Wiltshire. Town Crier Competition, 2009 - (new - 2009-01-11)
[1980] Michelle - (new - 2009-01-06)
[1977] Going round the block - (new - 2009-01-04)
[1972] Pettifog and forum boards away from public view - (new - 2009-01-03)
Top or Show all for Fun and Flames

Keynote Articles
[1955] How to avoid duplicating web page maintainance
[1857] November and December Public Course Schedule
[1773] The Longest Possible Day
[1414] What we teach - expained for the non-technical
[1317] 2008 course schedule - Perl, Python, PHP, Linux, Java Deployment, Ruby and more
Top or Show all for Keynote Articles

Linux and Shell Programming
[2035] 1234567890 ... coming up on Friday 13th - (new - 2009-02-11)
[2023] sw_vers - what version of OSX am I running? - (new - 2009-02-03)
[1903] daemons - what is running on my Linux server?
[1902] sstrwxrwxrwx - Unix and Linux file permissions
[1893] Some Linux and Unix tips
Top or Show all for Linux and Shell Programming

Public Transport Training from Well House Consultants And also ... Tcl, Tcl/Tk and Expect Programming in Lua Python Programming Well House Manor - Hotel and Training Centre Apache HTTP and Tomcat Servers The Perl Programming Language and its use Ruby and Ruby on Rails PHP - the language and its application C and C++ Programming Linux and Shell Programming Melksham SQL and MySQL For the Webmaster, Postmaster and moderator Java and the Java Environment Fun and Flames Running a training and hotel company Around, about and nearby to Wiltshire Client Side Languages (HTML, CSS, Javascript) Keynote Articles General Programming Topics

A little more about this newsletter ...

At Well House Consultants, we run niche IT training courses ... and we run a hotel for delegates on those courses and other visitors to Melksham too. And we make a lot of friends - have a lot of ambassadors with whom we want to keep in touch. So every day Graham (that's me, writing this piece) puts together an article or two which might include the latest sample programs that I've written during the current course, new information about Well House Manor - our business hotel, tips on search engine optimisation, announcements of upcoming public courses, pictures of local places, and even (on occasions) rants and whimsical pieces to keep those friends up to date and in touch. The feeds are available directlt via the Blog - "The Horse's Mouth", they're on our Twitter Feed and you can find me at my LinkedIn profile. But most people just want to look us up occasionally - every month or two, and then to catch up on the latest news just for their particular subjects of interest ... and that's what this newsletter is about

You'll find above the titles of ALL the new articles written in the last two months, listed by major subject area, and showing as (new) with their date of publication. You'll find additional articles in each category too - topping each category up to a minimum of five articles. And you'll find a link at the end of each section which lets you expand that section to show the titles of every article that's been published in that section. After all, "the old ones are often the best ones", aren't they?

go to Top or other editions January 2009November 2008September 2008July 2008May 2008March 2008January 2008November 2007September 2007 • or current edition


Training sample © 2025, WELL HOUSE CONSULTANTS LTD
This is http://www.wellho.net/demo/newsletter.php
Well House Manor • 48 Spa Road • Melksham, Wiltshire • United Kingdom • SN12 7NY
Phone: +44 (0) 1225 708 225 • EMAIL: info@wellho.net • WEB: http://www.wellho.net