Shane Tomlinson presents a sample application that contains several common anti-patterns and how these can be refactored to be more testable