Your SlideShare is downloading. ×
0
What makes a Pragmatic programmer?
™  Easy adopter / fast adapter
™  Inquisitive – You tend to ask questions
™  Critica...
It’s a continuous process
Needs small amount
of daily care
A Pragmatic Philosophy
Take responsability
Don’t live with broken windows
Remember the big picture
Communicate!
™  Know what you want to say
™  Know your audience
™  Choose your moment
™  Choose a style
™  Make it lo...
A pragmatic approach (I)
“Every piece of knowledge must have
a single, unambiguous, authoritative
representation within a ...
A pragmatic approach (II)
™  Make it easy to reuse
™  Reversibility: There are no final decisions!
™  Domain languages:...
Law of Demeter
When you should refactor
™  Duplication
™  Non-Orthogonal design
™  Outdated knowledge – Things change, code needs to k...
Test!
™  Unit tests
™  Integration tests
™  Performance tests
™  Usability tests
™  Validation and verification
The pragmatic programmer
The pragmatic programmer
The pragmatic programmer
The pragmatic programmer
Upcoming SlideShare
Loading in...5
×

The pragmatic programmer

4,791

Published on

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
4,791
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "The pragmatic programmer"

  1. 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
  2. 2. It’s a continuous process Needs small amount of daily care
  3. 3. A Pragmatic Philosophy
  4. 4. Take responsability
  5. 5. Don’t live with broken windows
  6. 6. Remember the big picture
  7. 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
  8. 8. A pragmatic approach (I) “Every piece of knowledge must have a single, unambiguous, authoritative representation within a system”
  9. 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
  10. 10. Law of Demeter
  11. 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
  12. 12. Test! ™  Unit tests ™  Integration tests ™  Performance tests ™  Usability tests ™  Validation and verification
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×