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 firstname.lastname@example.org
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 • email@example.com • 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 articlesG501 - Well House Consultants - Customer Service 
Train works for me! - (2013-05-02) 
Palty or Parliamentary? - (2013-04-30) 
The Information age - not yet truly with us? - (2012-08-12) 
Can you put names to faces? - (2012-07-19) 
New product - ensuring that supply matches demand - (2011-08-03) 
It's not just about the jam in the sandwich - (2011-05-19) 
The importance of feedback - (2011-04-30) 
Thank you - and Happy Christmas - (2010-12-24) 
Customer Service - the boundary - (2010-11-27) 
Initial handling of phone calls and walk in visitors - (2010-09-19) 
Getting in touch - Please allow me to see you when you are online - (2010-07-21) 
Getting a phone line changed ... - (2010-02-25) 
Taking a knock over Santa - (2009-12-08) 
Questions I have been asked on answering the phone - (2009-06-26) 
Alumni - revisiting and supporting the old University - (2009-06-13) 
Building down expectations - (2009-04-09) 
What do people think of our Apache httpd / Tomcat course? - (2009-03-24) 
Why Choose Well House Consultants for your course? - (2009-02-20) 
Service Excellence Awards - (2009-01-30) 
Rules for a King - (2009-01-13) 
23:30 bookings and midnight checkins - (2008-10-12) 
Providing exceptional service - and carrying on doing so. - (2008-05-09) 
Sheep Shearers, Marathon Runners and Ocean Sailors - (2008-04-09) 
Pictures you can use - for free - from our library - (2008-01-23) 
An answer to a student asking 'Help' - (2007-11-27) 
Market survey - to learn, to prove a point, or to sell your product? - (2007-11-17) 
Customer feedback - lifeblood of a business - (2007-08-25) 
Keep in touch with PHP, Perl, Python and old friends too - (2007-07-09) 
Bounce, bounce, bounce - (2007-01-20) 
Friends and family - (2006-12-25) 
CSL, KISS and RTFM - (2006-12-05) 
Products that our customers want more of - (2006-12-03) 
Just ******* Google it - (2006-11-25) 
Eventful evening - a lesson in looking after contacts - (2006-09-02) 
Forum help - a push in the right direction - (2006-08-21) 
Better communication - (2006-05-19) 
A customer service company - (2006-05-11) 
A person of few words - (2006-03-18) 
Active Learning - (2006-02-28) 
And the staff put the icing on the cake - (2006-02-23) 
Been on a course, but still not got it? - (2006-02-16) 
Instructions for bright people - (2006-01-19) 
May all your screw-ups be big ones - (2006-01-16) 
Keeping Customers Informed - (2006-01-02) 
Different ways of selling - (2005-11-01) 
Upgrade! - (2005-09-09) 
Trainer answers phone - (2005-07-28) 
Want to be one better - (2005-06-17) 
How far should our support go - (2005-05-28) 
Business practise, 2005 style - (2005-04-03) 
Giving customers best value - (2005-03-02) 
Customer service - examples to warn us - (2005-01-30) 
Tuesdays and Fridays - (2005-01-25) 
Confession - (2004-12-13) 
Feedback shows the tip of an iceberg - (2004-11-22) 
On line every 24 hours - (2004-10-17) 
On Customer Service - (2004-10-03)Q100 - Object Orientation and General technical topics - Learning to Progam 
Reading and checking user inputs - first lessons - Ruby - (2013-02-17) 
Flowchart to program - learning to program with Well House - (2012-10-14) 
Some terms used in programming (Biased towards Python) - (2011-12-12) 
Learning to write good programs in C and C++ - separating out repeated code - (2011-01-04) 
Learning to program - where to start if you have never programmed before - (2010-09-28) 
Programming Standards from the start! - (2010-08-02) 
I almost put the bins out this morning - (2009-11-16) 
Learning to program in ... - (2009-11-15) 
Learn a new programming language this summer. - (2009-08-06) 
Can you learn to program in 4 days? - (2009-07-16) 
New to programming? It is natural (but needless) for you to be nervous - (2009-07-14) 
Tracking difficult bugs, the programmer / customer relationship - (2009-03-20) 
Learning to program in PHP, Python, Java or Lua ... - (2009-02-19) 
I have not programmed before, and need to learn - (2009-01-19) 
Best source to learn Java (or Perl or PHP or Python) - (2008-12-28) 
Learning and understanding scripting programming techniques - (2008-04-08) 
The next generation of programmer - (2004-11-13)
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