Collaborate With Your Computer
One of the core concepts in Object Thinking or Extreme Programming is the importance of metaphors. Metaphors are the way you conceptualize a given problem in your mind. The metaphors you use will profoundly influence your designs.
Build Horizontally, not Vertically
If you want a program that is fragile, rigid, and immobile, build vertically.
The Practical Value of TDD
Programming is a practical discipline. There are no silver bullets. The effectiveness of different techniques varies in usefulness, depending on the tools, the team, and the development environment.