[From Programming Pearls, by Jon Bentley.]
"Good programmers are a little bit lazy;: they sit back and wait for an insight rather than rushing forward with their first idea. That must, of course, be balanced with the initiative to code at the proper time. The real skill, though, is knowing the proper time. That judgment comes only with the experience of solving problems and reflecting on their solutions."
Note: the key to developing judgment is setting aside time to reflect on solutions.