« February 2007 | Main | April 2007 »

March 31, 2007

MacFormat - Me and My Mac

Newly published! Rush out to the new stands for issue 181 of Mac Format - dated May 2007 but out really early. And see "Me and My Mac" on page 14.

It's "me" as in Lisa, who runs virtually our whole admin office - from course bookings and confirmation to invoices, via faxes and the answer phone - from her Mac. And add on to that the more regular applications - Photoshop and FrameMaker, inDesign and all the other graphic art packages, you'll see how much we rely on the OSX systems. And at the end of the day, you'll hear the quality sound from those speakers as the systems turn into multimedia centres.

Posted by gje at 10:37 AM | Comments (0)


Related topics: via article database
More about Graham Ellis of Well House Consultants

Train service - petititon reply

Yesterday evening, I received a reply to my petition for the provision of an appropriate train service on local and regional routes in our part of the country.

You recently signed a petition asking the Prime Minister to:

"provide a reliable train service with adequate capacity at times that travellers wish to make journeys from Swindon to Westbury, Bristol to Severn Beach, Portsmouth and Weymouth to Cardiff, Taunton to Cheltenham, Swindon to Cheltenham. This includes all intermediate stations and journeys in both directions."

The Prime Minister's Office has responded to that petition and you can view it here:
http://www.number-10.gov.uk/output/Page11394.asp

Prime Minister's Office

Petition info: http://petitions.pm.gov.uk/wessextrains/

Sadly, but not surprisingly, the Government has stuck by its old (outdated, based on what turned out to be incorrect data) specification for service such as ours through Melksham. The have placed blame for reliability and capacity issues on the service operator (there is an element of truth in that) and they have ignored the points that related to providing services at appropriate times for travellers.

So the trains from Swindon to Melksham still leave at 06:19 and 18:42 when it would be much better for everyone if they left at 08:30 and 17:45. And they return there at 07:44 and 20:15 when it would be so much better for everyone if they got there at 08:15 and 17:30.

Posted by gje at 08:15 AM | Comments (0)


Related topics: via article database

March 30, 2007

mysqldump and mysqlrestore

It is vital that you back up your data ... and if you hold your data in a MySQL database, then the mysqldump utility will do the job admirably for you.

It is equally vital that you can restore the data from backup if (heaven forbid) you need to do so ... and yet there is not a mysqlrestore utility.

Why so? How do I restore dumped data?

Mysqldump saves data in the form of SQL commands which can be typed in to the mysqlclient program .... and tha program supports a source command which allows the user to bring in the data from a named file.

Want to see an example? Let's use MySQLDump and MySQL to dump a database (called imageapp) from one server (called liveserver) and restore it, inder a new name (imgappcopy), on another server (devserver):
mysqldump -hliveserver -uroot -p imageapp > images.sql
mysql -hdevserver -uroot -p
create database imgappcopy;
use imgappcopy;
source images.sql

Posted by gje at 02:55 PM | Comments (0)


Related topics: via article database

Useful link: MySQL training

Hotel - online feedback forms compared

When I'm travelling, I often stay at Travel Inn and Travel Lodge hotels overnight. I know I can book easily, check in late and be pretty sure of the room I'm getting at either chain.

Both companies follow up a day or two later with an online review which I'm happy to complete. I've just "done" Dundee (Travel Inn) and Aberdeen (Travel Lodge) and it was instructive to see how - even in their reviews - the chains differ.

Travel Inn's review is several pages long, and asks a number of questions the answers to which as a hotel operator I would find useful and constructive. I can rank a number of the facilities and I'm sure that with dozens or hundreds of responses a "shape" should be seen in the reviews which would point me to the strong and weak points of each hotel. The absolute values given by individuals for each category are less useful - there are people who tend to mark high, and people who tend to mark low - we know that from our course reviews (but perhaps Travel Inn have a 'trigger' question such as we do which tells them whether or not the review is, overall, satisfactory).

Travel Lodge just ask "Would you recommend TraveLodge to a friend or colleague" with a ranking scale from 1 (extremely unlikely) to 10 (extremely likely). I find myself looking at the questions and thinking that the answers they get won't give insight into any problems (they do have a "comment" box you may use, to be fair). I'm sorry, TraveLodge, but based on my recent stay I'm going to give you a low ranking. It's honest - for several reasons my stay at Aberdeen Bucksburn was something of a turnoff from TraveLodge, which is what they want to know. But I don't think they want to know why.

Oh - did YOU want to know why?

They have a major litter and upkeep problem in their carpark. I was greeted by an area that looked like the field next to the council waste dump after a storm, or the car park at McDonald's before the first clean sweep on a Sunday morning after a raucous Saturday night. Truly disgusting. And the fencing to the area was broken down ... much of the rubbish clearly old. I feared for the security of my car and took care to park in what I felt was a safer spot.

