There is a pretty nice talk about refactoring found here.
In the talk he is optimizing the code live.
The Topics covered are:
- The Open-Closed Principle
- The types of coupling, and their dangers
- Why composition is so damn great
- A powerful refactoring that Kent Beck refers to as "deep deep magic"
- How to destroy conditionals with a NullObject
- The beauty of the Decorator pattern
- Testing smells, including Mystery Guest and stubbing the system under test
- The stuff from the last halves of Refactoring and Clean Code that you never quite got to :)