Good: You help your users write their specs.
Better: You write what you anticipate your users want.
Best: You users figure out what they want after seeing your prototype.
Good: When someone asks you what a variable means, you answer quickly.
Better: No one asks you what your variables mean.
Best: Others compliment your variable naming.
Good: When questions arise, you look at your code and answer them.
Better: When questions arise, you answer them without looking at your code.
Best: Questions don't arise.
Good: You are deft at using your favorite IDE.
Better: You use an IDE with the colors turned off.
Best: You don't use an IDE.
Good: You are an expert at debugging.
Better: Your error conditions anticipate problems before you need a debugger.
Best: What's a debugger?
Good: There are no bugs.
Better: There are no bugs and it runs fast.
Best: It generates code with no bugs that runs fast.
Good: Common logic is consolidated into common code.
Better: Common code is consolidated into parameter-driven common code.
Best: All code is parameter-driven common logic.
Good: Your code is easily copied and changed by others.
Better: Your code is easily used by others through your API.
Best: Others read your code in order to learn how to do it.
Good: The next programmer can easily debug any run time errors.
Better: There are no run time errors.
Best: Your program fixes itself when it encounters run time errors.
Good: Your app has many good data base access routines.
Better: Your app has several good data base access routines.
Best: Your app has one good data base access routine.
Good: You can easily add special processing logic at any point.
Better: You have hooks to easily access any special processing logic.
Best: Your built in Boolean logic already handles any special processing logic.
Good: Your code runs so well you have time to lurk at Hacker News.
Better: Your code runs so well you have time to participate at Hacker News.
Best: You hang out at Hacker News while your code generators crank away.Ask HN: What are the signs that you are a Good, Better, or Best programmer?
1–6 of 6 posts
Re: Ask HN: What are the signs that you are a Good, Better, or Best programmer?
#2IQ100->belowGood IQ110->Good IQ120->Better >IQ120->Best
You raise some very good points though. I am not sure about the 'no bugs' though.
Re: Ask HN: What are the signs that you are a Good, Better, or Best programmer?
#3The best programmers are working on problems that no one knows how to solve yet.
Re: Ask HN: What are the signs that you are a Good, Better, or Best programmer?
#4Run for your life.
Glad to see that the examples touched on the fact the being a good programmer has as much to do with interacting with people as it does code. Whether you're chained to a desk in the basement or working one on one with clients (or both?), I think the key is the programmer's flexibility.
The ability to think quickly and adapt smartly to sudden bugs/conflicts/requests can really help sort out the code monkeys from the wizards.
The 'Best' category kind of irks me; programming is an ongoing learning process. Always try to be a better programmer, never try to 'the best'.
Re: Ask HN: What are the signs that you are a Good, Better, or Best programmer?
#5"Best: What's a debugger?" Run for your life. Glad to see that the examples touched on the fact the being a good programmer has as much to do with interacting with people as it does code. Whether you're chained to a desk in the basement or working one on one with clients (or both?), I think the key is the programmer's flexibility. The ability to think quickly and adapt smartly to sudden bugs/conflicts/requests can re…
Re: Ask HN: What are the signs that you are a Good, Better, or Best programmer?
#6Based on a test I ran on a number of people there is a linear correlation between IQ and Programming skills! IQ100->belowGood IQ110->Good IQ120->Better >IQ120->Best You raise some very good points though. I am not sure about the 'no bugs' though.