« January 2007 | Main | March 2007 »
February 28, 2007
Apache httpd , browser, MySQL and MySQL client downloads
If you download a copy of the Apache httpd web server, does it come bundled with a browser as well?
No - it doesn't. Although you'll access your web server through a browser most of the time (or rather your USERS will) it would be pretty odd to download both pieces of software together.
and yet ....
When you download a MySQL server, it does come bundled with the MySQL client program too .... and people find this rather odd. You could well argue for two separate downloads as you'll sometimes want to put the server on one machine and the client on another but that's not how its done!
If you want to download a MySQL server onto a machine, download it, follow the install instructions in the file called INSTALL-BINARY, and you're away - you can safely ignore the MySQL program if you don't need it.
If you want just a MySQL client you can copy it from the machine you've installed the server on, or pull the whole bundle down and just use the bits you want - no need to install or start the server, for example.
Posted by gje at 03:40 PM | Comments (0)
More about Graham Ellis of Well House ConsultantsFebruary 27, 2007
PHP fread - truncated data
Note that PHP's fread function returns the number of bytes you request as the second parameter ...OR the number of remaining bytes if it's less than the number you give ... or 8192 bytes, even if there's more than that available and you've requested more.
I got caught out by this one earlier today ... felt that it was useful (re)minder to post it up here.
If you need to read more that 8k into a variable:
while ($info = fread($fh,8192)) {
$fullstuff .= $info;
}
Posted by gje at 03:21 PM | Comments (0)
Useful link: PHP training
February 25, 2007
Wiltshire Train - can YOU come on 5th March?
Incredibly, it looks like the local campaign for an appropriate train service across Wiltshire - the "transWilts" line f from Swindon via Chippenham, Melksham, Trowbridge to Westbury with links on to Warminster, from and Salisbury may actually be getting somewhere.
A draft timetable release to me by the Department for Transport shows a 2-hourly service which is rather in line with what I conculded was sensible. Ah - a sane suggestion at last. Of course, we're far from out of the woods yet - it IS just a proposal - and ironically this makes me all the busier.
PLEASE - your support would be much appreciated. A meeting of organisations, users, and others here (at Well House Manor) on Monday, 5th March - all welcome, but I would appreciate knowing numbers ahead of time - response and details page here.
If you live in Wiltshire, or Frome, PLEASE come along if you can. If you're away from the area or busy that night, please let me know of your support.
Just occasionally, a meeting comes up which CAN make a difference. I belive that this may be such a meeting and the help of EVERYONE to get the word out would be appreciated!
Posted by gje at 09:53 AM | Comments (0)
February 24, 2007
Tcl training - often for a larger group
There's a different 'metric' for courses in the different languages we teach - PHP programmers come in ones and twos much of the time, but almost all of the Tcl training we do is for larger groups of delegates, in private courses at their place of work. Why is this?
Tcl is used as an embedded element within larger systems - a bedrock on which a potentially quite complex operation in a high tech industry is run. So there aren't a lot of applications around, but those which ARE around are key to a team of people, all of whom need to be able to read / understand the scripts at least at a basic level.

And so it is that I find myself on site - in Edinburgh, Dublin, Coventry, Crawley, Bristol or (this week) High Wycombe, teaching a group of delegates far larger than I would dream of handling on a public course. A dozen people these few days leaving me, I admit, a little tired by Friday evening - but exhilarated too with a new group of friends and new knowledge of how another client uses Tcl, Expect and (in this case) Incr-Tcl.

As a footnote - why do we run larger private courses than public courses? Because on a public course - with delegates coming from different companies, with different applications of the technology and different parts of the subject they wish me to concentrate on, I need to have good time during the course to look after each and every one of a number of subtle varying requirements. And I've also got to be the fluid that oils the interaction - at least early on the course - between delegates who have never set eyes on each other before. Contract that to a private course, which starts of with me being the outsider from the group, and where everyone is looking to learn the subject with a similar slant so that they can work on the same or related projects under the same umbrella.
Posted by gje at 08:36 AM | Comments (0)
Useful link: Tcl training
The Psyche is all wrong.
I accept that I should pay - somehow - for my internet connection when I'm staying away in a hotel, but having to make a decision between 3 pounds for 30 minutes, 5 pounds for 2 hours and 17 pounds for 24 hours or 69 pounds for a week at Premier Travel Inn (Via Swisscom) is always one of those issues where a quite small expenditure difference - 3 or 5 pounds - seems to be presented in such a way that it can become a big issue. I really dislike having to make a decision when I really don't know if I'll have a lot or a little to answer - I'm presented with a payment system that asks me to make a bet and, well, I'm just not a betting person.
Swisscom could do so much better - in my view - if they offered packages that gave (say) 3 hours of access for 10 pounds - but allowed it to be used at any of their locations within a month of purchase. You'll note I've 'awarded' them a pretty high rate per hour and I suspect they would make just as much money. And they wouldn't have customers such as me slagging 'em off either.
It's been a real marketing / how things are presented morning for me ... I woke to read of an incident at Reading station that re-kindled the "Passenger v Customer" argument. See here
Posted by gje at 07:51 AM | Comments (0)
February 23, 2007
Too many instructions, too much detail
"Please leave these toilets in the state in which you would expect to find them.. So says a sign in the at the site I'm training at in London commuter land at the moment. Not having great faith in people, I would expect to find them in a bit of a mess ... and so I have a conundrum. Do I follow the instruction to the letter and make a mess, or do what I think it was meant to say.
Route - Any Permitted route From a rail ticket on Wednesday morning. Why print on the "Any permitted route". Surely that's always the case and doesn't need to be stated?
I'm so glad that we have a minimal signage policy!
Posted by gje at 06:55 AM | Comments (0)
February 22, 2007
Playing old games
We've provided "etchasketch", jigsaws and packs of cards in the library for our guest's use ... and although many of our visitors prefer the more modern attractions of 50 TV channels or the Internet, there are occasions that they enjoy an old fashioned change.

