I always like to think of "writing code" as similar in many ways to "writing" in general. Which is probably why http://michael-mccracken.net/wp/2007/10/09/the-editing-pass/ makes sense to me. (via Gruber).
I give paper sections and important emails a while to sit after I write them, and they always benefit from another look with fresh eyes. I think that doing this with code is worth thinking about.
Once you get a piece of code to the point where you believe it works - it’s passing its tests - go back over it and edit it. That is, go back and edit it for clarity, flow, and style. Just as if it were an essay.
I think this association between "coding" and "writing" is why so many of the best programmers I have met also did philosophy. To write a philosophical piece, you have to be able to order complicated and abstract ideas and make them concrete in a simple, understandable way.