Principles
- 01
A refactor without tests is a rewrite.
Stands on Martin Fowler, Refactoring: Improving the Design of Existing Code (2nd ed.) (2018) · Michael Feathers, Working Effectively with Legacy Code (2004)
A refactor without tests is a rewrite → - 02
Software moves with checklists, like a pilot.
Stands on Atul Gawande, The Checklist Manifesto: How to Get Things Right (2009) · Asaf Degani and Earl L. Wiener, Human Factors of Flight-Deck Checklists: The Normal Checklist (NASA CR-177549) (1990)
Shipping software with a pilot's checklist → - 03
Make it work, make it right, make it fast.
Stands on C2 wiki: Make It Work Make It Right Make It Fast (attributed to Kent Beck) · Stephen C. Johnson and Brian W. Kernighan, The C Language and Models for Systems Programming (Byte, August 1983) (1983)
Make it work, make it right, make it fast →