- Refactoring Improving Design Existing Code
- Working Effectively Legacy Michael Feathers
- Clean Code Handbook Software Craftsmanship
- Practical Object Oriented Design Ruby Addison Wesley
- Episode 1 - Clean Code
- Episode 2 - Names++
- Episode 3 - Functions
- Episode 4 - Function Structure
- Episode 5 - Form
- Episode 6 - TDD - Part 1
- Episode 6 - TDD - Part 2
- Episode 7 - Architecture
- Episode 8 - SOLID Foundations
- Episode 9 - The Single Responsibility Principle
- Episode 10 - The Open-Closed Principle
- Episode 11 - The Liskov Substitution Principle
- Episode 12 - The Interface Segregation Principle
- Episode 13 - The Dependency Inversion Principle
- Episode 14 - SOLID Case Study
- Episode 15 - SOLID Components
http://codingdojo.org (KataCatalogue)