In my experience as a software engineer, manager, and programming instructor, here are the mistakes aspiring programmers make most often, in no particular order:
- They start writing code before thinking about how to logically approach the problem. 70% or more of programming is thinking, and much of that thinking should happen before any code is written. There is no sin in drawing a diagram or in writing down a sequence of steps.
- They believe that they can learn programming by only reading or hearing about it, and they don’t have to actually do it. The only way to truly learn it is to actually do it…a lot.
- They don’t pay attention to testing their own code. Getting it to compile without errors and warnings is a first step. Getting it to run correctly with one specific set of inputs is another step, but is not the last step. Getting it to run and not crash no matter what the inputs are – that requires testing and debugging. (And you can learn a lot from testing and debugging your code…lessons that will make you a better programmer in the long run.)
- They think that there is an end to learning and improving programming skills and knowledge, but in reality, the learning never stops. Count on continuing to learn and improve for the rest of your career. Those who don’t are unlikely to succeed in the long term.