There's the game of Life and Scrabble too ...
Posted by gje at 04:42 AM | Comments (0)
February 21, 2007
Why use BBC code not HTML?
Why do wikis and forums use Bulletin Board Codes not HTML?
Why [b] rather that <b> ?
1. More secure against injection attacks
2. Allow the programmer to easily provide a restricted tag set
3. To give an easy to learn set of instructions to the contributor.
Posted by gje at 08:47 PM | Comments (0)
February 20, 2007
Telling a story in different ways
The same story can be told in many ways ... and we're telling our story a lot of ways just at the moment. Yesterday was very much a "write the story the way xxxx wants to see it" day - here are three articles written by myself and Lisa in the last 24 hours.
1. When we opened a niche computer software training centre in our home, people thought we were crazy. But we were a roaring success, and now we've opened a high quality business hotel for our delegates and others visiting Melksham. We're delighted to have done well in the Wiltshire Business of the Year because it confirms our sanity, for the benefit of customers, local economy, and ourselves.
2.Well House Manor is a high tech training and conference centre, and business hotel, in Melksham, Wiltshire, which opened its doors late last Autumn.
Proprietors Lisa and Graham Ellis have been running niche training courses in the town for the past five years. Over that time, guests have grown more demanding, requiring en-suite facilities where previously a shared facility was adequate, and broadband internet access day and night where previously a telephone line would have sufficed. So Lisa and Graham purchased a grand old home set in 3/4 of an acre of grounds, five-minutes' walk to town, and converted it into a high quality hotel - probably the best in the town.
"We believe in investing up front in high quality products" says Graham. "That way, our customers can enjoy facilities greatly in excess of what they would expect to find in a regular hotel, and we have a facility that's easy for us to maintain". For example, the fabrics used throughout the bedrooms for headboards, bed throws, pillows and valances, come from Agua Fabrics. Not only do they look classy and provide a sophisticated touch to the rooms, but they're also treated to repel germs and dirt - tough, and more hygenic, yet much less work for our staff than other alternatives.
During the week, Well House Manor is open for Well House Consultant's training courses, for other business events, and for business hotel guests who are in town to visit local companies. At weekends, they offer a great base for couples to explore the beautiful Wiltshire countryside, ranging from the Cotswold village of Lacock just four miles to the North, through Longleat and the Marlborough downs to the Stone circles at Avebury and Stonehenge. And the bus right outside the door will get you into the heart of the city of Bath in just 30 minutes.
The hotel has five large en suite bedrooms and two meeting rooms that can be used for conferences.
3. My husband Graham and I have a small business, but due to our computer use, we can perform very professionally. We happen to be up for a Wiltshire Business of the Year (Small Business category) award, and I feel that our productivity through computer use has put us up for this accolade. (We don't know yet if we've won...awards ceremony is March 2, but we are either winner or runner-up.)
We train in open source computer languages. People come to us to learn for various applications, and their needs run the gamut...as well as operating systems they need to be taught on, or are familiar with. So we have training machines that cover the possibilities. People can request Macs, PCs and Linux-based computers to use while they are with us. Many need to test on several platforms as well. But what surprises people the most is that the courses are all run through our Mac server. And another Mac projects the course manuals to help them follow along in their books. And all admin is done on Macs.
Because the business is so well placed on the Internet and have been around online since the mid 1990s, and the fact we train in computer-related languages makes us almost targets for those trying to break through our firewall, we can see attack attempts, but they don't affect us the way they would do for PC owners. Nor is our email infected with programs that autorun on PCs. Oh, we get thousands of spam emails, even with filters. But they don't bring us down.
Graham writes his own course materials on a Mac using vi on Unix. He runs programs such as PHP, Perl, Ruby, Tcl (a vast number of others as part of courses he teaches), and then takes screen captures of the results. He emails me his text and image files and I import them into FrameMaker on my G4 running Classic. I then print out manuals, up to 12 at a time, often more than 300 pages each.
Most of our advertising comes via the web. Graham uses the technology he teaches by writing Internet-related programs. I add to the process by coming up with the design and writing HTML, often through Dreamweaver.
We are able to produce all of our own print advertising projects in-house. Mainly I use InDesign for printed material. We take all our own photography and download pictures straight from our cameras on to the Macs. I edit the photos in Photoshop, and if they go up online, I put them through ImageReady to streamline them further. For small-run brochures, we print them on our own laser printers. For larger runs, I save the files to pdfs and email them to a printer...or a publication for media use.
My computer receives and sends faxes and takes messages when I can't answer the phone. And because this is done through the computer, I am emailed pdf files and MP3 sounds, so I get the faxes and phone messages anywhere I can check my email.
And I can check my email anywhere because of my Treo phone, which also holds my date book which synchs with my computer.
I also handle all the administration of the office and bookings. Through FileMaker I can take course bookings and hotel reservations, send out confirmations and invoices. And because everything is on the database, everything else is related. I take a booking, the information is entered and then uploaded to our web site to update all the information soon after it's entered. FileMaker can also go mobile and when it's synching my date book, it's also updating selected files.
When one of us is away from the office, we are still in touch. This becomes especially important because I am sitting in my admin office down the road from the hotel where the courses are held. My web cam gives an instantaneous update of visual activity. And staff can communicate needs immediately through Skype.
Our printing abilities are probably the most impressive. I can print SuperA3 posters on photopaper in high resolution. Premium-grade printable CD-roms can go through my Epson printer, and with the jewel case inserts printed on the Xerox colour laser, you'd never know they were done 'by an amateur'. We can print a limited quantity of colour brochures and flyers on card stock which enables us to give a professional look with constantly updated information.
Which brings me back to our manuals...because we can print and bind them here, we use FrameMaker to take individual modules and put them in book form. This adds an automation of adding a Table of Contents and an Index, and auto-updating chapter numbers, pages numbers, etc. With this flexibility, we are not tied to one manual with set modules for each course and quite easily modify books (and module contents) on the fly. This, I feel, is our biggest advantage and makes this small business head-and-shoulders above large training companies.
What about the hotel? Aside from bookings and billings and inventories and correspondence that were virtually already in place for the training side of the business, there's not much in addition. Sadly, the keycard entry system we use is PC-based, as is the printer we use to print our logo on the blank cards. And those are two areas I curse...they only work half the time; needing rebooting.
We use our computers so much for the business that even though this has become far too wordy, I know there'll be something else I've forgot to mention as soon as I hit the 'send' button.
If I can add one more thing; on the personal side: The computer, and more pointedly, the Internet, has done a great service for a cause my husband has been involved with for the past year and a half. Our train service was slashed dramatically and as a result he started a website to try to promote some attention. Through this site and a recent E-petition that's gathered a lot of media interest, it appears the service might be reinstated. To say that computers are our life is an understatement. And I am really proud of his work and what the Internet is able to achieve. One person *can* make a difference. Not so much Mac-related, but everything was done on a Mac ;o)
Oh, and one more thing...we happen to have (really, shear coincidence!!) a delegate on a course today and tomorrow from Future Publishing.
Did you ever wonder what we did in our spare time?
Posted by gje at 08:50 AM | Comments (0)
Injection attacks - safeguard your PHP scripts
An injection attack is where information supplied within a table entry box or upload file is used for malicious purposes - for example, if a user enters his name as fred'; drop database test; etc ... and finds that the script he has contacted inserts the text entered into a database query. Possible injection attacks include:
* HTML, where an abuser fills in tags into a data entry box. Leads to poorly displayed information when the tags are echoed back to his (or other users) pages. Solution - htmlspecialchars
* Variable seeding, where an abuser adds an extra box to the HTML source and initialises one of your variables that you have failed to initialise in your code. Scripts which are easily accessible in source form are prone to this form of attack if poorly written, but only if you're running PHP4.0 or earlier, or if you've set register globals
* JavaScript, where Javascript is filled in to a box and echoed back. The problem then is that the Javascript may be seen as having been supplied by the server so can access the server without the usual security restrictions.
* SQL, where SQL is entered into a box - my example in the into paragraph shows an SQL attack example although I haven't given you the complete code. Once again, these attacks are much more likely to succeed on scripts where the source code is commonly available.
Both the Javascript and SQL attacks can be prevented by default if the "magic quotes" setting is on - which by defaut it IS on recent versions of PHP. If, however, you stripslashes an input so that you can echo back O'Brien and not have it come up as O\'Brien, then you'll need to ad slashed back in for storing in a database, and check scripts that echo back input to ensure they're not sending Javascript
* File name, where the user's input is taken as being a file name or the basis of one. If I enter my name as "../graham", for example. I you must take the user's input to form a file name, filter it carefully!
* Email header, where a subject line or recipient can be specificed that's used as extra parameters to the mail() function. Subject lines that include a new line character can be used to add a "cc" to "bcc" header unless you check it, and if your email script does not email you each time it's used, then you can be unaware that your site is being used to send out unsolicited material for years!
Although all of the coding traps that allow you to leave you site open to attack were easily present on earlier versions of PHP, it's hugely improved now. Variable seeding, Javascript and SQL attacks are turned off via default server configuration options "register globals" and "magic quotes" that you will find in the server's php.ini file.
Posted by gje at 05:28 AM | Comments (0)
Useful link: PHP training
February 18, 2007
Lawrence Webb's Melksham Taxi service
Course delegates have arrived by car, by taxi, by train, by bus, by motorcycle, by coach, by pushbike and on foot. We're just waiting for a delegate to come by boat and moor up on the Kennet and Avon Canal that's about 2 miles from us.

