A legacy code base can be a frightening thing. Between strict deadlines, ever-evolving requirements, differing skill levels of contributors over time, and historical circumstances, keeping database code clean and concise is difficult at best. This example- and demo-driven talk will help you build out a mental framework to prune those gnarled code bases. Much of this talk will be familiar to software developers who know of the "clean code" philosophy, but no knowledge of the topic is necessary. If you shudder whenever you look at your SQL code base, this talk may be for you.
Click here to access the slides for this presentation.
The slides are licensed under Creative Commons Attribution-ShareAlike.
Click here to access demo code for this presentation.
The source code is licensed under the terms offered by the GPL.
These links are in no particular order. Which source control system you use matters less than simply using a source control system. My personal recommendation is Mercurial, although Git is a more popular choice.
Having working, repeatable tests is vital for refactoring code. Although this presentation does not cover how to implement database testing in any detail, I want to provide a number of links to help people get started.