Most software developers don't have an exact definition of legacy code, but to paraphrase Potter Stewart, they "know it when they see it." Unfortunately, legacy code has something else in common with Stewart's famous subject--it is embarrassingly ubiquitous.
It doesn't have to be this way. In this talk, we will cover:
Agility can be done right. By respecting the dynamic, living nature of software/human systems, you can create systems that evolve to meet changing needs.
For more information: The ideas in this talk are development more fully in this short essay, and the slides are also online.