Hotel and training centre, Melksham, Wiltshire
High quality accommodation for course delegates, business travellers and the leisure visitor too.

Home Accessibility Bedrooms Book Here The Mouth Facebook Resources Find Us About Us Contact
 
For 2023 (and 2024 ...) - we are now fully retired from IT training.
We have made many, many friends over 25 years of teaching about Python, Tcl, Perl, PHP, Lua, Java, C and C++ - and MySQL, Linux and Solaris/SunOS too. Our training notes are now very much out of date, but due to upward compatability most of our examples remain operational and even relevant ad you are welcome to make us if them "as seen" and at your own risk.

Lisa and I (Graham) now live in what was our training centre in Melksham - happy to meet with former delegates here - but do check ahead before coming round. We are far from inactive - rather, enjoying the times that we are retired but still healthy enough in mind and body to be active!

I am also active in many other area and still look after a lot of web sites - you can find an index ((here))
Ruby, Perl, Linux, MySQL - some training notes

We have just come to the end of a solid 12 days of training ... and we are just getting ready for the next week, with delegates arriving this evening. There's a lot going on behind the scenes, even over this weekend, with the hotel to be prepared as well as the training course. (Picture - our clean bedding racks at Well House Manor)

So I'm taking an all too brief opportunity to post up some pictures from the last hectic fortnight, before the next hectic fortnight begins in a few hours time. You'll find, below, some technical notes and scripts mixed in with some rather less technical stuff.





If you're writing / installing a web based application that used Perl and CGI to access a MySQL database, don't just plug all the components in and hope they work first time ... they might, but if they don't you'll have a woozie of a job sorting out which is functioning and which not.

Test your database first - that's (1) on the diagram. Then add in a Perl application from the command line - using the DBD and DBI modules, and make sure that works. That's (2) on the diagram. The add in your web server, and CGI, and run it from a browser - step (3). Three easy steps rather than one very difficult one.

From our MySQL course, with reference made to Perl on the Web





In Ruby, you have no fewer that four different ways of changing the flow control with jumps. They are break, next, redo and retry, and the diagram shows the effect of each of them if used within a condition inside a loop.

Computer Science purists will tell you that you should never use a goto statement as it rapidly turns your logic into spaghetti - and indeed Ruby does not have such a statement. However, it has been argued that these four jumps are tame forms of the 'goto', and that they should be used with caution.

From our Ruby Programming course





