Training is a great line of work for the small business such as Well House Consultants; we can deliver an excellent and personalised service, and our customers don't
rely on us being around to provide after sales service ... buying a course is NOT like buying a vacuum cleaner where you want to be reassured that you can go back into the shop later if you need spare parts or if it needs a repair. So organisations big and small place business with us without a lot of checks into our long term viability. We make it even easier for them by NOT requiring any up front payment either (though we may ask for a credit card guarantee or a deposit if we're not dealing with a well established UK organisation). ((
Link to full terms and conditions))
But then ... we're delighted to end up providing MUCH MORE than the customer expects in terms of after sales service. From my postbag (or rather my email box) "How do you ever find time to answer all the stupid questions raised by the ever-growing ranks of your past students". Not only do I find time, but I delight in finding the time to answer questions that are very rarely stupid. It's our lifeblood
a) It helps me know what people are asking about after the course so that I can consider including it or clarifying in the future
b) It helps people who have got stopped on what is, perhaps, a tiny issue that they can't see the way round to move forward - chances are that I've "been there before"
c) Via our
forum, it helps build up a library of answers that can be of service to others whether our customers or if they find us via Google
d) And it helps in our business development by keeping us in positive touch with a wide range of contacts - networking with folks who may want further services from us, or who may tell others about us.
Here's an example - a follow up to a question about extending lists in Perl - we cover
advanced lists and hashes on our
Perl for larger projects course.
__START__
# Autovivification in Perl
# When you print out a new element of a list, that new element
# is NOT created. However, when you print out an element of a
# list within a new list, that new list IS created; it has to be
# so that Perl can work out the extra stuff it needs. So
# First example - print $stuff[2] does NOT extend @stuff
@stuff = ([10,20],[30,40]);
@more = (50,60);
print $stuff[2],"\n";
push @stuff,\@more;
print "@stuff\n";
# Second example - print $stuff[2][2] DOES extend @stuff
@stuff = ([10,20],[30,40]);
@more = (50,60);
print $stuff[2][2],"\n";
push @stuff,\@more;
print "@stuff\n";
# Graham
__END__
earth-wind-and-fire:~ grahamellis$ perl prd
ARRAY(0x801180) ARRAY(0x8012dc) ARRAY(0x809f24)
ARRAY(0x80cb08) ARRAY(0x80cb44) ARRAY(0x80cb68) ARRAY(0x809f24)
earth-wind-and-fire:~ grahamellis$
(written 2005-04-27, updated 2006-06-05)
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articles
P217 - Perl - More than Simple Lists and Hashes! [43] Hash of lists in Perl - (2004-09-09)
[1514] Autovivification - the magic appearance of variables in Perl - (2008-01-21)
[2241] Perl references - $$var and \$var notations - (2009-06-15)
[2840] Just pass a pointer - do not duplicate the data - (2010-06-30)
[2877] Further more advanced Perl examples - (2010-07-19)
[2996] Copying - duplicating data, or just adding a name? Perl and Python compared - (2010-10-12)
[3007] Setting up a matrix of data (2D array) for processing in your program - (2010-10-21)
[3072] Finding elements common to many lists / arrays - (2010-11-26)
[3105] Adventure with references to lists and lists of references - (2010-12-26)
[3118] Arrays of arrays - or 2D arrays. How to program tables. - (2011-01-02)
[3399] From fish, loaves and apples to money, plastic cards and BACS (Perl references explained) - (2011-08-20)
[3406] Not multidimentional arrays - but lists of lists. Much more flexible. Perl! - (2011-08-26)
[3444] Take the dog on a lead - do not carry her. Perl references. - (2011-09-17)
[3577] How to do multidimensional arrays (or rather lists and hashes) in Perl - (2012-01-14)
[3906] Taking the lead, not the dog, for a walk. - (2012-10-28)
G305 - Well House Consultants - Post Course support [136] Please tell us - (2004-12-01)
[199] Post course support - part of the service - (2005-02-02)
[244] Getting your examples, my examples and the data files after your course - (2005-03-13)
[248] Use me, but use me effectively - (2005-03-16)
[327] How far should our support go - (2005-05-28)
[336] Targetted Advertising - (2005-06-05)
[389] Tough Love - (2005-07-25)
[509] Snippets from Geekmas - (2005-11-28)
[516] Open source questions? Anyone can ask. - (2005-12-03)
[569] Instructions for bright people - (2006-01-19)
[609] Been on a course, but still not got it? - (2006-02-16)
[651] Please Register with Opentalk - but just once! - (2006-03-19)
[1245] Ensuring that our tutor answers YOUR questions - (2007-06-25)
[1874] Is it worth it? - (2008-11-07)
[2102] What do people think of our Apache httpd / Tomcat course? - (2009-03-24)
[2732] Asking about Jesus - (2010-04-20)
[3045] After Course Resources - do we publish sample answers. Example from Java Exceptions module. - (2010-11-13)
[3391] For programmers who use Internet Explorer as their browser - (2011-08-13)
[3419] Data that we use during our training courses, and other training resources - (2011-09-04)
[3701] Refresh and Revision training class days - Perl / PHP / Python / Lua / Ruby / Tcl / C / C++ - (2012-04-19)
[3770] Sample answers to training course exercises - available on our web site - (2012-06-21)
[4588] What teach you in a week stays with you for a decade - (2015-11-29)
Some other Articles
A reminder that the customer is KingUsing a Python dictionary as a holder of object attributesPricing strategy - simple and fairPython generator functions, lambdas, and iteratorsCourse follow-upsElegant languages - Perl, PHP, PythonWhy are we no. 404Object Orientation in Tcl - [incr-Tcl]MP for Devizes, WiltshireColour blindness for web developers