"I'm a huge advocate of test-driven development (TDD).
Neal Ford (author of The Productive Programmer) says that "it is
professionally irresponsible to write code that isn't tested" (see
Resources). Michael Feathers (author of Working Effectively with
Legacy Code) defines "legacy code" as any software that doesn't
have a corresponding test associated with it - implying that
writing code without tests is an antiquated practice. I often say
that a project should have two pounds of test code for every one
pound of production code."