Ostensibly, I'm giving a MySQL course. A client who has a large and complex data base and needs many staff to be able to make ad-hoc enquiries. Server is Linux, and regular (standard) enquiries will be via a browser fed by a PHP Page from a web server.
In other words L-A-M-P or LAMP. Linux, Apache, MySQL and PHP.
Four very new technologies to their team who are much more from a mainframe and / or windows background.
Everyone's requirement is unique ... but such uniqueness if often related more to the flavour and the balance of the technologies rather than them being totally different. It stuck me yesterday, and over the weekend at Geekmas, just how many skills we have here at Well House Consultants - how we'll swap back and forth between all those technologies. We already offer a
LAMP Deployment course ... but we have more scope too. Now sure how we would structure a public course as there are too many variables but as a private course, elements could be taken:
Building a Dynamic Web Presence
* HTML and more than HTML (XHTML, DHTML, form design)
* Virtual pages through mod_rewrite and other techniques
* Changeable content with PHP
* HTML - CSS - SQL - Image libraries
* Advertising Standards, Disability Discrimination
* Acceptable User Policies
* Data Mining to provide the visitors each with correct content
* Using your own and other search engines in your site
* Remembering visitors
* Locating visitors by their countries of origin and interest
* Search Engine Placement and optimisation
* Browser recognition; Javascript, AJAX
* Injection attacks, denial of service attacks and other security issues
* Avoiding 404 errors - making the URL work for the user
* Reading and analysing log files and trends
* Mobile Phone Users and making the site good for them
* Sessions
* Avoiding multiple logins.
* Booking and ordering systems
* Wiki and other content management systems.
* Easily maintaining your content - MVC model and others
* MT, Yabb, SMF, OSCommerce, Plone etc.
* Perl - Python - XML ...
* Code re-use and standards.
Amazing thing is ... give me an enquiry for a private course to cover a selection of almost any of these subjects and we've already got all the resources in place to do it!
Update - September 2008 - I have added a simple Ajax Example
here, and Ajax
is now covered on our
PHP Techniques Workshop
(written 2005-11-29, updated 2008-09-27)
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articles
W512 - Web and Intranet - Site Design Aspects [229] A fortunate accident - (2005-02-27)
[261] Putting a form online - (2005-03-29)
[288] Colour blindness for web developers - (2005-04-22)
[319] Accommodation and landing pages - (2005-05-21)
[345] Spotting a denial of service attack - (2005-06-12)
[352] Improved mining techniques! - (2005-06-19)
[391] One mans pleasure is another mans poison - (2005-07-26)
[556] Colour doesn't have to mean colourful - (2006-01-06)
[649] Denial of Service ''attack'' - (2006-03-17)
[718] Protecting images from theft - (2006-05-12)
[795] Remember a site's non-technical issues too - (2006-07-07)
[823] An excellent use for a visitor count? - (2006-08-05)
[859] Put the answer in context - it may be printed - (2006-09-08)
[918] Databases needn't be frightening, hard or expensive - (2006-11-08)
[1015] Search engine placement - long term strategy and success - (2006-12-30)
[1047] Maintainable code - some positive advice - (2007-01-21)
[1054] UK legal requirements for your commercial web site - (2007-01-27)
[1353] Mood shots - (2007-09-16)
[1598] Every link has two ends - fixing 404s at the recipient - (2008-04-02)
[2214] Global Index to help you find resources - (2009-06-01)
[3517] Tags used in writing this blog - (2011-11-12)
[3563] How big is a web page these days? Does the size of your pages matter? - (2011-12-26)
[3589] Promoting a single one of your domains on the search engines - (2012-01-22)
G902 - Well House Consultants - Web site techniques, utility and visibility [23] Skills and responsibilities - (2004-08-22)
[32] Web design platoon - (2004-08-29)
[98] No more 'Error 404' pages. Something better. - (2004-10-24)
[109] URLs - a service and not a hurdle - (2004-11-04)
[117] A case of case - (2004-11-14)
[142] Colour for access - (2004-12-06)
[165] Implementing an effective site search engine - (2005-01-01)
[173] Data Mining - (2005-01-09)
[179] The hunt for unique words - (2005-01-16)
[182] Your personal Google ranking - (2005-01-19)
[197] Allow for peak traffic on your web site - (2005-02-01)
[202] Searching for numbers - (2005-02-04)
[222] Who are all these visitors? - (2005-02-20)
[259] Responding to spam - (2005-03-27)
[268] Information request forms, cleaning up spam - (2005-04-05)
[274] Our most popular resources - (2005-04-10)
[276] An apology to Mr Boneparte - (2005-04-11)
[278] Cover all the options - (2005-04-13)
[284] The Iconish language - (2005-04-19)
[311] Growth pains - (2005-05-14)
[314] What language is this written in? - (2005-05-17)
[320] Ordnance Survey - using a 'Get a map' - (2005-05-22)
[322] More maps - (2005-05-23)
[347] Frightening and from-friend viruses and spams - (2005-06-14)
[348] Graveyard pages - (2005-06-15)
[369] CMS - the minefield of Choices - (2005-07-05)
[376] What brings people to my web site? - (2005-07-13)
[414] Form Madness - (2005-08-14)
[492] New Navigation Aid - Launch of My Wellho - (2005-11-11)
[528] Getting favicon to work - avoiding common pitfalls - (2005-12-14)
[533] Bigger Box Campaign - (2005-12-18)
[658] Keeping the visitors happy and browsing - (2006-03-26)
[681] Mirroring a dynamic site - (2006-04-12)
[732] Where is a web site visitor browsing from - (2006-05-24)
[757] Horse and Python training - (2006-06-12)
[767] Finding the language preference of a web site visitor - (2006-06-18)
[800] Effective web campaign? - (2006-07-12)
[893] Visibility - (2006-10-14)
[916] Driving customers away - (2006-11-07)
[976] Santa at the station - (2006-12-09)
[994] Training on Cascading Style Sheets - (2006-12-17)
[1029] Our search engine placement is dropping. - (2007-01-11)
[1055] Above the fold - (2007-01-28)
[1104] Drawing dynamic graphs in PHP - (2007-03-09)
[1177] Sorting out for a site map - (2007-05-05)
[1184] Finding resources - some pointers - (2007-05-13)
[1186] Two new pages / sites - (2007-05-14)
[1198] From Web to Web 2 - (2007-05-21)
[1207] Simple but effective use of mod_rewrite (Apache httpd) - (2007-05-27)
[1212] What brought YOU to our web site? - (2007-06-01)
[1237] What proportion of our web traffic is robots? - (2007-06-19)
[1297] Stuffing content into a web page - easy maintainance - (2007-08-09)
[1437] Above the fold with First Great Western - (2007-11-19)
[1494] A time to update pictures - (2008-01-03)
[1505] Script to present commonly used images - PHP - (2008-01-13)
[1506] Ongoing Image Copyright Issues, PHP and MySQL solutions - (2008-01-14)
[1513] Perl, PHP or Python? No - Perl AND PHP AND Python! - (2008-01-20)
[1534] Where in the world / country is my visitor from? - (2008-02-07)
[1541] Colour, Composition or Content - (2008-02-16)
[1554] Online hotel reservations - Melksham, Wiltshire (near Bath) - (2008-02-24)
[1610] PHP course dot co, dot uk - (2008-04-13)
[1630] To provide external links, or not? - (2008-05-04)
[1634] Kiss and Book - (2008-05-07)
[1653] How do Google Ads work? - (2008-05-25)
[1711] Rapid growth leads to server move - (2008-07-17)
[1747] Who is watching you? - (2008-08-10)
[1756] Ever had One of THOSE mornings? - (2008-08-16)
[1793] Which country does a search engine think you are located in? - (2008-09-11)
[1797] I have been working hard but I do not expect you noticed - (2008-09-14)
[1833] Web Bloopers - good form design - avoiding pitfalls - (2008-10-11)
[1856] A few of my favourite things - (2008-10-26)
[1888] Find the link - (2008-11-16)
[1955] How to avoid duplicating web page maintainance - (2008-12-20)
[1961] Making our things easier to find - (2008-12-26)
[1970] Plagarism - who is copying my pages? - (2009-01-02)
[1982] Cooking bodies and URLs - (2009-01-08)
[2056] Web Site Loading - experiences and some solutions shared - (2009-02-26)
[2065] Static mirroring through HTTrack, wget and others - (2009-03-03)
[2225] How important is a front page ranking on a search engine? - (2009-06-09)
[2332] Formation, des langages Open Source - (2009-08-09)
[2333] Formaci[83][c2]ón, de los lenguajes de c[83][c2]ódigo abierto - (2009-08-09)
[2334] Formazione, Open Source computer lingue - (2009-08-09)
[2335] Ausbildung, die Open-Source-Sprachen - (2009-08-09)
[2336] Forma[83][c2]ç[83][c2]ão, Open Source computador l[83][c2]ínguas - (2009-08-09)
[2337] Opleiding, Open Source computertalen - (2009-08-09)
[2338] Uddannelse, Open Source computer sprog - (2009-08-09)
[2339] Oppl[83][c2]æring, Open Source datamaskinen spr[83][c2]åk - (2009-08-09)
[2340] ldning, Open Source dator spr[83][c2]åk - (2009-08-09)
[2341] Koulutus, Open Source tietokone kielill[83][c2]ä - (2009-08-09)
[2389] Writing with our customers words - (2009-09-01)
[2410] Removal of technical resources from this site - (2009-09-19)
[2519] Status Page / breaks of service in early December - (2009-11-30)
[2532] Analysing Google arrivals by country of origin - (2009-12-10)
[2552] Web site traffic - real users, or just noise? - (2009-12-26)
[2569] How to run a successful online poll / petition / survey / consultation - (2010-01-10)
[2668] Is it worth it? - (2010-03-09)
[2981] How to set up short and meaningfull alternative URLs - (2010-10-02)
[3022] Retaining web site visitors - reducing the one page wonders - (2010-10-31)
[3087] Making the most of critical emails - reading behind the scene - (2010-12-16)
[3149] Looking back at www.wellho.net - (2011-01-28)
[3197] Finding and diverting image requests from rogue domains - (2011-03-08)
[3367] Google +1 - what is it? - (2011-07-22)
[3426] Automed web site testing scripted in Ruby using watir-webdriver - (2011-09-09)
[3491] Who is knocking at your web site door? Are you well set up to deal with allcomers? - (2011-10-21)
[3532] Sharing the user experience - designing a form with the customer in mind - (2011-11-29)
[3554] Learning more about our web site - and learning how to learn about yours - (2011-12-17)
[3623] Some TestWise examples - helping use Ruby code to check your web site operation - (2012-02-24)
[3734] QR codes with marketing logos embedded - (2012-05-16)
[3744] Short Web Addresses for Melksham - (2012-05-30)
[3745] Legal change - You need to obtain user consent if you use cookies on your website - (2012-06-01)
[3776] Some traps it's so easy to fall into in designing your web site - (2012-06-23)
[3896] An email marathon - (2012-10-15)
[3974] TV show appearance - how does it effect your web site? - (2013-01-13)
[4001] Helping search engines with appropriate 400 error codes - (2013-02-11)
[4076] Web site - fully back! - (2013-04-29)
[4115] More or less back - what happened to our server the other day - (2013-06-14)
[4136] How do I post automatically from a PHP script to my Twitter account? - (2013-07-10)
[4239] Facebook marketing - early experiences - (2014-01-19)
[4376] Well House Consultants, Well House Manor, First Great Western Coffee shop, TransWilts / 2014 web site reports - (2015-01-01)
[4401] Selecting RECENT and POPULAR news and trends for your web site users - (2015-01-19)
[4474] Effect on external factors on traffic to our web sites - an update - (2015-04-26)
[4492] Almost so wrong, but perhaps it's right for some? - (2015-05-11)
A100 - Web Application Deployment - The Components of a Web-Based Solution [34] Linux / LAMP course - (2004-08-31)
[49] Business is the predominant user of Tomcat, Perl and Tcl - (2004-09-15)
[166] Acronyms - (2005-01-02)
[367] Ajax - (2005-07-03)
[433] FTP - how to make the right transfers - (2005-09-01)
[442] How far away is that server? - (2005-09-10)
[673] Helicopter views and tartans - (2006-04-06)
[924] The LAMP Cookbook - Linux, Apache, MySQL, PHP / Perl - (2006-11-13)
[1176] A pu that got me into trouble - (2007-05-04)
[1265] Apache, Tomcat, Jakarta, httpd, web server - what are they? - (2007-07-13)
[1496] PHP / Web 2 logging - (2008-01-06)
[2099] Should I maintain the programming code on my own website? - (2009-03-23)
[2896] LAMP - Linux, Apache, MySQL, PHP - install, configure, administer - (2010-07-30)
[3891] The components of an Apache httpd / Tomcat / MySQL stack and what each does - (2012-10-13)
Some other Articles
Crazy Day-siesMySQL - JOIN or WHERE to link tables correctly?Exciting futures - the Well House Manor projectDomain Forwarding - 2 ways of doing itDynamic Web presence - next generation web siteSnippets from GeekmasComment, please!Introduction to Object Oriented ProgrammingWhat are DHCP and DNS?Would you steal ... petrol? ... a training course?