Melksham Chamber of Commerce met at Well House Manor during the recent run of courses (we're nothing if not versatile!) for their AGM and an EGM.

With the current re-organisation of local government in Wiltshire, which sees the replacement of five bodies by just one, with a more than halving of the number of elected representatives, this is a time for local traders who do business with these bodies to be aware of what's happening, and to position themselves to do well in 2009 and beyond. It was frightening (at another recent meeting) for those of us who live in Melksham to hear the chiefs of the new council talking, as if to a script, of the three largest towns in the county when they spoke of future development, ignoring the fourth (Melksham) and many others places ... the Chamber of Commerce could be so important next year.





Q: If you have a database table with 32 patients in it, and another table in the same database with 50 clinical operations in it, how do you link the tables together?

A: With a join. But it's not necessarily as simple as that. If you have some patients who have never had any operations, will they appear in your resulting data set? That depends on whether or not you specified JOIN or LEFT JOIN. And what about operations that have been erroneously entered into your database as they relate to patients who aren't a part of your sample group ...

In this example, we show how you can have five different sets of results:
• All the records that match
• All the records that match PLUS and extra record for each patient who hasn't had any operations
• All the records that match PLUS and extra record for each operation which isn't assigned to any patient
• Just the records for each patient who hasn't had any operations
• Just the records for each operation which isn't assigned to any patient.

From our MySQL course, or if you want more detail see our join v left join page





The /etc directory of the Unix and Linux operating systems includes many configuration files ... the rather poor picture to the left showing the more important ones (or the ones which were more important to the delegates on my recent LAMP deployment course on which we set ul Linux, and a Web server with MySQL and PHP.

The directory /etc/sysconfig/network-scripts. In this directory you'll find the configuration files for the network interfaces, where the IP address, netmask, gateway address, and so on are set.

The directory /etc/init.d. Holds all the scripts you could (possibly) want to start up and shut down daemon services. Each script responds to the parameters "start" and "stop" to (you guessed it!) start and stop services. Whether a script is actually run or not depends on directorys such as rc5.d

The directory /etc/rc5.d. A directory full of Symbolic links to /etc/init.d. You place a link to a file in /etc/init.d, and you name that link starting with an S, if you want the particular daemon to be started as the computer restarts into "run state 5". You place a link starting with K if you want the daemon to be properly closed down on shutdown. The naming of the links is important as they are run is ACSIIbetic order. If you are running a server which is NOT running the X Windows System, you'll be concerend with /etc/rc3.d and not /etc/rc5.d

/etc/inittab. Linux / Unix startup script. The only thing you many commonly change is the initial run state - i.e. to control whether or not the X Windows GUI is activated on bootup.

/etc/fstab. The mounting of the various disc drives, slices, and pseudo devices onto the Linux / Unix file tree.

/etc/nsswitch.conf. This file controls where the operating system looks for login accounts, host computer names, and much more - whether to look in local files, in network services, or in both ... and in what order.

/etc/resolv.conf. The IP addresses of the machines that your system is to contact to help it resolve unknown host computer names back to IP addresses. "The next step in the DNS chain".

/etc/hosts. Maps locally known host names to IP addresses and vice versa.

/etc/passwd. Local user account definitions - user name, user number, home directory, program to run when the user logs in. In fact everything EXCEPT the password, in spite of the name of the file.

/etc/shadow. A file of user names and their encoded passwords. This was separated out from /etc/passwd a good few years ago, so that the encoded password information could be held in a file with fewer access rights than /etc/passwd. If you're editing this file with vi, remember to save it with :w! rather than :w to override its read-only nature.

/etc/group. A file that defines names for each of the groups, and also defines any uses who are in a group in addition to their default group which is specified in /etc/passwd.

/etc/bashrc. A file of bash shell commands which is run by each user when they log in - allows for the centralised setting of default file permission via umask, for example.

The directory /etc/skel. A skeleton directory that's duplicated to each newly created user if the appropriate option is selected when you run the useradd command.

From our Introduction to Linux Administration course.





It's always a fine line during a training course as to whether we should go out for lunch - taking a little longer, but giving delegates a good break and a chance to stretch their legs, or eat in - allowing us to make the maximum use of course time.

Here are Thursday's Pizzas, prepared and cooked by Sharon, so that we could make the very best of the time we had on our Deploying Apache httpd and Tomcat course. In fact, even though the lunch break was brief we ran on until 6 p.m. in the afternoon, as a disparate group of delegates had a lot of wonderful questions to ask, and none of them wanted to run too late on Friday!





There are a number of different shell programs (programs that look after the user's keyboard commands, and the operating system's responses to the user) available on Unix / Linux. Ask me sometime to tell you about the Bourne Shell (sh), the C Shell (csh) and the Korn Shell (ksh) - the latter two remaining popular in some quarters. Under Linux, thoughh, the most commonly used shell is now the Bourne Again Shell or bash.

This slide shows you some of those extra facilities of bash which are different to (or absent from) some of the other shells.

• If you press [tab] while entering the name of an existing file, bash will attempt to auto-complete it for you. Not only time saving, but also helps avoid too many mistakes - if a [tab] doesn't respond, it can be a quick way of finding a spelling mistake you've already made.

• The set -x causes subsequent shell commands to be echoed back to you, with details of how the shell / operating system has interpreted them. A great debug and learning tool which can be switched back off with set +x

• The history mechanism in bash is similar to that of the cshell. (and different to that in ksh!). So you can use:
!$ Last parameter, previous line
!! Rerun the last command
!gr Rerun the last command starting with gr
!442 Rerun command number 442

From our Linux Basics course.





Directory navigation on a Unix / Linux box is controlled by how you start the file or directory name that you're typing in:

If you start with a /, you're talking about an absolute path from the top of the file system tree.

If you start with a ./, you're talking about something in the current directory.

If you start with ../, you're going up from the current directory.

If you start with ~/, you're going relative to your home directory.

If you start with ~fred/, you're going relative to fred's home directory.

and is you start with another character, you'll be looking within the current directory that you're in.





The vi editor is the only editor that you can be sure of finding on any Unix or Linux system - and it's darned good. However - it is easy to use once you know it, rather than being easy to learn. That's why some people will tell you that vi stands for "virtually inoperable" rather that "visual interactive".

The "trick" to learning vi is to understand that each key on the keyboard is a command - usually a single letter command - when you enter vi, with upper case, lower case, and control keys each meaning something different. Once you have entered an insert mode (i or a or o or cc or cw .... or others), you are in insert mode and anything you type is added in to your text. You return to command more by pressing the [esc] key. A final mode - "ex mode" is entered by pressing the colon key, and in this mode you type in a command followed by a [cr].

The diagram on the left shows a minimum of vi commands - we have an article that takes you through those commands here.





The week finished with a trip to the station to drop off a delegate for the train to take him home, from Melksham to Luton via London. And, this evening, the next course will start with me meeting the train and greeting our next group of delegates. I'm looking forward to it.

(written 2008-11-23, updated 2008-11-24)

 
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articles
Z402 - Melksham Chamber of Commerce and Industry
  [717] A customer service company - (2006-05-11)
  [1223] Asda opening large new store in Melksham - (2007-06-08)
  [1250] Business speed networking - a place tonight! - (2007-06-28)
  [1429] Remembrance day - inside a church and inside the day - (2007-11-11)
  [1432] Wiltshire County Council - Budget Consultation - (2007-11-15)
  [1476] Shopping for Christmas and looking forward - (2007-12-17)
  [1504] Flooding by Asda-s proposed new supermarket - (2008-01-12)
  [1507] Comments on proposed Asda Superstore for Melksham - (2008-01-14)
  [1633] Changing a screen saver from a web page (PHP, Perl, OSX) - (2008-05-06)
  [1642] Summer! - (2008-05-15)
  [1748] Hotel room prices - Melksham, Wiltshire - (2008-08-11)
  [1792] All the pieces fall into place - hotel and courses - (2008-09-10)
  [1880] Melksham Chamber of Commerce, or the FSB - (2008-11-12)
  [1881] Wiltshire Council says - part 1 - (2008-11-13)
  [1892] Melksham Chamber of Commerce and Industry - (2008-11-17)
  [1934] Lidl opens in Melksham - (2008-12-11)
  [1979] Looking forward, in Melksham, in 2009 - (2009-01-05)
  [1987] One Cheer for Local Democracy - Asda in Melksham - (2009-01-11)
  [2043] Confidence, Customer Service and Tourism in Melksham - (2009-02-15)
  [2095] Blue Ridge and Melksham Chambers of Commerce - (2009-03-21)
  [2111] Business Networking for Melksham - 23rd April - (2009-04-01)
  [2119] Make your business a DESTINATION business - (2009-04-05)
  [2181] You cannot please all of the people all of the time - (2009-05-14)
  [2194] Melksham Business Map - Chamber of Commerce, Tourist Information and Town Council - (2009-05-21)
  [2220] Melksham Traders - where do we go? - (2009-06-05)
  [2260] Important - the future of Melksham / Chamber of Commerce - (2009-06-28)
  [2288] Wiltshire Community Area Partnerships - (2009-07-15)
  [2289] pre-Inaugural briefing - Melksham Community Area Partnership - (2009-07-15)
  [2328] Melksham - no trains, no southbound buses through the town - (2009-08-08)
  [2437] Wiltshire Unitary News - Chamber of Commerce Intelligence - (2009-10-04)
  [2459] New Web Site for Melksham Chamber of Commerce - (2009-10-18)
  [2465] Melksham Town - asleep or awake? - (2009-10-21)
  [2487] Melksham Forum - (2009-11-01)
  [2495] Planning the future of Wiltshire - (2009-11-07)
  [2508] Community Area Partnership - inaugural AGM - (2009-11-20)
  [2514] The road show has been - where now? - (2009-11-27)
  [2521] Melksham Market - Tuesdays, 09:00 to 14:00 - (2009-12-01)
  [2531] Melksham - new Tuesday Market - (2009-12-09)
  [2540] Rock and hard place .. and the relaxing right one won - (2009-12-18)
  [2544] Vision for Wiltshire - (2009-12-20)
  [2546] How well do you know Melksham - a quiz for Christmas - (2009-12-21)
  [2568] Forums for your Melksham and open source discussions - (2010-01-09)
  [2594] Melksham Area - your community view is sought - (2010-01-23)
  [2640] How is your tax pound spent? - (2010-02-18)
  [2666] Random thoughts on Melksham Town Planning and development - (2010-03-08)
  [2683] Car Parking in Melksham - (2010-03-18)
  [2725] How do our tactics help us meet the strategy, for the greater good? - (2010-04-16)
  [2770] Melksham Chamber of Commerce - Presidents report to AGM - (2010-05-19)
  [2779] The history and future of Melksham Chamber of Commerce - (2010-05-25)
  [2782] Tell the Melksham Chamber or you only have yourself to blame - (2010-05-26)
  [2827] Melksham - a gem in Wiltshire - (2010-06-26)
  [2837] Lorry Parking in Melksham - (2010-06-29)
  [2853] Transport in Wessex - today and into the future - (2010-07-04)
  [2867] Cycling in Melksham, and looking forward - (2010-07-11)
  [2872] Moved - Melksham Lorry Park - (2010-07-15)
  [2883] Melksham Oak - photos of the new community school - (2010-07-22)
  [2891] Wiltshire Council ask how they can help businesses - (2010-07-27)
  [2932] Getting into and out of Wiltshire towns .. a.k.a. Car Parking? - (2010-08-23)
  [2957] Welcome to Countrywides new Melksham store - (2010-09-15)
  [2959] A Melksham news roundup - (2010-09-18)
  [2982] Travel, Transport and Tourism - A vision for Melksham, 2026 - (2010-10-03)
  [2995] A river in Melksham is not just for boaters. - (2010-10-11)
  [3088] Melksham - two many councils? - (2010-12-16)
  [3113] Trowbridge and Melksham to Chippenham - more roadworks, even slower journey over the winter - (2010-12-30)
  [3117] Opportunities for Melksham - new businesses in the town - (2011-01-01)
  [3141] Wiltshire Rail services - a golden opportunity - (2011-01-21)
  [3162] Keep your business customer-friendly! - (2011-02-09)
  [3172] On consultations, car parking, and Melksham town centre - (2011-02-17)
  [3173] What is the Melksham Chamber of Commerce? - (2011-02-18)
  [3188] What proportion of the British Workforce still works a Monday to Friday, 9 to 5, week? - (2011-03-01)
  [3193] Melksham Campus - what, why, questions, concerns and how you can input - (2011-03-04)
  [3214] Melksham Campus - any last minute inputs from Melksham businesses? - (2011-03-26)
  [3217] Vandalism and riot from the minority - the effect - (2011-03-28)
  [3246] Melksham - the way forward. 26th April, Well House Manor - (2011-04-13)
  [3249] Events - Spring and Early Summer 2011 in Melksham - (2011-04-17)
  [3272] Melksham Car Parking - current charges and limits - (2011-05-01)
  [3275] Melksham Chamber of Commerce - grows to appoint new Press Officer. Welcome. Sam - (2011-05-02)
  [3279] Letter to The Editor - (2011-05-06)
  [3299] Presidents Report to Melksham Chamber of Commerce, 24.5.2011 - (2011-05-24)
  [3307] Melksham Community Radio launches - (2011-05-28)
  [3325] The Olympic Torch, and Melksham House - (2011-06-14)
  [3334] A lesson from the sporran market? - (2011-06-25)
  [3340] Summer Sunday Timetable - TransWilts Trains - (2011-06-30)
  [3343] Summer Sunday Train Service Starts - Swindon Chippenham and Melksham to Weymouth - (2011-07-03)
  [3380] Melksham Jelly - An Occasional Office for Home Workers - (2011-08-06)
  [3383] Are people who walk into Melksham being asked to subsidise parking? - (2011-08-09)
  [3420] Making best use of the new enthusiasm for Melksham - (2011-09-05)
  [3423] 1 + 1 + 1 + 1 = 12? - (2011-09-07)
  [3427] What is on the Melksham Agenda? - (2011-09-09)
  [3438] Melksham to become a part of Trowbridge? - (2011-09-13)
  [3470] Currently pictured in Melksham - (2011-10-09)
  [3475] Havant - Shop Frontages. - (2011-10-12)
  [3481] Some thoughts in answer to some Melksham Campus questions - (2011-10-14)
  [3492] Upcoming events in and about Melksham - more dates for your diary - (2011-10-22)
  [3495] Looking forward - Chamber of Commerce has 2012 and beyond on the agenda - (2011-10-26)
  [3496] Melksham - Business to Business Speed Networking - build ahead for 2012 - (2011-10-26)
  [3527] Melksham - changing times, an opportunity for the future - (2011-11-23)
  [3560] Melksham, Month by month through 2011 - (2011-12-23)
  [3598] Melksham Civic Awards - report and pictures - (2012-01-29)
  [3627] Meeting Report - Tuesday 21st Feb - to Melksham Chamber of Commerce from Shadow Community Operations Board - (2012-02-27)
  [3663] Changing shops and organisations - Melksham, the last and next five years - (2012-03-21)
  [3672] Melksham Train Service - please support the TransWilts case for regular trains - (2012-03-25)
  [3677] Some advise for guest speakers at meetings - (2012-03-31)
  [3682] Melksham Business Newsreel - (2012-04-03)
  [3693] Wiltshire Business Support Service - (2012-04-11)
  [3696] Melksham government and business organisations - (2012-04-14)
  [3697] Events in Melksham - read all about them, and tell us about yours - (2012-04-15)
  [3700] Why do people use chains rather than independent traders? - (2012-04-18)
  [3706] An exciting Chamber of Commerce AGM - sound like an Oxymoron? - (2012-04-25)
  [3710] Encouraging business in Melksham and its neighbourhood - keep business local?? - (2012-04-27)
  [3714] Just 12 winners? Or 371 or more? Town Centres. - (2012-04-30)
  [3732] Ten more visitors to your premises every day? - (2012-05-14)
  [3739] Go green - business seminar in Melksham - (2012-05-21)
  [3748] Not everyone has a computer - 9 more ways to learn about the Melksham Campus - (2012-06-03)
  [3751] Public transport for international arrivals into Melksham - (2012-06-04)
  [3752] Melksham Visitors Map - Bus routes and train lines to and from the town - (2012-06-04)
  [3767] How well do you know Melksham? - (2012-06-17)
  [3768] Melksham Chamber of Commerce - looking to our future shape. Pivotal meeting next Tuesday - (2012-06-19)
  [3787] Melksham Pride - the Chamber of Commerce, and the future - (2012-06-29)
  [3812] The Melksham News - July 2012 - Part 1, Campus and Chamber of Commerce - (2012-07-22)
  [3818] Making things happen - litter and ASB and lost dogs in Melksham - (2012-07-25)
  [3850] Bus times - Chippenham Station to Melksham, with London connections - (2012-08-25)
  [3867] The difficult interface between the business, council and voluntary sectors - (2012-09-19)
  [3880] Chamber of Commerce - looking forward in Melksham and in Wessex - (2012-10-04)
  [3889] Melksham Chamber of Commerce - whence in 2013 and beyond? - (2012-10-12)
  [3948] Quiet little town? Advanced Technology Centre? - (2012-12-08)
  [3987] Melksham Chamber of Commerce - join us in our future - (2013-01-21)
  [4002] Images of Melksham you havent seen before - (2013-02-13)
  [4014] Costa Coffee in Melksham - is it a good idea? - (2013-02-22)
  [4041] Report on the last year - Melksham Chamber of Commerce and Industry for Melksham Without Parish Council - (2013-03-11)
  [4046] Over a hundred welcoming businesses - Melksham Town Centre - (2013-03-17)
  [4097] Melksham Chamber of Commerce - Report for AGM, 21st May 2013 - (2013-05-21)
  [4103] Questions from children about Melksham Campus - (2013-05-26)
  [4151] Tell me a bit about Melksham - (2013-08-10)
  [4164] Melksham Market - every Tuesday - (2013-09-03)
  [4170] Herman Miller coming to Melksham - the Chamber of Commerce is briefed - (2013-09-10)
  [4278] Future Swindon - Westbury train services. At current level into the future? - (2014-05-25)
  [4399] The Campus in Melksham - name, logo, and livery choice - (2015-01-18)
  [4672] Annual review of Melksham Matters for Chamber of Commerce AGM - (2016-05-15)
  [4738] Melksham Chamber of Commerce - my final Presidents report - (2017-05-10)

S157 - More MySQL commands
  [158] MySQL - LEFT JOIN and RIGHT JOIN, INNER JOIN and OUTER JOIN - (2004-12-20)
  [159] MySQL - Optimising Selects - (2004-12-21)
  [279] Getting a list of unique values from a MySQL column - (2005-04-14)
  [449] Matching in MySQL - (2005-09-24)
  [494] MySQL - a score of things to remember - (2005-11-12)
  [502] SELECT in MySQL - choosing the rows you want - (2005-11-22)
  [513] MySQL - JOIN or WHERE to link tables correctly? - (2005-12-01)
  [515] MySQL - an FAQ - (2005-12-03)
  [517] An occasional chance, and reducing data to manageable levels - (2005-12-04)
  [567] Combining similar rows from a MySQL database select - (2006-01-17)
  [572] Giving the researcher power over database analysis - (2006-01-22)
  [581] Saving a MySQL query results to your local disc for Excel - (2006-01-29)
  [591] Key facts - SQL and MySQL - (2006-02-04)
  [673] Helicopter views and tartans - (2006-04-06)
  [1213] MySQL - the order of clauses and the order of actions - (2007-06-01)
  [1235] Outputting numbers as words - MySQL with Perl or PHP - (2007-06-17)
  [1331] MySQL joins revisited - (2007-09-03)
  [1574] Joining MySQL tables revisited - finding nonmatching records, etc - (2008-03-15)
  [1735] Finding words and work boundaries (MySQL, Perl, PHP) - (2008-08-03)
  [2110] MySQL - looking for records in one table that do NOT correspond to records in another table - (2009-03-31)
  [2259] Grouping rows for a summary report - MySQL and PHP - (2009-06-27)
  [2448] MySQL - efficiency and other topics - (2009-10-10)
  [2643] Relating tables with joins in MySQL - (2010-02-21)
  [2644] Counting rows in joined MySQL tables - (2010-02-22)
  [2645] Optimising and caching your MySQL enquiries - (2010-02-22)
  [2647] Removing duplicates from a MySQL table - (2010-02-22)
  [3061] Databases - why data is split into separate tables, and how to join them - (2010-11-20)
  [3270] SQL - Data v Metadata, and the various stages of data selection - (2011-04-29)
  [4481] Extracting data from backups to restore selected rows from MySQL tables - (2015-05-01)

R104 - Ruby - Control Structures
  [960] 1st, 2nd, 3rd revisited in Ruby - (2006-12-02)
  [962] Breaking a loop - Ruby and other languages - (2006-12-03)
  [985] Equality in Ruby - == eql? and equal? - (2006-12-14)
  [995] Ruby's case - no break - (2006-12-17)
  [1163] A better alternative to cutting and pasting code - (2007-04-26)
  [1220] for loop - how it works (Perl, PHP, Java, C, etc) - (2007-06-06)
  [1582] Ruby, C, Java and more - getting out of loops - (2008-03-19)
  [1587] Some Ruby programming examples from our course - (2008-03-21)
  [1696] Saying NOT in Perl, PHP, Python, Lua ... - (2008-07-04)
  [1738] Clean code, jump free (Example in Lua) - (2008-08-06)
  [1870] What to do with a huge crop of apples - (2008-11-04)
  [1887] Ruby Programming Course - Saturday and Sunday - (2008-11-16)
  [1891] Ruby to access web services - (2008-11-16)
  [2287] Learning to program in Ruby - examples of the programming basics - (2009-07-15)
  [2471] A short form of if ... then ... else - (2009-10-23)
  [2619] Passing code to procedures and yield in Ruby - (2010-02-02)
  [2711] For loop - checked once, or evety time? Ruby v Perl comparison and contrast - (2010-04-07)
  [2892] Alternative loops and conditionals in Ruby and Perl - (2010-07-28)
  [2975] Why do I need brackets in Ruby ... or Perl, Python, C or Java - (2010-09-29)
  [3156] Splitting data reading code from data processing code - Ruby - (2011-02-04)
  [3158] Ruby training - some fresh examples for string handling applications - (2011-02-05)
  [3159] Returning multiple values from a function call in various languages - a comparison - (2011-02-06)
  [3200] How a for loop works Java, Perl and other languages - (2011-03-12)
  [3253] Is this number between? Does this list include? - Ruby - (2011-04-18)
  [3254] Multiple inputs, multiple out, ruby functions - (2011-04-19)
  [3397] Does a for loop evaluate its end condition once, or on every iteration? - (2011-08-18)
  [3422] Assigning values to variables within other statements - Ruby - (2011-09-07)
  [3619] Ruby v Perl - a comparison example - (2012-02-21)
  [3620] Finding the total, average, minimum and maximum in a program - (2012-02-22)
  [3769] Muttable v immutable and implications - Ruby - (2012-06-20)
  [4322] Learning to Program - the conditional statement (if) - (2014-11-21)
  [4323] Learning to program - Loop statements such as while - (2014-11-22)
  [4370] Conditionals, loops and methods in Ruby - a primer with simple examples - (2014-12-29)
  [4402] Finding sum, minimum, maximum and average in Python (and Ruby) - (2015-01-19)
  [4503] Separating your code for easier testing, understanding and re-use; example in Ruby - (2015-06-02)
  [4504] Where does Ruby load modules from, and how to load from current directory - (2015-06-03)
  [4674] Alternating valuses / flip-flop / toggle - example in Ruby - (2016-05-17)

P308 - Using SQL Databases from Perl
  [644] Using a MySQL database from Perl - (2006-03-13)
  [975] Answering ALL the delegate's Perl questions - (2006-12-09)
  [1224] Object Relation Mapping (ORM) - (2007-06-09)
  [1885] Hiding a MySQL database behind a web page - (2008-11-15)
  [2381] Checking the database connection manually - (2009-08-28)
  [2561] The future of MySQL - (2010-01-03)
  [3099] Perl - database access - DBD, DBI and DBIx modules - (2010-12-22)

M300 - Well House Manor - Behind the scenes
  [203] Holes in on line information - (2005-02-05)
  [677] Sympathetic development - (2006-04-09)
  [742] A visit from the solicitor - (2006-06-03)
  [769] King Edward VII - days of empire - (2006-06-20)
  [813] Monday Morning at Well House Consultants Melksham - (2006-07-24)
  [868] Smoking, or no - (2006-09-16)
  [897] Too much for the National Trust - (2006-10-18)
  [927] Hotel door furniture - (2006-11-15)
  [931] Before and After - Well House Manor - (2006-11-18)
  [939] Swipe cards for hotel rooms - Security issues - (2006-11-23)
  [951] What happened at Geekmas - (2006-11-28)
  [1000] One Thousand Posts and still going strong - (2006-12-18)
  [1083] Behind the scenes - (2007-02-17)
  [1105] A week is a long time in the life of a conference centre - (2007-03-10)
  [1159] It can take more that one plus one to get two. - (2007-04-22)
  [1179] Sizing sheets and other domestic issues - (2007-05-07)
  [1189] Meet, greet and welcome - (2007-05-16)
  [1285] In the army, or in civvie street? - (2007-07-31)
  [1311] What do people look for on a hotel web site? - (2007-08-20)
  [1319] Customer feedback - lifeblood of a business - (2007-08-25)
  [1369] One business, four different angles! - (2007-09-28)
  [1371] Hotel in Melksham at Christmas - (2007-09-29)
  [1441] On cancellations, rebooking, and pricing schemes - (2007-11-22)
  [1490] Software to record day to day events and keep an action list - (2007-12-31)
  [1515] Keeping staff up to date on hotel room status - (2008-01-22)
  [1520] Terms and Conditions - Hotel, England - plain English - (2008-01-26)
  [1571] Await guests in the early hours - (2008-03-12)
  [1637] Providing exceptional service - and carrying on doing so. - (2008-05-09)
  [1854] Three Seasonal Pictures - (2008-10-25)
  [1900] Table Topics - (2008-11-22)
  [1948] Blame Culture - (2008-12-17)
  [1957] Why are cooks bad tempered? - (2008-12-22)
  [1973] Required Request - (2009-01-03)
  [1991] Rules for a King - (2009-01-13)
  [2125] We have lost a regular business guest - (2009-04-10)
  [2247] A day in the life of a hotelier - (2009-06-18)
  [2396] Easing off in our 50s? - (2009-09-06)
  [2910] Robust - testing the system - (2010-08-09)
  [2916] Testing the robustness of our hotel and training systems - holiday and sickness times - (2010-08-11)
  [2960] The Well House team - September 2010 - (2010-09-19)
  [2961] Initial handling of phone calls and walk in visitors - (2010-09-19)
  [3093] How many toilet rolls - hotel inventory and useage - (2010-12-18)
  [3743] Sunday - no longer a day of rest - (2012-05-28)
  [3844] Rooms ready for guests - each time, every time, thanks to good system design - (2012-08-20)
  [3961] Well House Staff Party - (2012-12-22)
  [4302] Sunday is never quiet at Well House Manor - (2014-09-21)
  [4365] The changing face of Christmas - (2014-12-26)

G205 - Well House Consultants - Food and Drink.
  [36] Tesco at 5 - (2004-09-02)
  [184] MTBF of coffee machines - (2005-01-20)
  [207] Canteen Dragon - (2005-02-09)
  [211] Look after your staff and they'll look after you. AOL. - (2005-02-12)
  [221] Lunchtime Drink - (2005-02-20)
  [302] Dining full circle - (2005-05-06)
  [456] Laying out a vegetarian lunch - (2005-10-05)
  [1332] Melksham Hotel - Five Star Kitchen! - (2007-09-04)
  [1843] How many cups of coffee? - (2008-10-17)
  [2590] A healthy, local breakfast in Melksham - (2010-01-19)
  [2591] Melksham Hotel, B and B or business accommodation? - (2010-01-20)
  [2784] Course Lunches - (2010-05-27)
  [3182] What we look for in a lunchtime cafe restaurant in Melksham - (2011-02-24)
  [3199] Lunch for Melksham Businesses - (2011-03-11)
  [3233] C / C++ Course Lunch - sitting out at the West End - (2011-04-07)
  [3387] Eating out in Melksham - where we like for lunch. - (2011-08-11)
  [4415] Buffet review - taking the price into account - (2015-02-05)

A167 - Web Application Deployment - Shell Programming (bash)
  [63] Almost like old times - (2004-09-26)
  [64] Shell Script for CGI on the web - (2004-09-26)
  [749] Cottage industry or production line data handling methods - (2006-06-07)
  [827] No news is good news with Unix and Linux - (2006-08-10)
  [1287] Work and play at Well House Manor - Football and Shell Shortcuts - (2007-08-02)
  [1345] Perl and Shell coding standards / costs of an IT project - (2007-09-11)
  [1468] Lexical v Arithemetic testing, Bash and Perl - (2007-12-11)
  [1527] Selecting file names in a shell - one word or another - (2008-02-02)
  [3791] The Kernel, Shells and Daemons. Greek Gods in computing - (2012-07-01)
  [4400] Commenting out an echo killed my bash backup script - (2015-01-19)
  [4487] Starting MySQL. ERROR! The server quit without updating PID file - how we fixed it. - (2015-05-06)
  [4584] Bash ... some new scripts to - handling user input - (2015-11-27)
  [4586] Extending your bash shell with aliases, functions and extra commands - (2015-11-28)
  [4587] shell - bash. Writing conditional tests and statements - the options available - (2015-11-28)

A163 - Web Application Deployment - Network Configuration and Security
  [11] A bolt of lightning on Multicasting - (2004-08-11)
  [37] Security and Safety - (2004-09-03)
  [267] Searching security holes - (2005-04-04)
  [332] Looking up IP addresses - (2005-06-01)
  [506] What are DHCP and DNS? - (2005-11-27)
  [511] Domain Forwarding - 2 ways of doing it - (2005-11-29)
  [1073] Heartbeat script in Perl - (2007-02-09)
  [1408] Wireless hotel tips - FTP and Skype connections failing - (2007-10-26)
  [1666] Slow boot and terminal start on Linux boxes - (2008-06-05)
  [1712] As different as night and tyres - (2008-07-18)
  [2052] How was my web site compromised? - (2009-02-24)
  [2489] Parallel Pinging, using Python Threads or Expect spawn lists - (2009-11-02)
  [3448] Checking all the systems on a subnet, using Expect and Tk - (2011-09-18)
  [4134] Setting up your MacBook Air as a mobile broadband router - (2013-07-07)

A161 - Web Application Deployment - Users and Groups
  [409] Functions and commands with dangerous names - (2005-08-11)
  [431] File permissions of Linux and Unix systems - (2005-08-31)
  [683] Supporting users on Linux and Unix - (2006-04-13)
  [1592] Setting up a new user - Linux or Unix - (2008-03-26)
  [1619] User and Group settings for Apache httpd web server - (2008-04-22)
  [1650] Looking for files with certain characteristics (Linux / Unix) - (2008-05-22)
  [1773] The Longest Possible Day - (2008-08-26)
  [1902] sstrwxrwxrwx - Unix and Linux file permissions - (2008-11-23)
  [2103] Ask the Tutor - Open Source forum - (2009-03-25)
  [2117] Choosing a railway station fairly in PHP - (2009-04-04)
  [2203] Always use su with minus. And where do programs come from? - (2009-05-27)
  [2301] Mistaken identity? - (2009-07-22)
  [2491] Root is root for a reason! - (2009-11-03)
  [2639] su or su - ... what is the difference? - (2010-02-17)
  [4045] Linux Web Server - User Roles, User Accounts, and shared administration - (2013-03-16)

A101 - Web Application Deployment - Linux -An Introduction For Users
  [73] vi - full circle - (2004-10-04)
  [74] pushd and popd - (2004-10-05)
  [152] Aladdin, or careful what you wish. - (2004-12-15)
  [249] An easy way out - (2005-03-17)
  [430] Linux commands - some basics - (2005-08-31)
  [593] Finding where the disc space has gone - (2006-02-06)
  [659] Web Application Components - (2006-03-28)
  [679] More or less on the edge of the page - (2006-04-11)
  [703] Copying files and preserving ownership - (2006-04-28)
  [710] Linux training Glasgow, Python programming course Dundee - (2006-05-05)
  [711] THE home directory or MY home directory - (2006-05-06)
  [984] Cardinal numbers and magic numbers - (2006-12-14)
  [1012] Moving files between Windows / DOS and Linux / Unix - (2006-12-30)
  [1013] Copy multiple files - confusing error message from cp - (2006-12-30)
  [1068] ls -l report, Linux / Unix - types and permssions - (2007-02-06)
  [1259] Where am I and how did I get here? - (2007-07-05)
  [1288] Linux run states, shell special commands, and directory structures - (2007-08-03)
  [1366] awk - a powerful data extraction and manipulation tool - (2007-09-25)
  [1438] Copy and paste / cut and paste and other vi techniques - (2007-11-20)
  [1651] ls command - favourite options - (2008-05-23)
  [1764] Yank and Push - copy and move in vi - (2008-08-21)
  [1803] FTP passive mode - a sometimes cure for upload hangs - (2008-09-20)
  [1893] Some Linux and Unix tips - (2008-11-18)
  [1897] Keeping on an even keel - (2008-11-21)
  [2201] Running straight from the jar, but not from a tar - (2009-05-26)
  [2299] How much space does my directory take - Linux - (2009-07-20)
  [2300] What does x on a linux directory mean? - (2009-07-21)
  [2479] Accidentally typed ci rather than vi? - (2009-10-27)
  [2494] Making Linux Politically correct - (2009-11-06)
  [2636] Linux - useful tips including history and file name completion - (2010-02-15)
  [2831] Recording (a macro) in vi - (2010-06-27)
  [3179] Oops - I typed ci not vi, and have lost my file ... - (2011-02-21)
  [3256] Displaying a directory or file system tree - Linux - (2011-04-22)
  [3819] Packing a tar, jar or war file - best practise - (2012-07-26)


Back to
daemons - what is running on my Linux server?
Previous and next
or
Horse's mouth home
Forward to
A Gold Star for First Great Western Customer Service
Some other Articles
Java CLASSPATH explained
Melksham Hotel Rates
Long, Longer, Longest in Java
A Gold Star for First Great Western Customer Service
Ruby, Perl, Linux, MySQL - some training notes
daemons - what is running on my Linux server?
XML, HTML, XHTML and more
Virtual Hosting under Tomcat - an example
4759 posts, page by page
Link to page ... 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96 at 50 posts per page


This is a page archived from The Horse's Mouth at http://www.wellho.net/horse/ - the diary and writings of Graham Ellis. Every attempt was made to provide current information at the time the page was written, but things do move forward in our business - new software releases, price changes, new techniques. Please check back via our main site for current courses, prices, versions, etc - any mention of a price in "The Horse's Mouth" cannot be taken as an offer to supply at that price.

Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).

You can Add a comment or ranking to this page
Hello. I'm Graham Ellis. If you have a question about the hotel, please ask me or

 

then book here

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

PAGE: http://www.wellho.net/mouth/1904_.html • PAGE BUILT: Sun Oct 11 16:07:41 2020 • BUILD SYSTEM: JelliaJamb