Refactoring is one place where the notion of "iteration" and "fail fast" is tremendously beneficial.
When you get down a deep rabbit hole, you lose focus and passion. We had great things happening, but couldn’t show them to anyone since they weren’t done.
If you're going "down a deep rabbit hole" then you're doing it wrong. Refactor in small chunks. Be prepared to throw out a chunk. It's an experiment.
If your language doesn't support rapid refactoring -- this is something to think about.
I couldn't agree more, which is why I wrote the post ;)
Most of the time we do lots of rapid iterating (we're in Ruby and JS, mainly) and it goes great. That's why I thought it important to highlight when we do it wrong.
[+] [-] stcredzero|15 years ago|reply
When you get down a deep rabbit hole, you lose focus and passion. We had great things happening, but couldn’t show them to anyone since they weren’t done.
If you're going "down a deep rabbit hole" then you're doing it wrong. Refactor in small chunks. Be prepared to throw out a chunk. It's an experiment.
If your language doesn't support rapid refactoring -- this is something to think about.
[+] [-] danielmorrison|15 years ago|reply
Most of the time we do lots of rapid iterating (we're in Ruby and JS, mainly) and it goes great. That's why I thought it important to highlight when we do it wrong.