Begin with a clear goal
I started the project with a simple goal: Clean out the garage
Now that I’m done, I realize there is a better word for it than ‘clean’. I refactored my garage. From Wikipedia:
Code refactoring is the process of restructuring existing computer code — changing the factoring — without changing its external behavior. Refactoring improves nonfunctional attributes of the software. Advantages include improved code readability and reduced complexity to improve source code maintainability, and create a more expressive internal architecture or object model to improve extensibility.
I didn’t change its external behavior or its key ability-tos (storing things including 2 cars), but I reduced complexity, improved maintainability and made it more extensible (freed up or created more storage space).
Over the years the garage had become disorganized, marginally usable and the cruft was visible wherever you looked. I’m sure you’ll find no relationship whatsoever to any applications or code you’ve worked on.
There were bugs. Literal bugs and a healthy ecosystem of black-widow spiders to eat the bugs. While I’m all in support of the circle of life, I prefer it to be on the outside, rather than the inside of my house.