agile programming live - agileprague2012
DESCRIPTION
Agile Programming LigTRANSCRIPT
Shut up and produce…
Agile Programming Live
AgilePrague 2012Johannes Brodwall
Steria Norway
@jhannesFeaturing: Oleg Smirsky
Goal• To have fun now!
• For you to have fun now!• For you to have fun later
(stretch goal)
Agenda• What is «agile programming»
•What to look for•Demonstration
•Discussion•Possibly: Tips and tricks
What is «agile programming»?
Ping pong
Ingredience #1:
Pair programming
Ingredience #2:
Test driven development
Failing test
Write code
Failing test
Write code
Failing test
Ingredience #3:
Refactoring
Failing test
Write code
Failing test
Write code
Failing test
Refactor code and tests
Refactor code and tests
Put together
Failing test
Write code
Failing test
Write code
Failing test
Failing test
Write code
Failing test
Write code
Failing test
Refactor code and tests
Refactor code and tests
What do you think?• Do you work like this?
• Faster or slower?• Better code or worse?
• Other effects?
Demonstration
What to watch for?
If you’re a project manager
If you’re an architect
If you’re a developer
If you’re neither
Please:• Talk about what you see to the person
next to you (whisper)•Tweet to @jhannes and @OlegSmirsky
Demonstration(Featuring Oleg Smirsky)
Kata: Minesweeper
What did you see?
What did you see?• How often did we switch ”driver”?
• Effects of pairing?• What did the ”non-driver” do?
•How do you expect it to be different?
What do you think?•Pairing two seniors?•Pairing two juniors?
• Pairing senior and talent?• Pairing senior and junior?
What did you see?• How many tests?
•Was the step size right?• What was the first test?
• How did we decide next test?• What was the final test?
What did you see?•Did we refactor the right amount?
• How long was the code red?• Strengths in final design
•Weaknesses in final design•Enough comments?
Questions?
Your experience?
Why become better at programming?
Seriously. Why?
Only 13.37% of effort
Getting better quality
Getting better qualityCorrectness
Maintainability
But more importantly!
Think better
Think betterThink above the curly brackets
How to get better
Practice
Deliberate Practice
PracticePractice at work
Practice katas
Practice in dojos
Prague Coding Dojo?
Prague Coding Dojohttp://agileprague.com/workshops.htm
You can still sign up
Conclusion
ConclusionFree your mind
Free your mindPractice our art
Thank [email protected]
http://johannesbrodwall.com
http://twitter.com/jhannes
http://twitter.com/OlegSmirsky