If you have just joined our story, Penny was promoted to run the new third level support team and she has been told they have to be agile.
Penny decided to start their second day with a team meeting and she bought everyone a coffee as a welcome to the team kind of gesture. Penny wasn’t absolutely sure, but she thought managers were allowed to charge coffee to the company when they had important meetings.
“How are things going?” Penny asked nobody in particular.
“I think we met our targets,” said Aesop the ex mainframe developer, “we ran out of work late in the day but Peter phoned the call centre and logged some new issues and that kept us busy until home time.”
Penny wasn’t sure that they were meant to call in their own problems to work on, but she thought she would stay quiet for the moment.
“Well,” began Zara Zealot the agile coach, “Maybe I can explain some of the agile practices so we can start being more agile”
Everyone agreed this was a good idea, so Zara continued, “The first thing most agile teams adopt is the daily stand up meeting.”
“Like we are doing now?” asked Penny
“No not really – in a stand up you say what you did yesterday and what you are doing today”
“Like we just did?” asked Alice
“No – everyone has to say what they did, not just Aesop. And you can only have 15 minutes”
“But we all did the same thing” said Alice
This was turning out to be a little harder that Zara had expected.
“Don’t worry about stand-ups for now,” she decided, “we are not really agile yet so we can start them tomorrow.”
“But we are already having the standing around meeting so we may as well finish it” said Aesop
“Its a stand up meeting” responded Zara
“That’s right,” said Aesop “These standing around meetings are a lot like the ones we had in my old mainframe team. We used to stood around having coffee to start each day and we didn’t even know how agile we were. I like this agile stuff.”
Zara decided to stop talking about stand ups before things got too confusing.
“OK,” said Penny, “that sounds like a good idea – lets start each day with a quick standing around meeting”
The team all agreed this was a good idea. Except Zara who sighed and looked like she was going to say something, but then remained silent.
“What else do we have to do?” Asked Alice
“Well,” said Zara, “We could talk about some of the practices like TDD and pair programming to see if we can make use of them”
“We used to do those in Mainframe” said Aesop
“I’m not sure that you would have, Aesop. They are pretty new,” said Zara, “Are you sure you know what they are?”
“Of course”, said Aesop, “Pear shaped programming is what you do in a crisis”
“You mean pair programming” said Zara
“Yep, like I said, when there is a crisis we would say things have gone pear shaped. So we would get two developers to sit down together to urgently fix things before everything went even more pear shaped.” said Aesop
“NO NO – that’s not pair programming at all,” Exclaimed Zara, “in pair programming two developers get together and work on the code at the same time – but its not about making things pear shaped, if anything its about stopping the code from going pear shaped”
“That’s what I said isn’t it,” said Aesop who was looking a little confused.
Everyone nodded. It did sound like Aesop had been doing pear shaped programming properly.
“The difference is that in pair programming you ALWAYS sit together and work on the same code, not just in a crisis,” Zara explained.
“Why would you do that? You would only get half as much work done.” Said Penny. She didn’t mean to be rude but it didn’t make much sense to her.
“I think I know what she means,” said Peter, “Its the ancient Greek principle of thesis, anti-thesis and synthesis.”
“The Greeks didn’t do programming, so how could they have been pear shaped programming?” asked Penny.
“We don’t do any programming either,” said Peter, “we are a support team, not a development team.”
“That’s a point,” said Penny, how do we do pear shaped programming if we don’t do any programming?”
“It’s not pear shaped programming, its pair programming,” said Zara, sounding a little annoyed.
But Peter continued his explanation anyway.
“The ancient Greeks were quite bright and they spent a lot of time looking at how to solve problems,” explained Peter.
“They noticed that if a problem was simple enough then anyone would come up with the same solution, and that would be that.
But with a really complicated problem, when two people looked at it, they would often come up with two theories as to what the best solution was. So they would call the first solution a thesis and the second solution an anti-thesis.”
“Why didn’t they just say they had different opinions?” asked Penny
“Its to do with being a philosopher,” replied Alice, “But I like this story so lets see how it ends”
“Thanks,” said Peter, “being philosophers they argued a lot about who was right, much the way developers argue these days. And just like developers they often tried to win the argument rather than solve the original problem.
In fact a whole group of philosophers called Sophists came along to teach people how to win arguments without needing to understand the actual problem”
“Now that sounds like fun,” said Aesop, “Maybe we should do Sophist Programming.”
“I am not sure Peter has fully understood the who the Sophists were,” commented Alice
“How do grads know so much about philosophy?” asked Penny
“I studied a double major in testing and philosophy” said Alice, “So I spent a lot of time arguing about how the Greeks used to argue”
“I didn’t even know you could do a whole degree in testing,” said Peter
“You can’t anymore, they had to cancel the degree,” said Alice
“Shouldn’t we be talking about pair programming?” Hinted Zara, “rather than about how Alice used to argue about how Greek philosophers argue? This is not quite how stand ups are meant to be run.”
But people were more interested in why you couldn’t do a testing degree anymore. After all there were more jobs around for testers than philosophers.
Eventually Zara got them back on track. She was about to explain pair programming properly when Peter continued his story.
“Anyway,” said Peter, “Some of the Greeks realised that often neither the first solution nor the second solution were really the right one.
Both people would think they were right, but it was only when they understood each others views that they would discover they were both wrong. This realisation would lead them to the real solution, which they called the ‘synthesis’ of their different ideas.
From then on, if they had a simple problem then they could get one person to solve it on their own.
But for really important or complicated problems they would get two people to think about the problem and then bring their thinking together to find the best solution.
“I think I see what you mean,” said Penny, “So in our case I would say that the call centre can handle simple problems on the phone. But if they pass a problem onto us then it is probably either really hard or really important. So instead of having one person look at it we should always get two people.”
“That’s it,” said Peter.
“So we could have the first person think of a solution and present it to someone else who will try to find holes in their idea and then present their own view back. Then the two people can sit down and have an argument,” said Aesop.
“That sounds more like Sophist programming though,” said Penny, “because people are arguing about whether their solution is right rather than trying to understand the problem. With pear shaped programming, I think both people should sit down at the beginning and try to agree on what the problem is and then on what to do about it. So they should really have to keep working together right from the start.”
“But what if it turns out to be a simple problem after all, then we might not need to have two people work on it,” said Aesop.
“Good point,” said Penny, “so we will always start with pear shaped programing but then if the two people agree it is a simple problem then one of them can keep working on it while the other one goes to do something else. So lets adopt pear shaped programming like that. What do you think Zara?”
But Zara had wandered away a little and was quietly mumbling to herself “I must be patient, every team is on its own journey, its not my fault, every team is on its own journey”.
“And don’t forget we are also doing standing arounds every day now,” said Alice.
“What,” said Zara, re-joining the conversation, “no this is not how standing arounds are meant to work. I mean not how stand ups are meant to work.”
Everyone was a bit disappointed because they thought they were doing pretty well.
So Zara explained , “A stand up is only meant to go for about 15 minutes, but this meeting is going on for a long time. And you are NOT meant to have coffees. The whole point is to be uncomfortable so you don’t want to be there.”
“Why would you want be uncomfortable or go to a meeting if you don’t want to be there?” asked Penny.
“So you only stay for 15 minutes – that’s also the reason a lot of teams don’t let the testers talk”
“What do you mean by that?” asked Alice.
“You have probably all heard of tester logic,” said Zara, “and you have to be very careful not to listen to testers in case they befuddle and confuse you with it.”
“And what do you mean by ‘tester logic’?” Asked Alice.
“Testers often talk about doing things that sound sensible but that nobody will really do. That’s called tester logic – things that sound like you really should do them but that you know your project team will not really do in practice. Thinking about it can cause you to get all muddled and upset,” said Zara.
“I’m not sure what you mean but Alice is allowed to talk in our meetings. We will just ask her to be careful with her tester logic,” said Penny.
“Thankyou,” said Alice, “but it won’t matter tomorrow because I am off at a tester breakfast so I will be late in.”
“That’s OK”, said Penny, “we can just wait for you.”
“No you can’t,” said Zara, “you have to have the meeting at the same time every day.”
That all seemed very strict. But the team eventually agreed to have the meeting at 10am every day in case people came in late.
“But how can we have a 15 minute meeting if we are going to talk about all the new practices we want to try to use?” said Peter.
“There is no try – do or do not,” said Zara. And she laughed a little to herself.
But nobody else laughed – they all just looked at Zara and waited for her to finish laughing.
“Sorry,” she said, “what I mean is that you can’t talk about all those things and get through the meeting in 15 minutes. So if you are in a stand up all you can talk about is what you did yesterday, what you are going to do today and what is in your way.”
Zara could see people were disappointed so she added “I know the practices are really important but maybe they can be in a different meeting.”
“That’s a good idea,” said Penny, “Lets have a standing around meeting at 10 O’clock every day. But it might be better to only have our practice meeting once a week so we can introduce one or two practices a week and have time to get used to them. So we can have have a practice meeting every Thursday when we will talk about whether we like the practices we are trying and what new ones we want to try.”
Zara began to say something but she was interrupted.
Bran came into the room and asked if she could interrupt. People often ask that, because they think it is polite, but of course when they ask it they have already interrupted people.
“Penny – you have to come to the management meeting. Steven is asking for updates on what all his teams are up to.”
“OK,” said Penny. She wasn’t sure what kind of updates she was meant to be giving but at least she could say they were having standing around meetings every day and that they were also going to do pear shaped programming and some practice meetings.
And so Penny headed off to her first ever management meeting and the team went off to the call centre to see what work they could help with.