Lawrence Webb (01225 706805) collect delagates from last week's course to take them to Heathrow and a return flight to Cyprus. He's equally happy with local runs such as Melksham station, but has seen his income from our delegates rise substantially since most of the trains were cut in December.
Yes - I am giving Lawrence a "plug" - always here in good time, and always spoken well of by the delegates.
Posted by gje at 12:37 AM | Comments (0)
February 17, 2007
Writing terms and conditions for conferences and other events
Whether you're running a small company with a handful of staff, or a multi-million pound operation, you've still got the same commercial issues to look after, and virtually the same set of legal requirements on you with regards so staff, business operations, taxes and so on. There are some, limited, dispensations for the smaller business but all in all the admin workload per pound earned is much higher, although the staff management and internal communication per pound earned is lower - quite simply, there are fewer of you.
Perhaps you would thinks that we can simply take other people's standards and use them? At times we can and go, but time and again we keep realising that our business is different, it is innovative, it is niche and that we set ourselves high standards. As a result, we rarely a "me also" outfit that can take an example from a similar place in Devizes, Malmesbury or even Aviemore or Rhyl and make do and amend.
A good example are the Terms and conditions for events and conferences at Well House Manor. I looked on line at various examples - from Lackham College to the Law Society via a centre for the Spanish community in East London ... and none was right. "Too Complex". "Too Specific". "Plain wrong for what we do". So I ended up working our our own set.
We're different.
We'll quite happily cater for you - but we don't want to stop you bringing in your own food and drink if you wish. We're quite happy for you to use our internet connection and we don't need 5 days notice ahead of time, nor make an extra charge. We don't have any delicate balconies that you mustn't have more than 2 people at a time occupying. And we say "leave it tidy" and NOT "leave it as you found it"; we anticipate that the last thing an event organiser wants to do at the end of a hard day's slog is to start using our vacuum cleaner ...
Having had a bit of a grumble about the extra work in coming up with our own document, though, we're now well set and turned for the future and by looking at other examples, things have come to our attention earlier rather than later. Some examples:
* The event organiser is responsible for any licenses needed over and above what we normally hold, and we've added a paragraph about illegal betting and gambling too.
* Hirers can't pretend to be us and take our good name. Obvious once it's pointed out, but you do hear of some organisations who go round and hire posh places and take a whole load of orders before disappearing into the night.
And, indeed, that latter has wider implications not only for our hirers but for our staff too. The question arises in my mind "what if one of our team enters into a contract on Ebay while using one of the computers here and the deal goes sour, has a delivery sent here and then doesn't receive it, or leaves personal property in site that gets lost". There are limits to how far we can and should go with our small team, but this whole exercise has been a useful one.
Posted by gje at 08:06 AM | Comments (0)
Behind the scenes
Behind every successful course, conference or hotel stay there's a team of people working to make it that success. Here's a few pictures of our "behind the scenes" team.

