A good way to get attention in the programming blogs is to draw a distinction between "good" and "mediocre" programmers and allow developers to question whether they can consider themselves "good."

Atwood posts that you're either good or mediocre at programming despite the amount of practice or effort you may decide to put in:

"A mediocre developer can program his or her heart out for four years, but that
won't magically transform them into a good developer. And the good developers
always seem to have a natural knack for the stuff from the very beginning."
Joel Spolsky and a few others seem to use the tactic quite a bit; reeling people in by causing them to question themselves.

I wonder what it is in a programmer's DNA that leaves them with a self doubt? On the other end of the spectrum there are a lot of popular posts devoted to the topic of making oneself better - I found this old Steve Yegge post as a rebuttle to Atwood; that practice is not only a way to get better, but a necessity of the better programmers.

I have no idea how to categorize myself; I don't dare think of myself as good especially when people like Joel Spolsky can throw tests my way that pretty much leave me gaping and grasping.

But, although the blog post I bothered to take time to write speaks to the contrary, I'm not sure if questioning oneself is very productive. Most programmers I respect out there are unbelievably productive - there doesn't seem to be a lot of time for being paralyzed by self doubt.

Back to practice I go.