Shawn Blanc relates to a nice description of how you should feel when reading code that you’ve written months or years ago:

If your old work doesn’t shame you, you’re not growing.

It’s nice to look back and feel that you’ve made progress. When you look at old work, it should suck glaringly and you should cringe painfully. But there should also be some germ within it that you’re not ashamed of—some spark of talent or inspiration that connects to what you do now.

The good news for me: I feel the shame from time to time. The bad news: sometimes the code doesn’t have to be much older than a day. Of course it just means I’m learning fast 😉