Christine prepares to serve for a day conference.

Martin prepares the "Wilts" - our larger conference room - before the start of an event.

Lisa looks after marketing materials, bookings, postage, invoicing and much more from her office at our HQ building just up the road

Leah and Lisa at a marketing even in Swindon. We're great believers in supporting community events and wherever possible work with local suppliers and contractors.

And the result? A training course that's enjoyed by all as well as being educational, and customers leaving with the words that they'll recommend us to friends and colleagues.
Posted by gje at 07:02 AM | Comments (0)
February 16, 2007
Straight from the .jar
Disc drives have got much faster since my youth ... and processors at have got much much MUCH faster in the same period. So, 30 years ago, we used to compress files to store them on the disc when we knew we weren't likely to keep needing them, but we didn't compress them as a matter of course as we knew it would then take quite a while if we wanted toi get at them.
With the enormous increase in processor speed compared to disc speed, the balance has changed. These days, it's quicker to read a small file from disc and uncompress it than to read a much larger file, so compressionn has become the norm. That's why utilities such as jar compress files by default these days, and why Java applications are often run straight out of the jar.
Posted by gje at 07:10 AM | Comments (0)
February 15, 2007
Customer takes over class, and I am delighted
On a private course, I actively encourage delegates to discuss their own requirements - and very often that'll involve the use of the whiteboard and my projection system too.
So, yesterday caught me sitting with the class and watching Jacob manipulting CLASSPATHs and .jar files - looking at package arrangements and how and where Java finds the .class files that it needs within their installation.
A course is really effective if the delegate can leave with ... not only a knowledge about how the various components work and go together, but also with a knowledge as to how this applies to them.
Picture - our smaller training room - the "Berks" at Well House Manor, Melksham.
Posted by gje at 08:02 AM | Comments (0)
February 14, 2007
httpd.conf or .htaccess?
You can put Apache httpd configuration changes into both the httpd.conf file and files called .htaccess. What's the difference? Which should you use?
If you put directives into httpd.conf - or any files called up with an include:
* They are read only when the server restarts
* They are set up by the system administrator
* They can override any settings from a higher directory, even if allowoverride is set to none
If you put directives into a .htaccess file:
* They are read for each and every hit to the directory or its descendants
* They are set up by the web administrator responsible for that directory
* They can only override settings from httpd.conf if allowoverride is set for it
You may be told that .htaccess is less efficient - true, but in the whole run of things it's only going to take a very little longer, so you normally don't need to be concerned about that. More important is the difference of who administers the settings, and for system administrators to be aware of the additional support that may be required for the web team / web content providers if they're allowed to modify settings via . htaccess.
Posted by gje at 04:43 AM | Comments (0)
Wilts and Berks - two conference / training rooms in Melksham
As well as the "Wilts" where we hold most of our public courses, Well House Manor has a second and smaller conference / training room available - also equipped with a "White wall", internet access, and (in this room) even a sink. It's an idel room for running a course for 2 or 3 delegates - and indeed I have three delegates this week.

The White wall, the projector, and the stand from which I'm running the course

This week's course covers web server deployment under Linux, and each delegate has use of two laptop computers throughout the course - one to use as his server, and the other to use as a desktop machine from which to administer the server.

Well House Manor is not only a training centre, but also a conference centre and hotel. As well as the training course, we hosted a day's conference for the local doctor's surgery today. A chance for them to meet off site; perhaps 20 people on site in addition to my course, and plenty of space for all.

We're commited to provide good space for all delegates - we calculate that 1 metre of table space is a minimum, and we cometimes provide much more.

And here is the class ... working on an Apache httpd practical!
Posted by gje at 12:23 AM | Comments (0)
February 13, 2007
Wiltshire - multicultural community
How many cultures / nationalities are represented in these pictures, taken last night at the Punjabi Community Centre in Swindon?