"Look, you're not paying very much so you don't get those little extras" shouts the hotel. Just one towel, limited soap, no ability to access broadband on site, etc. And the checking gent has more the attitude of a guard than a receptionist. For a cheap night, all this is fair enough ... but there's a bit of an irony. I paid 47 pound for the night in the Dundee Travel Inn that I would thoroughly recommend ... and I paid 55 pounds and got less - MUCH less - in Aberdeen.

I started off by saying that I use Travel Inn and Travel Lodge - yet I appear to have contrasted them utterly there. Why do I use them both, then? Travel Inns are often full when I book at the last minute, and there are a few holes in coverage (Cambridge, for example!). But I know that I can usually get in at a Travel Lodge at the last minute and, when all is said and done, it's a clean bed, a bathroom and (personally) I don't have trouble sleeping directly under the flightpath out of Aberdeen Airport.

The views expressed in this post are my personal views, experience and conclusions.

{b}Added a few minutes later[/b] It's 30th March, and when I completed the form (offering a link to the above entry in case Travel Lodge want to read it and perhaps comment) , I was informed:

STOP PRESS Thousands of extra £26 rooms on Fridays and Sundays just added. Available to book from 8th February for room stays between 2nd March and 25th March 2007. Hurry must end 18th March.

Not bad ... the offer only closed over 10 days ago ... "Dentist Waiting Room Syndrome" again!

Posted by gje at 07:04 AM | Comments (0)


Related topics: via article database

March 29, 2007

Sharing the load with Apache httpd and perhaps Tomcat

"Can you show us how to share the load of a web site between various servers" is one of the question that comes up quite often on the more advanced web server configuration courses that we run. And, yes, I can, but I'll probably ask you a lot of extra questions about exactly how you want to load balance first.

At one extreme, you can set up your web site so that certain requests - perhaps to all the URLs within one group of directories get forwarder to one server, and other request (from other directory groups) get forwarded to other servers. Using Apache httpd's mod_proxy this forwarding is easy to set up, but it does rely, essentially, on a manual assignment of traffic for different site areas to different servers, and it's not in itself going to dynamically adjust.

At the other extreme, if you run a Tomcat Cluster then you can send requests to any one of the cluster members and they'll handle those requests, even continuing sessions that have been started on other cluster members - but the price is high in terms of network traffic beweeen cluster members - indeed it's unnecessarily so for most applications.

A sensible compromise is to use Apache httpd's mod_rewrite to forward initial requests to a server selected at random from a list, but then to identify subsequent requests that are a part of the same session and forward them to the same server. In other words, a new visitor's initial contact is made with the next available agent, but once the connection has been established that visitor will keep coming back to the same agent. This approach allows a series of requests to be made throughout the domain (which the first solution did NOT allow), but avoids the need for every agent to keep every agent informed of each intermediate step in each transaction in case the visitor comes back to a different server next time.

As from Apache 2.2, there's an extra (and even better and more flexible tool) to share the load on a "per session" basis. mod_proxy_balancer allows the user to configure a number of servers to accept forwarded load, spreading the load evenly between each server based on the number of requests made of each, OR on the traffic each is generating. It's improved on mod_rewrite in that the forwarding is scientifically calculated rather than random, and so mod_proxy_balancer makes self-tuning adjustments and reduced the forwards to busy servers if it need to - if, for example, one particular session is burning up disproportional resources. mod_proxy_balancer can even be told that different servers have different available resources, and so the forwarding doesn't have to be equal.

Other capabilities of mod_proxy_balancer include robustness features such as server time outs and addbacks in the event of servers going off line and coming back on, and hot swap and standby system capabilities so that load can be taken over by a backup system if the main systems fails. mod_proxy_balancer is an Apache httpd module; traffic can be forwarded to other instances of httpd (as you would do if you were balancing a language such as PHP) or Tomcat (if you were balancing Java).

We do not offer a specific public web server balancing course - but we're familiar with these technologies and we can cover them as appropriate (and with practicals) during private courses. Please get in touch if you would like such training - even with just one or two delegates, we do have ways and means of training you cost effectively!

Posted by gje at 05:25 PM | Comments (0)


Related topics: via article database

March 28, 2007

1200 miles in 3 days

From Sunday lunchtime to Wednesday lunchtime, from Melksham to Melksham via Aberdeen with a two day course presented in the North of the city - that's three hotels sampled, six delegates who now know their httpds from their Tomcats, and can choose between mod_jk, mod_proxy, mod_rewrite and others from a position of knowledge. And it's another 1200 miles on the clock too.

I have to admit - I'm glad that we've set a minimum course duration for private on site courses of 2 days now - not that this material could have been covered in one day. But a two day course lets us offer a realistic, easy pricing model where we don't have to start adding in travel time costs. Allowing us to service some of the more distant part of our markets (I've given courses in Stirling, Aberdeen and Invernedd in the last 6 mouths) on the same set of ground rules that we use for closer courses such as Swindon and Wycombe.

