Please don't make the mistake of assuming this discussion applies to you. The subject has nothing to do with honing one's programming skills. [Edit: oops, I confused this thread with another. Never mind, the real point follows.]
As for crises of confidence, what makes them tough is that they opportunistically seize on every item that floats through consciousness and turn it into some new weapon to batter you with. One thing I found helped is to give up on the idea of "talent" altogether and just focus on things that interest you and give you pleasure (edit: and best of all, have value to others) whether or not you have any talent at all.
Actually, someone who really lacked talent probably wouldn't feel the way you describe. They'd just drop out of the game and rationalize it as "that stuff sucks anyway". So you probably do have talent, but the state you're describing is not one that can accurately assess anything remotely related to the idea. In such a state, it can actually be creatively liberating to just redefine yourself as a fool and get on with it. It's like when you're sitting by a swimming pool enjoying the sun and someone starts splashing you with water. If you can't get them to stop, a good defense is to just jump in the pool.
"The subject has nothing to do with honing one's programming skills. It has to do with a large segment of the population (one of the "humps" in "double hump") who can't grasp even the very first, simplest things about programming, like defining a function."
In this blogpost Jeff Atwood is specifically NOT talking about people who can't grasp the first thing about programming:
"We already know there's a vast divide between those who can program and those who cannot.
But the dirty little secret of the software development industry is that this is also true even for people who can program: there's a vast divide between good developers and mediocre developers. 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."
As for crises of confidence, what makes them tough is that they opportunistically seize on every item that floats through consciousness and turn it into some new weapon to batter you with. One thing I found helped is to give up on the idea of "talent" altogether and just focus on things that interest you and give you pleasure (edit: and best of all, have value to others) whether or not you have any talent at all.
Actually, someone who really lacked talent probably wouldn't feel the way you describe. They'd just drop out of the game and rationalize it as "that stuff sucks anyway". So you probably do have talent, but the state you're describing is not one that can accurately assess anything remotely related to the idea. In such a state, it can actually be creatively liberating to just redefine yourself as a fool and get on with it. It's like when you're sitting by a swimming pool enjoying the sun and someone starts splashing you with water. If you can't get them to stop, a good defense is to just jump in the pool.