People
In the past, most developers’ approach to code is that you should write it once and
hopefully never have to debug or revisit it again. This stems from the traditional waterfall
approach of software development where we were trying to completely describe the
entire system up front perfectly. Change was bad and bugs were not accounted for and
left for the end.
The Agile movement ushered in the first change to this mentality. Agile introduced
the concept of refactoring,
or writing your software once and then revisiting it (often if needed) and restructuring
its internals for improvement (without changing its external outputs). Refactoring
is a core tenant of test
driven...