Posted by gje at 05:16 PM | Comments (0)


Related topics: via article database

March 26, 2007

The Last Word on the road

"The Last Word". When I first heard the Radio program that talked about people who have passed away recently, I felt it was a bit macabre ... but then I found myself learning a lot about some remarkable people. It helped, then, pass a long journey between Melksham and Inverness. Ironically, I came across the show a second time yesterday as I drove from Melksham to Aberdeen ...

Arthur Marshall, son of one of the pioneers of Aviation who ran Marshalls of Cambridge for many years, passed away recently. Responsible for the droopnose of Concorde, and for in flight refuelling of the Hercules (designed and fitted in 17 days at the start of the Falkland conflict) the company has a remarkable history and Sir Arthur, who passed away at 103, had a huge reputation as a workaholic. It's said, though, that Sunday lunch with the family was always important ... so they went to his office for lunch.

Chris Lightfoot, one of the men behind the "My Society" website, and the petition software that we used on the PM's site for our train petition, passed away last month too at just 28. Another enthusiast for learning and for what he did, he'll be sorely missed.

Posted by gje at 06:51 AM | Comments (0)


Related topics: via article database

March 25, 2007

Origin of Jack and Jill and little Jack Horner

Have you come across the nursery rhymes "Jack and Jill went up the Hill" and "Little Jack Horner sat in the Corner"? Both of them originate from stories and local characters just a few miles from where we live, in the Somerset villages of Mells and Kilmersdon - Villages between the ex-coal town of Radstock and Frome.


Kilmersdon has made a great deal of its connection with Jack and Jill, with a well signposted path to the Hill, and with the rhyme set in stones as you climb the hill. The well at the top, set in the school grounds, looks back over the hill and interpretation boards tell you what's known of the history of the story. And I'm glad to report that the hill is now tarmaced, so there's little danger of any modern day Jacks and Jills meeting with similar fatal accidents.


By contrast, Mells has just a single building to commemorate Jack (really Mark) Horner. Perhaps we was a bit of a 'Jack the lad' - that's why they think he's called Jack - and the village isn't too sure if it likes the association and the visitors that more publicity might bring in. It's certainly a quiet and sleepy little place.

Correction - it may be that "Jack Horner" was John Horner (Sir John Horner, 28th December 1842 -31st March 1927) who is buried in the churchyard. Mark was his short-lived son ....

Posted by gje at 08:53 AM | Comments (0)


Related topics: via article database

March 24, 2007

Newport Male Voice Choir

The Newport Male Voice Choir came by coach to Melksham last night, and sang at the Mayor's reception - an annual event at the assembly hall, this year raising money for Alzheimer's Charities.

Watching the singers on the stage, I couldn't help noticing the wide range of facial expressions - some singers scarcely opening their mouths, and others highly animated. I *think* I could make out some of the individuals in the singing - associate the mouthing with the sounds ... but really I can't be sure. And perhaps that's how it's supposed to be with Choral singers.

I don't know what the "collective" is for a group of Mayors. Is it a "school", a "crowd", a "flock" or a "quorum"? But anyway, there were current "chains" all over the room - mayors and mayoresses from all the neighbouring towns (well - either that or some people with some very odd jewellery senses) and many former mayors of Melksham too - at one point three of them gathered round our table. I have to admit to not being terribly good with names - "who was that" I whispered to Lisa on a couple of occasions after someone had addressed me by name. And it was councillor this or that. Ooops!

Of course, you can't shut a Welshman with a pint of Guinness up so after the two halves of the program, and a brief trip to the bar, the choir helped finish up the food .... and gave their choral thanks through another medley of numbers. I have to admire their obvious joy in singing, and their dedication in coming over to Melksham - as a large group - to entertain us through the evening. Thank you, the Newport Male Voice Choir.

Posted by gje at 08:56 AM | Comments (0)


Related topics: via article database

March 23, 2007

PHP adding arrays / summing arrays

A question from my mailbox, answered in relation to our hotel. "I have a number of arrays in PHP and I want to add the elements of the arrays together". "There doesn't appear to be an array_sum function".

So in other words, my correspondent may have room occupancy data such as:

$bed1 = array(2,2,2,0,2,0,0);
$bed2 = array(1,1,1,1,1,0,0);
$bed3 = array(1,1,1,0,0,2,2);
$bed4 = array(0,0,0,0,0,0,0);
$bed5 = array(1,1,1,1,1,2,2);

and want to produce a report showing the nightly occupancy - perhaps to know how many breakfasts to prepare. What about

for ($k=0; $k<7; $k++) {
$occupancy[$k] = $bed1[$k]+$bed2[$k]+$bed3[$k]
+$bed4[$k]+$bed5[$k];
}

