Refactoring Code Is Like Doing The Dishes
Filed Under Software Process, Thought Stuff
Regardless of language and skill set, all developers have to constantly revisit their code and refactor. Although you can look at it optimistically and view it as an opportunity for continuous improvement, many of us also take the pessimistic view that it is a chore.
Unfortunately, either way you look at it refactoring is a necessity for long term cleanliness. It is true that you can procrastinate some amount of this “housekeeping” activity, but in the end you will have to give in and do it. This reminds me of a quote:
Before enlightenment, run water, wash dishes. After enlightenment run water, wash dishes.
Even after we reach the highest level of development consciousness (if there even is such a thing), we will still find ourselves running water and doing dishes.
Never stop learning. Never stop questing. There is no end, just new clean beginnings.
6 Responses to “Refactoring Code Is Like Doing The Dishes”
[…] Refactoring Code Is Like Doing the Dishes (Max Pool) […]
So what’s the software equivalent to just using paper plates?
Good question…do we have that luxury yet?
I like the analogy.
Refactoring is also like doing the dishes in that it is a lot easier to do while the mess is still fresh. If you wait to do the cleaning, the ‘goo’ has set in and it is harder to do the scrubbing. (Unless you are using paper plates!)
One more: Leaving a mess around (code or dishes) invites bugs!
If memory serves, I read the before enlightenment/after enlightenment thing in The Tao of Pooh, but I remember the task in the middle as something besides washing dishes. I wonder if it’s from the Tao Te Ching. Anyway, nice application of ancient wisdom.
I hate to wash dishes, but I like to refactor. Strange…