Experience Agile Programming Agile Meetup Sri Lanka Johannes

  • Slides: 58
Download presentation
Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Norway @jhannes Featu ring:

Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Norway @jhannes Featu ring: Shiha n Iqbal

Goal • Introduce Agile • To have fun now! • For you to have

Goal • Introduce Agile • To have fun now! • For you to have fun later (stretch goal)

Agenda • What is «agile programming» • What to look for • Demonstration •

Agenda • What is «agile programming» • What to look for • Demonstration • Discussion • Possibly: Tips and tricks

What is «agile programming» ?

What is «agile programming» ?

What is Agile?

What is Agile?

Deliver frequently

Deliver frequently

Deliver frequently => Incomplete code

Deliver frequently => Incomplete code

Incomplete code => Ability to change

Incomplete code => Ability to change

Ability to change => Quality and discipline

Ability to change => Quality and discipline

Practicing discipline: Ping pong

Practicing discipline: Ping pong

Ingredience #1: Pair programming

Ingredience #1: Pair programming

Ingredience #2: Test driven development

Ingredience #2: Test driven development

Failing test Write code Failing test

Failing test Write code Failing test

Ingredience #3: Refactoring

Ingredience #3: Refactoring

Failing test Write code Refactor code and tests Failing test

Failing test Write code Refactor code and tests Failing test

Put together

Put together

Failing test Write code Failing test

Failing test Write code Failing test

Failing test Write code Refactor code and tests Failing test

Failing test Write code Refactor code and tests Failing test

What effect do you expect? • On time • On cost • On quality

What effect do you expect? • On time • On cost • On quality • On work environment

Demonstration

Demonstration

What to watch for?

What to watch for?

If you’re a project manager

If you’re a project manager

If you’re a developer

If you’re a developer

If you’re a tester

If you’re a tester

If you’re neither

If you’re neither

Please: • Talk about what you see to the person next to you (whisper)

Please: • Talk about what you see to the person next to you (whisper) • Tweet to @jhannes

Demonstration (Featuring Shihan Iqbal)

Demonstration (Featuring Shihan Iqbal)

Kata: Minesweeper

Kata: Minesweeper

What did you see?

What did you see?

What did you see? • How often did we switch ”driver”? • Effects of

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

What do you think? • Pairing two seniors? • Pairing two juniors? • Pairing senior and talent? • Pairing senior and junior?

What did you see? • Was the step size right? • What was the

What did you see? • 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

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?

How to practice

How to practice

Practice at work Practice katas Practice in dojos

Practice at work Practice katas Practice in dojos

Why become better at programming?

Why become better at programming?

Seriously. Why?

Seriously. Why?

Only 13. 37% of effort

Only 13. 37% of effort

Getting better quality

Getting better quality

Getting better quality Correctness Maintainability

Getting better quality Correctness Maintainability

But more importantly!

But more importantly!

Think better

Think better

Think better Raise your level of abstraction

Think better Raise your level of abstraction

Sri Lanka Coding Dojo?

Sri Lanka Coding Dojo?

Sri Lanka Code Retreat http: //www. coderetreat. lk/

Sri Lanka Code Retreat http: //www. coderetreat. lk/

Conclusion

Conclusion

Conclusion Free your mind

Conclusion Free your mind

Free your mind Practice our art

Free your mind Practice our art

Thank you johannes@brodwall. com http: //johannesbrodwall. com http: //twitter. com/jhannes

Thank you johannes@brodwall. com http: //johannesbrodwall. com http: //twitter. com/jhannes