That code is horrid - it works with our 5 room place, but when we grow to 50 rooms ....

A good solution is to keep the data in an array of arrays - the "1", "2", "3" and so on in the variable names really should itself be a variable / subscript so that the summing can be done with a loop of loops:

$full = array($bed1,$bed2,$bed3,$bed4,$bed5);

combines the bedrooms and the the code to sum looks like:

for ($k=0; $k<7; $k++) {
$sm = 0;
for ($j=0; $j<count($full); $j++) {
$sm += $full[$j][$k];
}
$ot[$k] = $sm;
}

Which is slightly longer for my 5 rooms, but much MUCH shorter once we expand!

(See full source code here and run it here)

Posted by gje at 11:17 PM | Comments (0)


Related topics: via article database

Useful link: PHP training

March 22, 2007

Unexpected visitors to our site

Overnight, I received an email from someone how came to our site for a most unusual reason ...

"I wonder if you can help me. I have recently started receiving dozens of bizarre emails such as the one below. When I Googled some of the sentences, such as, “To put the top hat on it, he quickly assembled a committee ....” I keep coming up with your blog."

My correspondent went on to ask for my help in getting these emails that she was receiving stopped - erroneously considering that we have some control over them. But that assumption is common enough, so let me share my explanation of what's going on here:

People who send spam don't want it to get stopped by your automated email filters, so they make each of their messages different and unrecognisable by cutting in pieces of text taken at random from other web site with which they have no association at all. So the spam reaches you because it's unique - it has text on it that's been stolen (as it's my copyright and used without my approval) from my site.

I would love to be able to stop these people using my text, but that's pretty impractical ... the best I can do is to answer occasional emails that I get like this and help you understand what is happening. Once your email address is on the list of such people, I fear you'll need to get rid of it with improved filters (ask your ISP if you need help) as requests to delete your name will be pretty ineffective.

Posted by gje at 11:41 AM | Comments (0)


Related topics: via article database

March 21, 2007

PHP Image upload script

"How do I upload an image to my server?" That's a common question and I have provided many answers before ... but today I wrote a very simple script that shows just the pertinent points of uploading an image.

<?php
if ($_REQUEST[completed] == 1) {
$newname = uniqid("whc").".jpg";
move_uploaded_file($_FILES['mailfile']['tmp_name'],
"../robdemo/$newname");
} ?>
<html>
<head><title>Upload page</title></head>
<body><h1>Image Uploader</h1>
<?php if ($_REQUEST[completed] != 1) { ?>
<b>Please upload an image</b><br>
<form enctype=multipart/form-data method=post>
<input type=hidden name=MAX_FILE_SIZE value=1500000>
<input type=hidden name=completed value=1>
Choose file to send: <input type=file name=mailfile> and
<input type=submit></form>
<?php } else { ?>
<b>Yum, Yum. I enjoyed that</b>
<?php } ?>
<hr>
Copyright, etc
</body></html>

What do you need to note?

1. The upload directory needs to exist and have appropriate write permissions
2. The form needs an enctype tag
3. You may need to set up the temporary directory if your server is running Windows

Also note that I've simply given each uploaded file a unique name - I haven't in this example provided any way to actually get at the data that's been placed on the server. And I've doing nothing to stop my user from uploading pictures that are too large or inappropriate for my site either. It's just a simple script to show you the principles.

Posted by gje at 07:31 PM | Comments (0)


Related topics: via article database

Useful link: PHP training

March 20, 2007

File and URL reading in PHP

In PHP, we say "there's a function to do that" as the answer to almost any question is going to be in the form of a function name, or a list of functions, to call. And PHP has more functions than almost any other language, making it more flexible than most.

Take file handling ... where in so many other languages you have just got open, read and close type constructs whereas in PHP you have those same constructs plus a whole lot of others

file lets you read the whole contents of a file into an array
fgetcsv lets you read a file line by line and break in into an array of tokens
file_get_contents lets you read the whole of a file into a string.

Impressive range already? Then remember that you can also give an URL as the first parameter when you open a file ... and that way the same set of functions allow you to read from another web page ....

Posted by gje at 11:43 PM | Comments (0)


Related topics: via article database

Useful link: PHP training

March 17, 2007

Bank Holiday country breaks in Melksham, Wiltshire

Had a busy few months since Christmas? Fancy a relaxing long weekend break in one of the most beautiful counties in Southern England, staying in a luxury room in a quiet private hotel?

Regular readers and delegates on our courses may already have read a lot about Well House Manor in Melksham, but did you know that we're open at weekends too, offering an elegant base for couples who want to see nearby attractions such as Lacock, Longleat, Holt, Bath and Bowood.

BANK HOLIDAY SPECIAL - our rooms will be available "3 nights for the price of 2" - that's 141.00 per room, including continental breakfast and all the other usual facilities.

