I act in cycles. I am inspired by and I work on something new, and that inspiration shifts around. I also have a tendancy to drop and pick up projects in cycles. In the past I've dropped ideas for long enough for all effort to become meaningless given enough time, but these days I've been careful to cycle back to earlier ideas to scrape off the cruft and re-launch the project.
When I re-launch a project, I often find myself bringing significant maturity to the table. I have new ideas and techniques, and I take a kind of sick pleasure in redoing much of my previous work. This isn't just a programming thing.. it applies to anything that I've been working on.