How To Design And Run A Training Program


Published on

Published in: Education
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

How To Design And Run A Training Program

  1. 1. How to Design and Run a Re-training Program Garth Gilmour (
  2. 2. About Me... <ul><li>Over 500 Deliveries </li></ul><ul><ul><li>Teaching since 2001 </li></ul></ul><ul><ul><li>With positive results </li></ul></ul><ul><li>Lots of retraining </li></ul><ul><ul><li>4 to 8 programs a year </li></ul></ul><ul><ul><li>Java to .NET </li></ul></ul><ul><ul><li>.NET to Java </li></ul></ul><ul><ul><li>C++ to both </li></ul></ul><ul><ul><li>COBOL to both </li></ul></ul><ul><ul><li>Graduates to industry </li></ul></ul>
  3. 3. Why Are You Here ? To make a buck… To right a wrong… Because you got lost…
  4. 4. Introduction and Agenda <ul><li>You get good at what you do frequently </li></ul><ul><ul><li>Most companies retrain rarely (fortunately) </li></ul></ul><ul><li>Retraining is on the rise… </li></ul><ul><ul><li>JEE and .NET furiously reinventing themselves </li></ul></ul><ul><ul><li>Everything pre JVM / CLR harder to support </li></ul></ul><ul><ul><li>Recruitment problems due to fewer IT grads </li></ul></ul><ul><li>This is a 6 point plan for success </li></ul><ul><ul><li>My top tips for retraining success </li></ul></ul>
  5. 5. A Warning! <ul><li>This presentation pulls few punches </li></ul><ul><ul><li>Feel free to hit back… </li></ul></ul><ul><li>All examples have happened many times </li></ul><ul><ul><li>At many companies </li></ul></ul><ul><ul><li>The technical term is ‘anti-patterns’ </li></ul></ul>
  6. 6. The Six Point Plan <ul><li>Know your developers </li></ul><ul><li>Address an immediate need </li></ul><ul><li>Have a sample project </li></ul><ul><li>Involve the development team </li></ul><ul><li>Never tender based on time </li></ul><ul><li>Try to avoid tunnel vision </li></ul>
  7. 7. 1: Know Your Developers <ul><li>Training must be tailored to the audience </li></ul><ul><ul><li>Otherwise it doesn’t stand a chance </li></ul></ul><ul><li>There are two classic types of developer </li></ul><ul><ul><li>Or stereotypes if you prefer </li></ul></ul><ul><ul><li>No1: The professional programmer </li></ul></ul><ul><ul><li>No2: The corporate developer </li></ul></ul>
  8. 8. The Professional Programmer <ul><li>‘ I’m a developer working for Mega Corp’ </li></ul><ul><li>The good news: </li></ul><ul><ul><li>Unafraid of complexity </li></ul></ul><ul><ul><li>Works till the code does </li></ul></ul><ul><ul><li>Capable of taking on a wide range of jobs </li></ul></ul><ul><li>The bad news: </li></ul><ul><ul><li>In love with technology </li></ul></ul><ul><ul><li>Elitist attitude to customers </li></ul></ul>
  9. 9. The Corporate Developer <ul><li>‘ I work for Mega Corp as a developer’ </li></ul><ul><li>The good news: </li></ul><ul><ul><li>Company committed </li></ul></ul><ul><ul><li>Understand the business </li></ul></ul><ul><ul><li>Customer focussed </li></ul></ul><ul><ul><li>Develop a speciality </li></ul></ul><ul><li>The bad news: </li></ul><ul><ul><li>Resistant to change </li></ul></ul><ul><ul><li>Don’t learn proactively </li></ul></ul><ul><ul><li>Can be inflexible </li></ul></ul>
  10. 10. Planning a Program Based on Type <ul><li>For professional programmers: </li></ul><ul><ul><li>Lots of depth, detail and perspective </li></ul></ul><ul><ul><li>Comparisons with other technologies </li></ul></ul><ul><ul><li>Free form examples and exercises </li></ul></ul><ul><ul><li>Pointers to supplementary reading </li></ul></ul><ul><li>For corporate developers: </li></ul><ul><ul><li>Tight focus on the systems they will build </li></ul></ul><ul><ul><li>Structured exercises with setup and solutions </li></ul></ul><ul><ul><li>Based around a single manual / text </li></ul></ul>
  11. 11. 2: Address an Immediate Need <ul><li>Training should never be speculative </li></ul><ul><ul><li>It must address an upcoming requirement </li></ul></ul><ul><ul><li>A change of platform in the company </li></ul></ul><ul><ul><li>New projects arriving from overseas </li></ul></ul><ul><li>Neither type of programmer adapts well </li></ul><ul><ul><li>Corporate developers become resentful </li></ul></ul><ul><ul><ul><li>Which sours their attitude for the future </li></ul></ul></ul><ul><ul><li>Professional programmers become restless </li></ul></ul><ul><ul><ul><li>Which can lead to ‘itchy feet’ </li></ul></ul></ul>
  12. 12. 3: Have a Sample Project <ul><li>If the need isn’t urgent then make it so </li></ul><ul><ul><li>A sample project is always a good idea </li></ul></ul><ul><ul><li>It gives the delegates something to aim for </li></ul></ul><ul><ul><li>It brings all the learning into focus </li></ul></ul><ul><ul><ul><li>Even for the most dedicated </li></ul></ul></ul>“ Depend upon it, sir, when a man knows he is to be hanged in a fortnight, it concentrates his mind wonderfully.” Samuel Johnson
  13. 13. Letting the Knowledge Percolate <ul><li>No one learns on a training course </li></ul><ul><ul><li>Instead the knowledge settles in as it is actively processed </li></ul></ul><ul><ul><li>Through discussion, reading, reflection and above all coding </li></ul></ul><ul><li>The more you can do to help knowledge ‘percolate’ the better </li></ul><ul><ul><li>Information is useless unless it can be applied </li></ul></ul>
  14. 14. 4: Involve the Development Team <ul><li>Most companies put up ‘razor wire’ for no reason </li></ul><ul><ul><li>Between delegates and the teams they will join </li></ul></ul><ul><ul><li>This makes no sense! </li></ul></ul><ul><li>Senior developers should be involved in: </li></ul><ul><ul><li>Planning the program </li></ul></ul><ul><ul><li>Creating the sample project </li></ul></ul><ul><ul><li>Mentoring the delegates </li></ul></ul>
  15. 15. Involving the Development Team <ul><li>The team that the delegates aspire to join needs to take responsibility early </li></ul><ul><ul><li>Its their own future they are safeguarding </li></ul></ul><ul><ul><li>It can save the company lots of money </li></ul></ul><ul><ul><ul><li>By ‘in-sourcing’ parts of the training program </li></ul></ul></ul><ul><li>Without mentoring bad things happen </li></ul><ul><ul><li>Delegates get frustrated over basic issues </li></ul></ul><ul><ul><ul><li>Like installing tools on their own workstations </li></ul></ul></ul><ul><ul><li>A ‘them and us’ mentality develops </li></ul></ul><ul><ul><ul><li>Between the plank-holders and the newbies… </li></ul></ul></ul>
  16. 16. 5: Never Tender Based on Time <ul><li>Tendering is a good thing </li></ul><ul><ul><li>You ensure the most value for your investment </li></ul></ul><ul><li>Tender based on: </li></ul><ul><ul><li>Range of delivery </li></ul></ul><ul><ul><li>Quality of delivery </li></ul></ul><ul><ul><li>Previous experience </li></ul></ul><ul><li>NEVER EVER TIME! </li></ul><ul><ul><li>Don’t encourage an ‘I can teach that course in two days - honest’ situation </li></ul></ul>
  17. 17. Tendering Based on Time Although it is very tempting to assume that all courses can be compressed into the allotted time on the training program the truth is that people learn at a fixed rate and no matter how quickly the instructor speaks or the exercises are truncated there is a limit beyond which people simply switch off and all training becomes counterproductive especially if they feel that this is being done just to keep things in schedule and on budget so you should not create a situation where training companies tendering for your business feel the obligation to compress the material beyond the point where it can be delivered with an expectation of success.
  18. 18. Managing Time Efficiently <ul><li>Gaps between courses should be planned </li></ul><ul><ul><li>Too short and delegates are overwhelmed </li></ul></ul><ul><ul><li>Too short and they start to lose information </li></ul></ul><ul><li>A lot depends on what they do in between </li></ul><ul><ul><li>Time should always be set aside for self-training and working on the sample project </li></ul></ul><ul><ul><li>Placing delegates on a full development schedule between deliveries wastes their time and your money </li></ul></ul>If I don't practice for one day, I know it; if I don't practice for two days, the critics know it; if I don't practice for three days the audience knows it. Ignacy Jan Paderewski
  19. 19. 6: Try to Avoid Tunnel Vision <ul><li>There is a natural desire for relevance </li></ul><ul><ul><li>Train delegates in the technologies they need </li></ul></ul><ul><ul><li>Familiarize them with the tools they will end up using </li></ul></ul><ul><li>However the ‘straight road’ approach can lead to tunnel vision </li></ul><ul><ul><li>Early adoption of enterprise tools can harm not help </li></ul></ul>
  20. 20. Avoiding Tunnel Vision <ul><li>There are alternatives to enterprise tools </li></ul><ul><ul><li>Which are much easier to use and install </li></ul></ul><ul><ul><li>Despite implementing the same standards </li></ul></ul><ul><li>Examples are easy to come by </li></ul><ul><ul><li>Subversion rather than ClearCase </li></ul></ul><ul><ul><li>MySQL rather than Oracle or DB2 </li></ul></ul><ul><ul><li>Tomcat rather then WebSphere </li></ul></ul><ul><li>Open source tools let delegates learn at home </li></ul><ul><ul><li>Rather than being dependant on company licenses </li></ul></ul>
  21. 21. Tunnel Vision on Sample Projects <ul><li>Tunnel vision applies to sample projects </li></ul><ul><ul><li>Many teams are reluctant to sponsor a sample project unless it exactly mirrors current projects </li></ul></ul><ul><li>Again this places the cart before the horse </li></ul><ul><ul><li>Pilots move from gliders to propeller driven aircraft to small jets to commercial aircraft </li></ul></ul><ul><ul><ul><li>They don’t get placed in the cockpit of a 747 on day one </li></ul></ul></ul><ul><ul><li>Developers should move from the console to GUI applications to Web Apps and then Web Services </li></ul></ul><ul><ul><ul><li>The gradual progression helps knowledge ‘percolate’ </li></ul></ul></ul>
  22. 22. Tunnel Vision on Sample Projects Experience can be gained in many ways…
  23. 23. That’s All Folks! <ul><li>Many thanks for your contributions </li></ul><ul><ul><li>Hopefully this has been useful to you </li></ul></ul><ul><ul><li>Further questions and feedback are welcome </li></ul></ul><ul><li>Good luck with your training programs ! </li></ul><ul><ul><li>Remember you are always the one in control </li></ul></ul>