Easter - arrive on Thursday 5th, Friday 6th or Saturday 7th April.

Mayday holiday - arrive on Friday 4th or Saturday 5th May.
Edit - 12th April. FULLY BOOKED for arrival on 4th May, but we do have some availability remaining for arrival on 5th

Spring Bank Holiday - arrive on Friday 25th or Saturday 26th May.

Accommodation is limited - please email us to make a booking. Let us know if you prefer double or twin, bath or shower ... or if you've stayed before, ask for your favourite room.

Lacock, at the southern tip of the Cotswolds, is just 5 miles away. Lacock Abbey, a monastery dissolved by Henry VIII was later the home of Fox Talbot, who took his first reversal process photograph there of the Abbey window. These days, virtually the whole village is owned by the National Trust and a visit there is a worthwhile trip back in time

The town of Devizes is about 6 miles from Melksham. The Kennet and Avon Canal climbs from the valley of the river Avon to Pewsey Vale at Devizes, with this magnificent set of locks rising up Cane Hill. The town centre itself has quaint alleyways, historic buildings and a selection of interesting shops. And don't miss either the Devizes Museum or the Canal museum at the Wharfside.

There's many a fine walk to be taken on the Marlborough Downs, rising just beyon Devizes and continuing for many miles. Heathland, pastures, and bluebell woods. The ancient Offa's Dyke, Silbury Hill, White Horses cut in the chalk and (as shown in this picture) the stone avenue and circle at Avebury - older and larger than the more famous Stonehenge.

Just three miles from Melksham, at Holt, are "The Courts" - another National Trust property where you can spend happy hours exploring from formal gardens to Arboretum. Great Chalfield Manor, a 15th Century Manor House, is another National Trust property that's close by.

And don't dismiss Melksham itself! It's a bustling market town, dating back to medieval times when it was a milk and wool centre. In Regency times, Melksham was projected to expand into a Spa town like Bath (12 miles away) and a number of grand Lodging houses such as the one you see picture here were built. Today, you'll find charming riverside walks, with nature reserve, old churchyard and more ... and vistas. Streets where lovely old buildings mix with more modern, where you can look at the old buildings such as the roundhouse used for wool drying and the masonic hall one minutes, then be shopping in Boots or Woolies the next.

Posted by gje at 02:51 PM | Comments (0)


Related topics: via article database

March 16, 2007

Training in Lua

I'm always keeping my ears and eyes open for up and coming languages, and earlier this week the subject of lua came up. Lua is a procedural programming language, written as long ago as 1993, which has gained a degree of popularity of late. It's written in a subset of ANSI C and C++ to give it maximum portability, and it's implemented very much in the same way that Tcl is as a library which can be built into C applications.

As seems to be inevitable when a new language comes up, people tend to turn to me and say "do you offer training in ...". No, we don't have a course on Lua - but - I came back sufficiently interested to have a look at the language and what it can do. The language looks good, the technical spec well worked through, the language loaded easily onto my system. But - so far - I've not found too many easy get-going tutorials or simple examples. Which does tend to point to Lua as a prime candidate for our attention and if anyone would like to spend a couple of days having me explore it with them, to our mutual benefit, they would be pushing on an open door.

If you wonder, "Lua" means moon in Portuguese ... and the origin of the language is from Brazil.

Posted by gje at 05:21 PM | Comments (0)


Related topics: via article database

Useful link: Lua training

March 15, 2007

Python - two different splits

In Python, there are two different split methods you can use to break up a string into a number of substrings, based on a particular separator. If you know exactly what character(s) your separator will be - e.g. exactly one space - the you can use the method in the string class. By if your separator is less well defined - e.g. if it's one or more space characters - then you'll want to use the split within the re class.

import re
space = re.compile(r'\s+')
data ="Perl Python PHP Prolog Pascal"
langs = data.split(" ")
print langs
langs = space.split(data)
print langs

How does that run?

['Perl', 'Python', '', '', 'PHP', 'Prolog\tPascal']
['Perl', 'Python', 'PHP', 'Prolog', 'Pascal']

The first split looks fairly poor - we've split at single space characters BUT the input string had multiple spaces in one place, and a tab in another

The second split - on a regular expression "one or more white space characters" worked much better, and is typically what you might use for data that was user entered or user edited.

Posted by gje at 05:53 PM | Comments (0)


Related topics: via article database

Useful link: Python training

False imprisonment - a contrast from the news

Two items of news struck me yesterday as I fought my way home through horrendous traffic from Cambridge.

I was delighted to learn that the five British diplomats who had been kidnapped in Ethiopia had been released, and were fit and well - there remains, though, a concern for the 8 local people kidnapped with them.

