1 I'll send an email to everyone asking who wants to go to the pub after work.
5 6
4
32
I’m in.
7 I just need to finish a few things off. Can you wait 5 minutes?
1 I'll send an email to everyone asking who wants to go to the pub after work.
5 6
4
32
I’m in.
7 I just need to finish a few things off. Can you wait 5 minutes?
8 I'll see you there, I'm gonna be here another half an hour at least.
7 Sorry! I'll just be a couple more minutes late.
1
4
3
5
2
6
9 If you wait for me, I’ll come too.
8 I’m nearly done! Wait for me!!!
By this time...
Half an hour has passed since #1 to #6 were ready to go.
#7 has already finished his work and joined the others.
By this time...
Half an hour has passed since #1 to #6 were ready to go.
#7 has already finished his work and joined the others.
All of them are around #9 desk, waiting for him.
By this time...
Half an hour has passed since #1 to #6 were ready to go.
#7 has already finished his work and joined the others.
All of them are around #9 desk, waiting for him.
#8 joins the waiting crowd a few minutes later.
#4 goes to the toilet
In the meantime #5 comes back.
#1 is already regretting sending out the invitation.
It’s already 9:30pm, all other venues are packed so everyone else also goes home, unhappy and thirsty.
#3 now has to go home to feed his cat.
1 I'm off to the pub in 5 minutes sharp. There's some spaces in the cab. Anyone wanna join me?
4
32
I’m in.
1 I'm off to the pub in 5 minutes sharp. There's some spaces in the cab. Anyone wanna join me?
4
32
I’m in. 5
6Who’s next?
1 I'm off to the pub in 5 minutes sharp. There's some spaces in the cab. Anyone wanna join me?
4
32
I’m in.
7 I just need to finish a few things off. Can you wait 5 minutes?
5
6Who’s next?
1 I'm off to the pub in 5 minutes sharp. There's some spaces in the cab. Anyone wanna join me?
4
32
I’m in.
7 I just need to finish a few things off. Can you wait 5 minutes?
8 I'll see you there, I'm gonna be here another half an hour at least.
5
6Who’s next?
#5 and #6 decided to wait for #7 to share a taxi.
#8 says the same thing “oh, wait for me, I’m nearly done”
In the mean time...
#5 and #6 decided to wait for #7 to share a taxi.
#8 says the same thing “oh, wait for me, I’m nearly done”
#9 says “I’m almost done too, you three go first and I split a taxi with #8”
In the mean time...
Can you think of examples?
Are you one of the thirsty workers that could go to the pub but is still waiting for everyone?
Can you think of examples?
Do you have working pieces of code, ready for deploy, that are waiting for colleagues?
Are you one of the thirsty workers that could go to the pub but is still waiting for everyone?
Can you think of examples?
Is the group of thirsty workers so big that whenever the chosen pub is closed, finding another pub in the busiest time is a difficult
task?
Can you think of examples?
Are the changes you deploy so big, that when something unexpected happens, you have to
re-sync and deploy everything again?Is the group of thirsty workers so big that
whenever the chosen pub is closed, finding another pub in the busiest time is a difficult
task?
Can you think of examples?
Do the pubs close or are packed before thirsty workers finally organize themselves
and get out of the office?
Can you think of examples?
Do you loose your opportunity window getting all teams in sync for a release?
Do the pubs close or are packed before thirsty workers finally organize themselves
and get out of the office?
Suggestions
Find a pub that’s not far from the office.
Have an agreement that every evening, if someone is thirsty, they just head to the pub,
rather than organizing an outing.
Suggestions
Find a pub that’s not far from the office.
Have an agreement that every evening, if someone is thirsty, they just head to the pub,
rather than organizing an outing.
Working at the pub?
Not only working software but also well-crafted software
Not only responding to change but also steadily adding value
Not only individuals and interactions but a community of professionals
Not only customer collaboration but also productive partnerships
It has to be a description of a requirement and its business benefit, and a set of criteria by which we all agree that it is “done”
Dan North
Story: Account Holder withdraws cash
As an Account Holder I want to withdraw cash from an ATM So that I can get money when the bank is closed
Story: Account Holder withdraws cash
As an Account Holder I want to withdraw cash from an ATM So that I can get money when the bank is closed
Scenario 1: Account has sufficient funds Given the account balance is $100 And the card is valid And the machine contains enough money When the Account Holder requests $20 Then the ATM should dispense $20 And the account balance should be $80 And the card should be returned
TDD practices
Define the API you want to use
Write code based on facts
Write just enough code to make test pass
Read the tests to learn about someone’s else code