Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan...

58
Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Norway @jhannes Featuring: Shihan Iqbal

description

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

Transcript of Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan...

Page 1: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Experience Agile Programming

Agile Meetup, Sri LankaJohannes Brodwall

Steria Norway

@jhannesFeaturing: Shihan Iqbal

Page 2: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Goal• Introduce Agile

•To have fun now!• For you to have fun now!• For you to have fun later

(stretch goal)

Page 3: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Agenda• What is «agile programming»

•What to look for•Demonstration

•Discussion•Possibly: Tips and tricks

Page 4: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

What is «agile programming»?

Page 5: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

What is Agile?

Page 6: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.
Page 7: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Deliver frequently

Page 8: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Deliver frequently

=> Incomplete code

Page 9: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Incomplete code

=> Ability to change

Page 10: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Ability to change

=> Quality and discipline

Page 11: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Practicing discipline:Ping pong

Page 12: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Ingredience #1:Pair programming

Page 13: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.
Page 14: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.
Page 15: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Ingredience #2:Test driven

development

Page 16: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Failing test

Write code

Failing test

Write code

Failing test

Page 17: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Ingredience #3:Refactoring

Page 18: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Failing test

Write code

Failing test

Write code

Failing test

Refactor code and tests

Refactor code and tests

Page 19: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Put together

Page 20: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Failing test

Write code

Failing test

Write code

Failing test

Page 21: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Failing test

Write code

Failing testWrite code

Failing test

Refactor code and tests

Refactor code and tests

Page 22: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

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

• On quality• On work environment

Page 23: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Demonstration

Page 24: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

What to watch for?

Page 25: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

If you’re a project manager

Page 26: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

If you’re a developer

Page 27: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

If you’re a tester

Page 28: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

If you’re neither

Page 29: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Please:• Talk about what you see to the person

next to you (whisper)•Tweet to @jhannes

Page 30: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Demonstration(Featuring Shihan Iqbal)

Page 31: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Kata: Minesweeper

Page 32: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.
Page 33: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.
Page 34: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

What did you see?

Page 35: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

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?

Page 36: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

What do you think?•Pairing two seniors?•Pairing two juniors?

• Pairing senior and talent?• Pairing senior and junior?

Page 37: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

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?

Page 38: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

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?

Page 39: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

How to practice

Page 40: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

PracticePractice at work

Practice katasPractice in dojos

Page 41: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Why become better at programming?

Page 42: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Seriously. Why?

Page 43: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Only 13.37% of effort

Page 44: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Getting better quality

Page 45: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Getting better qualityCorrectness

Maintainability

Page 46: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

But more importantly!

Page 47: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Think better

Page 48: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Think betterRaise your level of abstraction

Page 49: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Sri Lanka Coding Dojo?

Page 50: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.
Page 51: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.
Page 52: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.
Page 53: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.
Page 54: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Sri Lanka Code Retreat

http://www.coderetreat.lk/

Page 55: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Conclusion

Page 56: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

ConclusionFree your mind

Page 57: Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.

Free your mindPractice our art