Another false imprisonment story is that of Michael and Vincent Hickie, and others, jailed and held for 19 years for a 1978 murder in a gross miscarriage of justice. Although they were released in 1997, the story made the headlines again yesterday as the two of them have just lost their case against what is, in effect, a bill for 19 years of board and lodgings to be docked from their compensation.

If Michael and Vincent have to pay for their accommodation when they were held against their will, are all reasonable steps being taken to also ensure that the five British diplomats make appropriate payments to their captors in the Afar / Eritrean region?

Posted by gje at 11:39 AM | Comments (0)


Related topics: via article database

March 14, 2007

Express service

"Express" shouts the marketing material for the place I'm staying in for a couple of days in Cambridge, and even though I'm close to being laid up there with the flu, I thought I would nip down for a quite bite last night in the bar/restaurant; I needed food, and they're in a remote spot far from anywhere so they have something of a captive audience. A menu with just five, simple, main courses (pie and chips, chicken tikka massalla, fish and chips ..) also kinda implies that it's going to be cheap and cheerful.

Perhaps I should have worried when it took them five minutes to get my order in through the till; a new recruit has to be trained, for sure, but to have been asked not just twice but three times to repeat my order ("a fish and chips") should have set warning bells ringing.

I was glad of the morning newspapers to read as I waited, and I learnt of life in Cambridge - from yesterday's latest road casualty through the letters column praising addenbrooke's hospital through to the soccer woes of Cambridge united.

Moving on from the Cambridge News, the Independent carried a comparison of the three political parties and their green credentials, and much more; I did "skim read" as I really wasn't feeling academically bright.

Then I re-read the menu, and examined my bar chit to see how long I had been waiting. The table beside me was occupied by a couple of businessmen who had arrived after me, and who were served in front. And just as I was about to stand in line at the bar and chase, my food arrived ... 40 minutes from completion of the order.

We tend to look at "customer service" these days, and put ourselves in the shoes of the customer. I feel that the hotel operator hereabouts should do so, and take especial care to serve people on their own promptly. Actually, I rather suspect they knew they had a problem - no apology of course, but neither did anyone come round as they should in a good restaurant and check that everything was OK a few minutes after I had started. Oh yes - they knew that there service was anything but "Express".

Posted by gje at 08:30 AM | Comments (0)


Related topics: via article database

March 13, 2007

Weekend Visitors

Over the weekend, I was at "The Manor" for a while each day, door open for people to walk in. And I'm delighted to say that people know that we're a hotel, they do walk up, and they do walk in. Gone is the forbidding 8 foot wall which used to block the property in. And I delight in the variety of people we meet.

On Saturday, a young gentleman came by ... he's getting married in a couple of months in the town, and was looking for a room "with a fourposter" for the night before he and his bride head off on honeymoon. He had a look around and decided that, although there's not a fourposter in the place, one of our more romantic rooms is ideal.

On Sunday, a chap dropped in looking for casual work. I've nothing to offer, but had a good chat with him - I thought he looked familiar and indeed he was telling me that he used to be homeless in Bath but now had a place in Melksham. Been through some tough times, as described to me, but now fighting and clawing his was back up life's ladder putting demons such as drink behind him.

I don't share some of the views of "Bob" (shall we call him that?) - religion isn't my thing, and nor can I comprehend the gift of healing he says that he has. And there's a strong chance of the odd downward step again as he climbs the ladder - so even if we had something available, it would need to be offered very carefully. But I am impressed with his determination to step back up, his open-ness on the issues he faces, and I wish him well.

Posted by gje at 07:59 AM | Comments (0)


Related topics: via article database

March 11, 2007

Spring Pictures

A lovely day today ... and a first opportunity this spring to go out and take some local pictures. Can you place any of them?

1.

2.

3.

4.

Answers follow .... stop scrolling if you want to maintain the mystery for a minute.

blah blah (space filler)

And the answer are ....

No. 4 is ... Prior Park, on the outskirts of Bath

No. 3 is ... Midford, where the Someset and Dorset railway line burst out of Combe Down tunnel, passed through the halt, and turned south towards Poole. A main line, closed in 1966.

No. 2 is ... Handle House, Trowbridge - a beautiful old building constructed over the river and with plentiful ventilation to allow handles that were manufactured in the town to dry. Alas, they have trouble with pigeons these days ... I can't imagine why!

And No 1 was, of course, taken in Melksham.

Posted by gje at 08:32 PM | Comments (0)


Related topics: via article database

March 10, 2007

A week is a long time in the life of a conference centre

Looking back over the last five days, I'm astonished at the different room / settings that we've put together for events as diverse as a training course, an executive meeting, a retirement gathering, and a large public meeting.

Monday - For our "Save The Train" meeting, Theatre style, comfortable for just over 50 people.

Our smaller room, the "Berks", was used for the training course this week, as the handful of people involved would have felt they rattled around in "The Wilts".