I confess - we went along with an element of trepidation, not knowing how the evening was going to turn out. But - a great time had by all and I'm really glad we attended!
A big thank you to Marion Mortimer of the FSB who was "behind" the event, to Business Link for their sponsorship, and to everyone who made for such a great evening. It's a joy to live in Wiltshire.
Posted by gje at 07:53 AM | Comments (0)
February 12, 2007
In answer to 'am I glad I started a blog' ...
Mine serve me usefully to seed our web sites as well as for regular readers, so I'm a bit of an odd one to advise you. You need to have a clear purpose that's going to carry on into the future / through the life of the blog - otherwise it can get stale and fade.
On the TRAIN blog, I sometimes wonder, simply because it dilutes forum posts. However - it is very useful in putting up a page easily and headlining it, which is what I've done with the 5.3 meeting.
On the wellho.net blog (the more personal one) it was utterly the right thing to do and here I am nearly 1100 articles later putting up, perhaps, only a half of the material that I want to. There's a lot of personal stuff and stuff about customers I don't put up - many a grumble and ripping yarn that would show someone easily identified in a poor light, and who might read it. But I've learnt to have the confidence to reveal my own thoughts, things and personallity sometimes; on a blog people read you for what you say and how you say it, and not because you admit to something you did in the past. But I do keep the "ex" and the kids off it, and largely the staff team too - not a lack of caring in and way, but to respect their privacy.
This evening, I'm meeting another MP - Ann Snelgrove. That will make - let me see - 4 .... Hey - THIS would make a good blog even if it's a bit name-droppy ... but before then I have the dentist. Must run.
Posted by gje at 01:01 PM | Comments (0)
Save the Train - an update
I have tried not to bore my more technical readers here with "yet another train story" too often, but perhaps I should post the occasional update.
Save the Train is an Internet / Web Site based group who use (or used) the TransWilts train service, or would use it if appropriate services were provided. Formed in August 2005 by Graham Ellis as a result of seeing the threat to the service that he used in a letter in the local Newspaper, the web site and campaign has grown from strength to strength.
We have been campaiging for an appropriate train service for West Wiltshire to Swindon, and from Swindon and Chippenham to Trowbridge, Warminster and Salisbury, for 18 months.
A petition to the Prime Minister, which has just closed, drew nearly 1700 signatures including 8 Members of Parliament, 5 MEPs and many councillors, and became the top domestic public transport petition on the PM's web site (8th out of over 400 on transportation and infrasturcture). That's very respectable for a locally based petiton with no formal organisation that ran for just three weeks.
The petition and the wider campaign has received good press exposure - a half page in the Sunday Express, a shorter piece in the Daily Telegraph, and an article in the Metro which actually reprinted the current minimalist timetable. An item on HTV West showed just how poor by comparison the bus alternative is from Melksham to Swindon, with me taking well over an hour to make a journey that would have taken less than 30 minutes by train, and pieces on "You and Yours" and "Westminster Hour" on Radio 4 should be noted. And those appearances are in addition to enormous local support from newspapers and radio stations in the area.
At Westminster, Ann Snelgrove, James Gray, Michael Ancram and Andrew Murrison - that's all the MPs for the Swindon - Westbury section - stood up and spoke in favour of an appropriate service during a debate, and Robert Key and Sandra Gidley, MPs for the extension to Salisbury and on to Romsey, have also signed up.
We have received overwhelming encouragement from other organisations at a local and regional level, and we now hear reports of much more serious discussions involving the Department for Transport and the First Group amongst others. Communications from both organisations within the last few days indicate a door that is pushed far more open to our proposals that at any time previously, with serious attention being given to both the financing and the timetabling of the new service. And these are THE two key players.
A lot of the "we" words should read "I" ... there's been a lot of time and effort in this, alongside the hotel and the training business. But it's looking - well - more optimistic now than at any stage previous. Big meeting, 5th March ... here's the invite if you happen to be around!
I am writing to invite you to attend a meeting on the evening of Monday, 5th March to focus community support onto the "TransWilts" railway line that links Swindon, via Chippenham, Melksham and Trowbridge to Westbury, Dilton Marsh, Warminster and Salisbury. Formal invites are going out to many organiations involved, but additionally I'm inviting current, past,and potential future users and other interested parties too - this meeting and stong support COULD MAKE A REAL DIFFERENCE.
The use of train service linking these towns - including the five largest towns in Wiltshire - grew dramatically up to last December; growth rates of between 8% and 35% per annum are quoted for the five years up to that point, and a service that was very quiet five years ago had become pretty busy by last autumn. But the service was cut back in December to just two trains a day, running at times that are inappropriate for the main traffic flows. The reasons given are poor economic value, but arguments from various parties to the decision were based on older (so lower) usage figures, and consultant's reports that assumed a growth rate of just 0.8% per annum.
I have various indications that the service provision is now being reconsidered much more throughly and constructively, with what I believe to be a better chance than at any point previously of us securing an appropriate service to meet customer needs. But we're still not out of the woods - we need a community push to ensure that the optimism isn't stillborn, and that a service - when provided - is well advertised and supported by the community. With the Regional Spatial Strategy proposing a high growth rate all the way from Swindon to West Wiltshire, increasing conjestion on the A350 and other roads in the area, and strong traffic flows between the towns in the county, a two hourly service starting later this year makes sense.
The meeting will start at 19:30 (arrive earlier for coffee) at Well House Manor, 48 Spa Road, Melksham SN12 7NY on Monday, 5th March. If you are unable to attend personally, please nominate an appropriate council member or officer to attend in your place. You are also welcome to pass this on to other parties and invite them to attend on a less formal basis.
So that I can plan the meeting, I WOULD like some idea of numbers - it would be much appreciatiated if you can RSVP.
And an Agenda??
"Save the Train" - TransWilts Train service between the major population centres of Wiltshire.
5th March 2007, at Well House Manor, 48 Spa Road, Melksham SN12 7NY.
19:00 (tea and coffee) for 19:30. We will meet attendees off the 19:08 train at Melksham, and ensure that everyone gets home afterwards.
Draft Agenda:
1. Welcome
2. Where are we now?
3. How can we get an appropriate service returned?
(If we get good news later this month, we may be able to skip)
4. Community support to build, sell and retain the new service.
What do we need to do?
5. Action plan - who, how, mechanisms.
6. Conclusion
It is anticipated that the meeting will close at around 21:30.
Posted by gje at 06:30 AM | Comments (0)
February 11, 2007
I'm not the father
I look on with some amazement at the unfolding story of Anna Nicole Smith, who was just a vague name to me prior to her death in the last few days. A dark humour in my mind vaguely wondered about creating a web site for men to post up their "I am NOT the father of this baby" claims, but with so many claiming paternity, I'm starting to wonder if there would be anyone at all, except me, left to sign up there ;-)
Posted by gje at 12:01 PM | Comments (0)
February 10, 2007
Java beans and classes, .war and .jar files
A Java Bean is a class that includes a constructor that takes no parameters, and getter and setter methods with names like getLength and setLength to read and write properties. So at a basic (Java) level, a bean is just a class that happens to conform to some conventions. However - when you come to tag libraries such as those used in Java Server Pages (JSPs), the convention becomes a mandatory rule that must be applied to make the class usable in this way.
A .war file (Web Archive file) is a .jar (Java Archive file) that includes a welcome file such as index.html at the top level of the tree, and a subdirectory WEB-INF that contains a web.xml file. So at a basic level, a .war file is just a .jar file that happens to conform to some conventions. However - when you come to deploying web applications in a container vehicle such as Tomcat, the conventions become mandatory rules that much be followed if the web application is to deploy correctly.
Posted by gje at 05:42 AM | Comments (0)
Useful link: Java training
February 09, 2007
Heartbeat script in Perl
Scenario ... an Apache httpd web server is distributing requests around between a number of Apache Tomcat instances on different computers (perhaps using mod_rewrite to allocate the requests). If a Tomcat instance become unavailable (i.e. if the host running it is taken offline) then it's to be removed from the pool, and if it comes back on line it's to be added to the pool again.
Sound complex? The basis can be quite a simple Perl script such as the one we wrote during today's course - source code here.
A regular ping around the machines that may be in the pool establishes which are present, and if the availabiity has changed the RewriteMap is rewritten. Place a pause of a few seconds into the loop and try again ....
Posted by gje at 05:28 PM | Comments (0)
Useful link: Perl training
Well House Manor in the Snow
Scenes yesterday morning


