Legacy Code Skills
Refactoring
Refactoring: Improving the Design of Existing Code by Martin Fowler (Book | Online Catalog)
Working Effectively With Legacy Code
Working Effectively With Legacy Code by Michael Feathers (Book | Summary | Interview)
Technical Debt / Maintenance Load
Quantifying Technical Debt by Chelsea Troy (Article | Talk)
Naming as a process
Naming as a process by Arlo Belshee (Archive link)
Good naming is a process, not a single step
This read-by-refactoring style centers names as the driving force. By gradually capturing insight in code, we bring the components (and their names) to increasing stages of clarity over time.
- Missing
- Obvious Nonsense
- Honest
- Completely Honest
- Does the Right Thing
- Intent Revealing
- Domain Abstraction
To see a similar incremental style on real code, watch this Refactoring session by Woody Zuill and Llewellyn Falco.