Friday - A spacious conference setting, with 8 seats at the table, in the Wilts.

And Friday evening - set for a retirement meal in the Whitworth - our dining room. The Welsh theme was set up specially for the evening.

If you're looking for conference facilities / a training room / a setting for a special meal in Melksham, do get in touch with us at Well House Manor. We also have five double / twin rooms en-suite, available either for delegates to events at Well House Manor, or for other visitors to the town. Andrew, Claude, David, Ed, Joanne, Julie and Lee all stopped with us this week."Excellent!! - Wonderful friendly people and very comfortable surroundings" reads the most recent entry in out guest book.

Posted by gje at 02:01 PM | Comments (0)


Related topics: via article database

March 09, 2007

Drawing dynamic graphs in PHP

The web is all about presenting data, and a picture paints a thousand words - so what's better than a graph to quickly and easily present figures and trend to yor web site visitor?

There's a great deal of software available to produce static diagrams and graphs as image files - .gif or .jpg are the most common formats - and there's a lot of professional / marketing sites which that use them. But what if you want your diagrams to change as the data held on your server changes?

In PHP, the Gd package allows you to generate images on the fly - and it works very well. But those are images ("graphics") based on the pixel addressing of the image and you've still got a lot of conversion, clipping and presentation to do if you want a graph of (say) ticket sales from 2000 to 2007 along the X axis, with a vertical scale from 0 to 50,000 on Y ... when the image is 600 x 450.

That's where additional graphic packages such as Phplot come in to play ... you can specify just the data sets, a few key parameters, and the titles and the work is done for you.

There's a PHPlot example on our website, and you'll find links from that page to the PHPlot download.

Posted by gje at 07:27 PM | Comments (0)


Related topics: via article database

Useful link: PHP training

March 08, 2007

Dilton Marsh

I was up and out early this morning - to visit the station at Dilton Marsh where commuter trains were slashed last December (but not half as much as had been planned) and are threatened again from this December.

Now I'm not a poet, and I feel that the anachronisms that John Betjamin describes would be hard ON THEIR OWN to justify a station. But I sure wish he was still around to be on the team. Perhaps his ghost is - perhaps we may yet snatch a victory once again from the jaws of defeat.

I've put up more pictures on a Dilton Marsh page and I'll be supporting their cause - the same as ours across Wiltshire - for an appropriate train service.

Actually their morning service is quite good. But in the evening it is less than useful and an out-and-back service is only as strong as its weakest link. And my spies tell ne to look out for a 2/3 cut of southbound services in December. That fisherman will have to wait until 22:01 to get back from Westbury if he doesn't make it by 15:29 ... together with all the would-be-commuters in those houses. Of course, they would end up driving, wouldn't they?

Posted by gje at 03:31 PM | Comments (0)


Related topics: via article database

A Reference

I'm not normally one to blow my own trumpet, but people who book me to give a course do want to know the quality - technical and presentational - of what they're buying. So here, reprinted with permission, is a comment about me that I was cc'd on.

Good morning

Last evening I attended Graham Ellis’s meeting in Melksham and I have to write to say what an excellent presenter he is. Of course, presenting, instructing etc is what he does for a living so he ought to be good but it really was excellent, not in the least pompous and I believe Graham will be a great asset to the work of APU. I take my hat off to anyone who can fill a room to bursting, gather 17,000 signatures on a petition and hold the rapt attention of the audience in the way he did. All the right people were there, Councillors of every flavour, Leader of District Council, those who regularly commute and railway representatives. To put the top hat on it, he quickly assembled a committee drawn from those present (including councillors) who are more than happy to take things further. I would say ‘watch this space’

Regards
Marion

The Author is Marion Mortimer, Regional Chair for the Federation of Small Businesses, and currently a candidate for the National Vice Chairman Role - so herself a very skilled and professional organiser and presenter of meetings. Marion - thank you for the comments and permission to reproduce them

Posted by gje at 10:59 AM | Comments (0)


Related topics: via article database

March 07, 2007

Mushroom Curry and Perl Courses

When I first ate a chicken chop suey, in my childhood, the dish was described and explained to me to help me decide whether or not I wanted to try it. But once I have tried and decided about chicken chop suey, I could make an educated guess what beef chop suey and vegetable chop suey would be (as I already knew about beef and veg), so I really didn't need any further explanation - indeed, it would have been a waste of everyone's time to do the explaining.

It's a little bit the same on training courses. I'm running a Perl course this week, and I'm making sure that I explain one of each type of facility, with good practical sessions, before I go on to the next type of facility / concept. Once we've see a function such as cos to take a cosine, it's pretty obvious what sin and exp do. In other words, my delegates know what chicken curry is (I have told them) and they know from school what mushrooms are. So I'm letting them work out mushroom curry for themselves, and going on to talk about Nasi Goreng.