Posted by gje at 07:53 AM | Comments (0)
February 08, 2007
Making a mountain out of a molehill
There are times that I take stock pictures - such as this one snapped yesterday, for use if ever I need to talk about making a mountain out of a molehill. The picture is of Silbury Hill ...
Other pictures are take because the layout attracts and I look back at them later and I'm baffled as to what I could use them for.
Perhaps illustrating a blog might be a good idea, or a pub quiz question. "What links a concrete pig, a fire grate and a Travel Infomation sign?
Posted by gje at 06:08 PM | Comments (0)
February 07, 2007
Java Deployment course - lunch break
We've several delegates on this week's course who are visiting the UK from overseas, and haven't been to Wiltshire before ... and the other delegates are staying with us. But the daylight is still short, and touring at night is cold and you can't see much.
So we started early today, then extended our lunch break and took a short tour around.

Silbury Hill - 4600 years old, and it's still a mystery why it was built

The avenue of stones leading to Avebury Circle

Lunch was eaten inside! The Red Lion, Avebury.
Posted by gje at 06:10 PM | Comments (0)
Useful link: Java training
Rail trouble forced me to buy hotel
.... that's a headline in Monday's "Metro" paper, over a story about how we came to open Well House Manor. "Graham Ellis, 52 was facing ruin ..." it says. Well - not quite, though I suppose that the business would have been severely damaged if we had done nothing at all to offer viable alternatives to our clients.
I've not been able to find a link to the full story on the Metro's web site but I do have a copy of the paper here "in the flesh". I'm delighted at the number of our customers who have commented on it ... and I was delighted, too, to see the complete Monday to Friday timetable from Swindon to Melksham published in the national press - me thinks that's more advertising of the service (now just 06:19 and 18:42 from Swindon) than the First group have even done!
Actually, the hotel is a "win / win" for us. We now have a better product - FGW gave us the impetus to improve. Clients now usually come the night before - there's a connection off the 17:30 from Paddington - or make other arrangements. Car is often cheaper than the train these days, and for non-drivers flying in to various airports we're moving much of our business to a local taxi firm who are doing us proud.
And with the hotel, we're much more able to show people what a lovely part of the country we're in too. Late last night wasn't really an ideal time to take pictures of Bath, but here is our local "artist's mark" - the hands of Joan Collins cast into bronze near the Theatre Royal ... and if I look back at this entry in a year or two's time, it will be a happy memory of a Brazilian meal with two gentlemen from Kuwait.
Posted by gje at 07:53 AM | Comments (0)
February 06, 2007
ls -l report, Linux / Unix - types and permssions
What does drwtrwx--- mean on the start of your ls-l report?
The first character (d in my example) tells you the type of symbol you have on the file system, as follows:
d - a directory;
b - a block-type special file;
c - a character-type special file;
p - a named pipe;
l - a symbolic link;
S - a socket;
s - a XENIX semaphore;
m - a XENIX shared data (memory) file;
D - a Solaris door;
n - a HP-UX network special file;
- - a plain file.
and I've heard rumours of a "*" appearing - anyone know about that?
The following characters are grouped 3 by three:
First three - the user (file owner's) permissions
Next three - the group permissions
First three - the permissions other users have
and the characters you'll find are:
r - the file is readable
w - the file is writable
x - the file is executable (or accessible for a directory)
- - the indicated permission is not granted.
The user execute character may also be:
s - the file has set-user-ID mode
S - the set-user-ID bit is set on the file but it is not executable
The group execute character may also be:
s - the file has set-group-ID mode;
l - mandatory locking is enabled for the file (standard)
L - mandatory locking is enabled for the file (Posix)
And the other group execute character may also be:
t - the sticky bit of the mode is on
T - the sticky bit is on but the file is not executable
Posted by gje at 08:47 AM | Comments (0)
Useful link: Linux training
February 05, 2007
Serialization in Java - all layers required!
If you want to subject a delicate piece of equipment to an extreme of temperture for a prolonged period, it's no good just putting it in a box, even if that box CAN withstand the temperature extreme. No - you need to have piece of temperature tolerant equipment AND a tempertaure tolerant box if you're going to subject the combination to the extremes.
And so it is when you have a serialiazable object in Java. Not only must you declare that your class implements selializable but you must also ensure that any objects that it contains are also serializable.
If you can selialize an object, it means that you can save it to a file or a database of transmit it via a network, and you'll be able to reconstruct the object later on / at the other end - literally, you're turning the object into a serial stream of bytes.
Posted by gje at 08:45 AM | Comments (0)
Useful link: Java training
Final, Finally and Finalize - three special words in Java
A final method or variable is one that can't be overridden - you can define a method as final within a class to ensure that any extensions to the class don't replace it.
If you add a finally block onto the end of a try / catch exception handler, you're defining a block of code that will be run if the try is entered, even if problems occur and your method returns from within a catch rather than continuing.
A finalize method is your destructor method - code that's run to clean up objects that are no longer required. For example, objects which are memory cached would be flushed back to the disc in your finalize.
Posted by gje at 08:08 AM | Comments (0)
Useful link: Java training
Graham Ellis - an Introduction
Sharing an introduction I made elsewhere - I'm not just an IT trainer - I do have other interests!
Hi, I'm Graham Ellis. I've been in the "IT" industry for 30+ years, and I live in Melksham, Wiltshire. I run specialist training courses here and many of my customers (or until last December, they came) by train - some local journeys from Swindon, South Wales, etc. Many from London and other from places further afield including airport stations. And a good proportion of my courses are held "on site" so I travel around - to London, to Oxford, and a variety of other journeys, none of which is a regular daily commute. Where practical and cost effective, I use the train ... but I'm not against using the bus or car if they're a better option.
In the summer of '05, I saw a letter in the local press saying how the train service that my business relied upon was to be taken off at the end of '06, and that a minimal replacement service would be offered. Consultation had already happened (I have SRA to DfT papers under Freedon of Information thet report discusssions of how to minimise the consultation) and we were told "too late", but never the less, you have to try, don't you? And so started the "Save the Train" campaign.
First objective - to get the powers that be to actually be AWARE of the "TransWilts" line. Second objective - to give it serious consideration and work out what an appropriate service is. Third objective - to provide that service. Fourth objective - to support and sustain that service.
First objective, reasonably achieved. Second - I think we're getting there. We had a long period of defensive tactics, referring back to ancient figures and decisons but I think - at last - we're moving forward. Pity about the current service gap on the line, but we've now got a better-than-previous chance of getting a service back before Christmas. I look forward to helping with objective No. 4!
On the personal side, you can read more about me on these links:
Graham Ellis - home page
Well House Consultants
Well House Manor
Yes - that last IS a hotel web site. We've changed our business model, with the balance being tipped by the train service loss. I sit here on Monday morning no going down to meet the train from Swindon (which is too early and was cancelled anyway!) but with the smell of fresh bread from the kitchen, and with the sound of delegate who arrived yesterday stirring in their rooms.
It seems that I've run quite an effective campaign, and I've been asked to provide boards / information as it relates to other services. And thus the site www.firstgreatwestern.info. The key players are the same across many lines and services, though the issues differ. And I'm happy to host / monitor a site for the customer / passenger, with contributions by the customer / passenger.
It seems to me that the big voices that have influence are the Department for Transport with an apparent objective that's more financial than service based, and the First group who's main objective and responsibility is to their shareholders. Perhaps we can help redress that just a little in the interest of balance and - for the future - to the mutual benefit of all parties.
Graham Ellis
Melksham, 5th February 2007.
Posted by gje at 07:55 AM | Comments (0)
February 04, 2007
Light and shadows at Beach
Yesterday was a glorious, sharp but sunny day and one of those rare opportunities we get these days to relax a little and take a day off - or at least part of a day.
We all went over to see Chris (my son) and his wife Delene and their cat Snowball at the incongrously named "Beach" which is a small village set in a remote valley between Bath and Bristol. Well - it's remote, yet very close indeed to both cities. Regular readers and friends will know that Chris had an accident on his motorbike less than a fortnight ago and was hospitalised. After the initial panic when I was pulled out of a meeting with the breaking news, followed by the drive to Beach to pick up Delene and on to the hospital ("was he taken to the RUH or Frenchay?") where they had lost him off the system ... after the inial panic, damage turned out to be limited to a mashed knee and breaks in that area. A week in hospital, an operation to put metal pins in to hold everything together ("now, you'll always set off the airport metal detectors' Chris") and Chris is now back home in a full leg length plaster cast for a number of weeks, then a hinged one for a while longer ....
The light was shining in through the windows at the front of Fifteen Acre Cottage, and I couldn't resist taking a few snaps of Snowball - one of those cases where a colour picture that's very close to being monochrome is really effective!
Posted by gje at 09:46 AM | Comments (0)
February 03, 2007
Bradford-on-Avon - 150 years of passenger trains
Yesterday was the 150th anniversary of the opening of Bradford-on-Avon station - a town about half the size of Melksham which is situated on the main Portsmouth to Cardiff line about 6 miles away, and is served by a service that's hourly or somewhat more frequent thoughout the day, and has a bustling ridership.
During the day, a plaque was involved at the station and whilst it would have been fun to go, I had a three way clash and that came in third on the basis that my presence would have been purely selfish. But no such clash in the eveing and I was looking forward to hearing Colin Maggs, MBE, talking on the importance of rail travel at 19:30. Imagine our surprise to walk in a few minutes ahead of that time to find a large, crowded room (circa 200 people?) watching a slide show. And we quietly sneaked in (difficult - door at front of room) and found one of the few spare pews.
Someone (or sometwo to be accurate) had put in a great deal of time over many years taking all those pictures of trains - many very rare workings indeed that they must have awaited for hours. And the picture quality was high, the setting magnificent - from Bradford South Junction at the South East end of the "patch" up to Limpley Stoke at the North West, with Bradford, Avoncliff and Freshford in between. I enjoyed reminders of the "Cromptons (Class 33), the Brush 47s; I saw with a tingle of sadness some of the old southern diesel electic units being towed away for scrap along the line, and I was delighted to see the resplentant Hastings-gauge unit in smart green on its first run in preservation. I was shocked to hear of some past inefficiencies, such as the Monday Only (MO) train from Cardiff to Westbury ... after which the coaches sat in the siding at Westbury until they were next needed ... which was Friday.
It's good to celebrate the past. But two things struck me.
1. We were there to celebrate the station and the railway line. Pictures of the station - a beautiful building that's the last remaining "classic" Victorian station in the area - were conspicuous by their absence.
2. There was nothing looking forward. Here we are in the midst of a major shakeup, with current passengers from Bradford-on-Avon being sardined to work, fewer trains, skyrocketed fares - the pendulum has swung from the laxness of the set used once a week right across to the opposite extreme and no-one was talking about it. It was as if the present and future didn't exist - "We used to have these 143 units occasonally" said the commentator, telling of the discomfort and rough ride. Do you know what, dear commentator, You've got them again now ... and you don't even acknwoledge that or any future
An interval, to be followed by a railwayana auction ("selling off the familiy jewels"), and I would like to thank the chairman of the West Wilts Rail User Group who organised the evening for letting me address the meeting for a couple of minutes - pointing them at the petition and giving a couple of thoughts for the future for both B-o-A (for it was their evening) and the TransWilts line via Melksham. Alas, mostly dead ears from people for whom the past hold much more that the future, but a sprinkling of interest and , bless them, encouragement afterwards from a handful.
Colin Maggs - remember him, the guy who was to talk on the importance of rail travel, was indisposed at the last minute. A fascinating lecture, illustrated, on Marc and Ismbard Kingdon Brunel followed. Most of it was a warm comfort of revision for me - fun to watch, listen and see pictures and hear stories that I knew well retold. But cold comfort for the future of rail travel. "I'm not an anorak" I tell people I get involved with in the train campaign; "I don't really mind whether we have a 153, a 158 or a 170 class train as long as it runs when and where it's required, with comfort and cost considered". And, sadly, the eveing showed just why I sometimes feel the need to take that stance when talking with the railway professionals.
As I said at the end of the two minutes Reg had given me ... "Let's look forward and encourage the provision and use of an appropriate service so that we can be here in another 50 years to celebrate Bradford on Avon stations's 200th Birthday"
Posted by gje at 09:29 AM | Comments (0)
February 02, 2007
Java sorting - comparable v comparator
In Java, you can sort objects that implement the Collection interface, using either the comparable interface or a comparator class. What's the difference?
A Comparable interfaced class must contain a method called compareTo to compare two objects (one being the object on which it is called and the other being passed as a paramater) which returns an integer, negative for a < b, positive for a > b and 0 otherwise. It must also contain an equals method, returning a boolean, on the same parameters.
A Comparator is a class in its own right, which implements the Comparator interface; that means it must contain a method called compare (two objects as parameters) which returns a negative, zero or positive integer depensing on whether the first object is less than, equal to, or greater than the second.
If you want to sort a collection using its comparable interface, you simply call the static Collections.sort method on it ... so if we had an ArrayList called Actable which implemented Comparable, we could write:
Collections.sort(Actable);
To sort a collection using a Comparator class, you need to pass an extra parameter into the Collections.sortmethod - that parameter being an instance of a Comparator object. Thus:
Collections.sort(Actable, new Bynum());
So in effect, using the comparable interface gives you a default sort order of your own making, whereas the comparator is more flexible as it allows you define a whole series of different types of sorting that can be applied to a whole lot of different types of objects.
Posted by gje at 11:08 PM | Comments (0)
Useful link: Java training
February 01, 2007
Take vehicles off the road - put all the passengers into one
One of these road vehicles can take as many passengers as all the others put together - which?

Yes, Sunday brunch was with the travel and transport folks and I ended up taking a photograph of the carpet at Jxxxx and Dxxe's place. The brunch was lovely; we drove across there as public transport in these parts ceases on Sundays and played the "hunt a parking space" game too.
Posted by gje at 01:03 PM | Comments (0)
What a relief from the tax office.
A great weight is lifted off my shoulders this morning, in a letter from the tax office. For - goodness - a year now, they've been looking into my personal return for the 2003/04 tax year. I understand they choose some returns at random and others because they look odd, and fair enough. I guess mine looked odd; Mum had just passed away and Lisa and I picked up a number of bills and made a number of payments over subsequent months on Dad's behalf .... and it was also the year that various endowment policies that had been running so support house purchase over 25 years were repayed.
The enquiry proved much more of a drag than it should have done. Both partners at our accountants at the time passed away the following year, each suddenly and within 6 months, and that left a cold paper trail. And I had mislaid a few vital papers - my error, I know they have to be kept for seven years. Which lead to several weekends and a spell over Christmas too going through all the files looking for mis-files, from archives in the loft to old receipts stored in "the cellar". And we got down to the details of house plans for "404" to show what part was used by the business and which was personal, with scale drawings to calculate the proportion of the area that was leased out as our training centre.
And the news ... after all that work, all that investigation, they owe me a hundred quid. Me thinks that at least a little of it should go on a quiet celebration.
Posted by gje at 07:53 AM | Comments (1)