Something that I've really started to appreciate the importance of recently is feedback loops. Any time I'm doing a project there's a loop between my actions and their results. I come up with an idea, I start figuring out how to implement it, make a couple passes at it, get something I'm happy with, release it and then show it to people. If they like it, or don't, that's good information and goes back into the next cycle of the process.
But I've been beginning to realise that my feedback loops are often way too long. I have projects and ideas that sit on my hard drive for months or years without seeing the light of day. Part of that is not wanting to release something crappy that will get me bad feedback, but another more significant factor is that my projects aren't structured the right way. It's easy to make something that's useless until it's finished, but much harder to make something that is useful and can gather feedback as early as possible.
This isn't new, in fact it's a central tenet of agile development, which I've found useful in a business context, but I'm beginning to realise that I haven't really appreciated the value of thinking this way in general. The feedback loop is critical because it's a fundamental part of any optimisation process. Any time you're solving a dynamic problem you'll be limited by how quickly you can see if your solution's working.
My recent realisation is that short feedback loops are more useful for creative projects, not less. When you have an opportunity to go deep into the woods and make something really interesting is when it's most important not to get lost and forget the grounding your ideas have in reality. More creative projects are also more resistant to traditional analysis techniques; they're less cerebral and more intuitive. You won't be able to solve the whole thing at once, and making steady progress is going to be impossible without feedback.
Perhaps most importantly, a short feedback loop is very motivating. I've had many projects stall out because they've been languishing in a half-done state for too long and I just lose the energy to keep caring about them. But every bit of feedback and every minor reinforcement propels me forward and makes me want to see the next iteration. Even without the other benefits, that alone is worth it.