The pragmatic programmer

Download The pragmatic programmer

Post on 29-Nov-2014




0 download

Embed Size (px)




<ul><li> 1. What makes a Pragmatic programmer? Easy adopter / fast adapter Inquisitive You tend to ask questions Critical thinker You rarely takes the things as given Realistic This gives you a good feel for how difficult things are Jack of all trades You try to be familiar with a broad range of techs and environments </li> <li> 2. Its a continuous process Needs small amount of daily care </li> <li> 3. A Pragmatic Philosophy </li> <li> 4. Take responsability </li> <li> 5. Dont live with broken windows </li> <li> 6. Remember the big picture </li> <li> 7. Communicate! Know what you want to say Know your audience Choose your moment Choose a style Make it look good Involve your audience Be a listener </li> <li> 8. A pragmatic approach (I) Every piece of knowledge must have a single, unambiguous, authoritative representation within a system </li> <li> 9. A pragmatic approach (II) Make it easy to reuse Reversibility: There are no final decisions! Domain languages: Program close to the problem domain Estimate to avoid surprises </li> <li> 10. Law of Demeter </li> <li> 11. When you should refactor Duplication Non-Orthogonal design Outdated knowledge Things change, code needs to keep up Performance PS: Avoid temporal coupling, always design for concurrency </li> <li> 12. Test! Unit tests Integration tests Performance tests Usability tests Validation and verification </li> </ul>