Scenario - you have never programmed before, but you are required to do so as a part of your job.
You see lots of course (like ours !) on C, or PHP, or Python ... but they all assume some prior knowledge. And when you pick up a book it seems very theoretic and irrelevant, or looses you in the first page.
Does the scenario happen?
Yes - sometimes it does, and the person involved may not have the luxury of a long time to go back to college or take evening classes for an extended period - he / she needs a quick start to get them going - not only in the basics of programming, but also in the slightly wider topic areas of making sure that they write easy to use and easy to maintain, robust, systems that don't duplicate work that's already been done.
Here's a possible answer.
We can run an extra 2 days of tailored training for you in front of
our regular courses - a "learning to program" addendum which will get the 'totally new to programming' delegate into the detail of the concepts (two thirds of the course) and the wider areas of efficient use of their programming time and how to produce good results (one third of the course).
If you're booking a PHP / C / Python / Lua / Tcl / Ruby course with us ... but have NEVER programmed before - let us know and come for an extra two days first. It will probably be a 1 on 1 session and it will get you up to speed for the following course. Examples will be written, in front of your very eyes, so that you'll see not only the results but THE THOUGHT PROCESS BEHIND HOW THEY WERE ACHIEVED, and you'll have an opportunity - with tutor help - to put the though process into practise yourself as you write you own first programs.
I'm running 2 days "Learning to program" prior to the C course that starts on 19th January - so that's two extra days that are available on 17th and 18th (yes, Saturday and Sunday!) and we would be delighted to have you. Standard cost for a 2 day course is £600.00 + VAT, add £70.00 (that's VAT inclusive) per night if you want to stay over.
If you have missed those dates [you probably are - the archives are very popular!] please email me email@example.com
or call us on +44 (0) 1225 708225. It isn't the first time that I've trained to this agenda and it certainly won't be the last. I would be delighted to share with you the fun of practical programming.
"Learning to program" course.
Your very first program
An instruction to display a message.
Storing that instruction.
Wrapping the instruction.
Preparations to run the instruction.
Running the instruction.
Multiple instructions become a program.
Joining instructions together
Storing information in memory while your program runs.
Defining and setting variables - declarations and assignments.
Variable type and naming variables.
Do I actually need to declare variables?
Displaying the contents of a variable.
Entering your data and calculating
Order of precedence, and how to change it.
Converting and co-ercing, rounding issues, etc.
Reading input from the user.
The first of many looks at usability and security
Adding comments to your program.
Making your code self documenting.
Making your code maintainable.
Making the output understandable and auditable.
Providing user documentation.
Handling unanticipated user inputs.
Providing user support.
Choosing different actions
The need for conditionals.
Conditions and optional operations.
Blocks, and merging the strands afterwards.
Alternative blocks (else, otherwise).
Setting the same variable in each strand.
What exactly IS considered to be equality.
Repeating sections of code
The need to repeat operations (loop).
How a loop differs from a conditional.
Making sure that you can get out of a loop.
Named blocks of code
The need to avoid repeating bits of code.
Naming a block of code.
Passing information in to a block.
Passing information back from a block.
Keeping variable names in a block private.
Separating named blocks into separate files.
Using other data streams as well as keyboard and screen.
Easier loops (for, foreach).
Handling strings of text as well as numbers.
Pointers and references.
Away from the detail of coding
Planning your work.
Choosing the right language.
Testing, release and source control and bug tracking.
Finding code that others have already written and using it.
Application design for ...
The Program writer.
The Program maintainer.
The program operators (human and automata)
The people who provide the data.
The people who make use of the results.
The system administrator who looks after the computer.
The user support team.
The malicious person trying to gain access via security holes.
And to meet legal and expandability requirements.
Contact - Well House Consultants, 404, The Spa, Melksham
+44 (0) 1225 708225 • firstname.lastname@example.org • http://www.wellho.net (written 2009-01-10, updated 2009-01-11)
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articlesQ100 - Object Orientation and General technical topics - Learning to Progam 
The next generation of programmer - (2004-11-13) 
Learning and understanding scripting programming techniques - (2008-04-08) 
Best source to learn Java (or Perl or PHP or Python) - (2008-12-28) 
I have not programmed before, and need to learn - (2009-01-19) 
Learning to program in PHP, Python, Java or Lua ... - (2009-02-19) 
Tracking difficult bugs, the programmer / customer relationship - (2009-03-20) 
New to programming? It is natural (but needless) for you to be nervous - (2009-07-14) 
Can you learn to program in 4 days? - (2009-07-16) 
Learn a new programming language this summer. - (2009-08-06) 
Learning to program in ... - (2009-11-15) 
I almost put the bins out this morning - (2009-11-16) 
Programming Standards from the start! - (2010-08-02) 
Learning to program - where to start if you have never programmed before - (2010-09-28) 
Learning to write good programs in C and C++ - separating out repeated code - (2011-01-04) 
Some terms used in programming (Biased towards Python) - (2011-12-12) 
Flowchart to program - learning to program with Well House - (2012-10-14) 
Reading and checking user inputs - first lessons - Ruby - (2013-02-17) 
Learning to Program - how we start to teach you at Well House Consultants - (2014-11-16) 
Learning to Program - the conditional statement (if) - (2014-11-21) 
Learning to program - Loop statements such as while - (2014-11-22) 
Learning to program - variables and constants - (2014-11-22) 
Learning to program - what are algorithms and design patterns? - (2014-11-22) 
Learning to program - comments, documentation and test code - (2014-11-22) 
Learning to program sample program - past its prime, but still useful - (2014-12-02) 
Learning not just what a program does, but how to design it in the first place. - (2015-11-06)G501 - Well House Consultants - Customer Service 
On Customer Service - (2004-10-03) 
On line every 24 hours - (2004-10-17) 
Feedback shows the tip of an iceberg - (2004-11-22) 
Confession - (2004-12-13) 
Tuesdays and Fridays - (2005-01-25) 
Customer service - examples to warn us - (2005-01-30) 
Giving customers best value - (2005-03-02) 
Business practise, 2005 style - (2005-04-03) 
How far should our support go - (2005-05-28) 
Want to be one better - (2005-06-17) 
Trainer answers phone - (2005-07-28) 
Upgrade! - (2005-09-09) 
Different ways of selling - (2005-11-01) 
Keeping Customers Informed - (2006-01-02) 
May all your screw-ups be big ones - (2006-01-16) 
Instructions for bright people - (2006-01-19) 
Been on a course, but still not got it? - (2006-02-16) 
And the staff put the icing on the cake - (2006-02-23) 
Active Learning - (2006-02-28) 
A person of few words - (2006-03-18) 
A customer service company - (2006-05-11) 
Better communication - (2006-05-19) 
Forum help - a push in the right direction - (2006-08-21) 
Eventful evening - a lesson in looking after contacts - (2006-09-02) 
Just ******* Google it - (2006-11-25) 
Products that our customers want more of - (2006-12-03) 
CSL, KISS and RTFM - (2006-12-05) 
Friends and family - (2006-12-25) 
Bounce, bounce, bounce - (2007-01-20) 
Keep in touch with PHP, Perl, Python and old friends too - (2007-07-09) 
Customer feedback - lifeblood of a business - (2007-08-25) 
Market survey - to learn, to prove a point, or to sell your product? - (2007-11-17) 
An answer to a student asking 'Help' - (2007-11-27) 
Pictures you can use - for free - from our library - (2008-01-23) 
Sheep Shearers, Marathon Runners and Ocean Sailors - (2008-04-09) 
Providing exceptional service - and carrying on doing so. - (2008-05-09) 
23:30 bookings and midnight checkins - (2008-10-12) 
Rules for a King - (2009-01-13) 
Service Excellence Awards - (2009-01-30) 
Why Choose Well House Consultants for your course? - (2009-02-20) 
What do people think of our Apache httpd / Tomcat course? - (2009-03-24) 
Building down expectations - (2009-04-09) 
Alumni - revisiting and supporting the old University - (2009-06-13) 
Questions I have been asked on answering the phone - (2009-06-26) 
Taking a knock over Santa - (2009-12-08) 
Getting a phone line changed ... - (2010-02-25) 
Getting in touch - Please allow me to see you when you are online - (2010-07-21) 
Initial handling of phone calls and walk in visitors - (2010-09-19) 
Customer Service - the boundary - (2010-11-27) 
Thank you - and Happy Christmas - (2010-12-24) 
The importance of feedback - (2011-04-30) 
It's not just about the jam in the sandwich - (2011-05-19) 
New product - ensuring that supply matches demand - (2011-08-03) 
Can you put names to faces? - (2012-07-19) 
The Information age - not yet truly with us? - (2012-08-12) 
Palty or Parliamentary? - (2013-04-30) 
Train works for me! - (2013-05-02) 
Not wanted here - hotel guests who will not be happy - (2013-12-30)
Some other Articles
So sad to see you goMelksham, Wiltshire. Town Crier Competition, 2009One Cheer for Local Democracy - Asda in MelkshamWalk to BowerhillLearning to program as a part of your jobSite24x7 prowls uninvitedKeeping PHP code in database and running itCooking bodies and URLsBitter coldMichelle