Learning to program is really learning how to solve problems down to the last detail. Programming is about breaking down problems into parts, solving each part separately, and then recombining the parts into a whole. Most people are not used to thinking at the level of detail required by computers. Computers are dumb — if you do not tell them exactly
what to do, chances are they will screw up (but you'll be blamed).
Take a Class
- motivation is provided
- knowledgeable people are available
- structure is provided
- money & a somewhat regular time schedule is required
Have a Purpose
- want to program for $$$?
- want to just have fun?
- want to see if you're interested in computer science?
- Project Euler, a source of puzzles to solve and sharpen your skills
- quality of [compiler] error messages
- amount of syntax
- quality of documentation
- libraries (usefulness in doing what you want to do)
What do you want to do
with the language?
It is really best to learn multiple languages so that you can separate what
you are programming from how
you are programming it.
Getting material at the right level (based one what you know, right now) can be tricky. This is why college level courses tend to be good for learning how to program.
Programming is all about input --> output. Larger programs function best when they are built out of input --> output "modules".
- input/output (console)
- boolean algebra
- data structures
- object oriented programming