Programming principles:
- Single Responsability Principle
- Don’t Repeat Yourself
- Keep it Short & Simple: Overengineering is the root of all evil
- Protect the Developers: Invisible Magic to reduce effort and risk
- Simple Design: 1.- Passes the Tests 2.- Reveals Intentation 3.- No Duplication 4.- Fewest Elements
Must in Extreme Programming (XP):
- Continous Integration
- Continuous Refactoring
- TDD