Posted by gje at 10:45 AM | Comments (0)


Related topics: via article database

Useful link: Perl training

March 06, 2007

Wondering where I have been

I "missed" yesterday ... and if you're wondering where I have been, let's have a look and see if we can find out ....


That's our presentation board for "Save the Train" - getting the story of the loss of service and the communities it served out to people.


A further presentation board? Yes, but this one's much more wordy, less glossy - clearly aimed at an audience of experts rather than newcomers to the cause. What ARE we doing with two sets of boards?


A room in preparation for a large meeting ...


.... and people gathering for that meeting.


Looks like there's something interesting going on - what are people watching?


Ah yes, I remember now - THAT's what I was preparing yesterday.

Posted by gje at 01:51 PM | Comments (0)


Related topics: via article database

March 04, 2007

Passenger flows

On the railways, I've seen so many people interested in the trains and not the travellers - they're often known as the "Gricer"s and "Anorak"s - and I've attended many meetings / seen many pictures they've taken and read many discussions. But the modern day railway is there very much for the passenger, and I was delighted to travel in busy trains yesterday (I don't really mind what class of unit, but f.y.i 3 x HST and 1 x TPE 158) that ran virtually to time.

Actually, passengers make for some lovely pictures just like the trains do!


Passenger at Taunton Station


On the train


Passengers at Bristol Temple Meads

Posted by gje at 08:56 AM | Comments (0)


Related topics: via article database

March 03, 2007

Three big events - TWSW, Business of the year and the police

The last day and a bit - some quick pictures ....


Wiltshire Business of the Year Awards, Swindon, Friday evening.

OK - I admit it - Tuxedos and big formal dinners are not my thing, so the very official award ceremony wasn't something I was looking forward to. I had guessed, realistically and as it turned out correctly, that we would be a part of the majority to leave empty-handed. But, hey, we made it to the top 4 (the nominees) out of over 100 entrants for "Small" Business of the year.

I have quoted the word small you will notice ... we were very much the minnows amongst the bigger fishes even in that category; I'm sure there wasn't anouther company there that wasn't at least three times our size, and the category winner was several times larger again ... excellent company, I just wonder at "small".


Travel Watch South West meeting - in Taunton.

An excellent place to listen to other travel campaigners (I seem to be one now!) at a meeting of the all the groups, and with public transport and local government representation too. More about this on the Save the Train web site.


The Policeman's ball.

Not quite ... the retirement party for our local community police officer, who Lisa has got to know better than I through the "Bowerhill Villager" newspaper. You'll note in the picture that Wexford the Wiltshire Police cat is sitting with me and does NOT have me under arrest for stealing his cream.

Posted by gje at 11:10 PM | Comments (0)


Related topics: via article database

March 02, 2007

Train and business balls all in the air!

A "mad" weekend coming up ... FSB meeting last night, Wiltshire Business of the year tonight, Travel Watch South West in Taunton on Saturday and our big "Save the Train" meeting on Monday. Tuxedo bought for tonight, more comfortable clothes for tomorrow, clothes for Monday not even considered yet!

I do have to report what I think could be REAL progress on the train campaign ... a draft timetable released under Freedom of Information looked good, although I undertstand it was very much a draft and other changes have been made since and it's FAR from certain. I hear whispers / suspect that politics and brinkmanship are still being played behind the scenes so goodness only knows if any final decision is a sensible one for an appropriate service, or if some twit refuses to play ball and brings the currently precarious construction work crashing down before it's even been stabilised.

It COULD work. Here's Why. But there are one or two players who seem to have their own agendas which don't mirror the aspirations and needs of the communities they should be serving and - for once - I'm going to ....

[b]Stop Press[/b] A letter just received this morning, and open copied too ... seems to put another piece of the jigsaw, and one I had concerns about, in place. Prospects improve every day.

On that happy note, I had better conclude a slightly disjointed post and promise you a follow up tomorrow evening.

Posted by gje at 08:11 AM | Comments (0)


Related topics: via article database

March 01, 2007

Sample script - FTP to get a file from within PHP

A worked example from today's course - Only the password has been changed

<?php
$conn_id = ftp_connect("www.savethetrain.org.uk");
$login_result = ftp_login($conn_id, "savethetrain", "melksham");

if ((!$conn_id) || (!$login_result)) {
echo "FTP connection has failed!";
exit;
} else {
echo "Connected";
}

// get the file
$local = fopen("local.txt","w");
$result = ftp_fget($conn_id, $local,"httpdocs/trlog.txt", FTP_BINARY);

// check upload status
if (!$result) {
echo "FTP download has failed!";
} else {
echo "Downloaded ";
}

// close the FTP stream
ftp_close($conn_id);
?>

Posted by gje at 02:41 PM | Comments (0)


Related topics: via article database

Useful link: PHP training