There are a lot of people who think I’m a great programmer.
Some of them happen to be programmers themselves (however, it’s a well known trait of programmers to always believe other programmers code is never as good as theirs).
Occasionally, they ask me why it seems so easy for me. They want to know what my “Secret” is.
The truth is, there is no secret, and I’m not that great of a programmer. Sure, I know my languages. I understand my concepts. My logic is generally dead on. But my style is often off, my code is often clunky, and I’m often not up to date on the bleeding edge technologies (I’m a trailing leading edge guy).
But there is one skill I learned long ago that I personally regard as one of my strengths. It’s the ability to quickly debug something and to see the bug before it becomes one.
It’s a skill I picked up when debuggers rarely gave valid line numbers (see IE4/5/6), and when the most you would get out of a compiler was “Error” or “Segmentation Fault” (maybe it was just the most I could get out of it at the time). Maybe I picked it up from debugging student’s homework…
So if your a programmer, or hoping to be one, focus on learning to debug things quickly, whether it’s your code or not. If you can debug, you’ll be a great programmer. Afterall… the client doesn’t care about your tabbing (in most cases). They don’t care if it took 3 lines of code or 1 line of code (in mosts cases). They don’t care if you used an if statement or a switch, or how many processor cycles it takes (in most cases). They simply want it to work, error free.