Thoughtful parable from Johanna Rothman on the feeble manager’s fall-back “Don’t bring me problems, bring me solutions”.
Today, a tip, nothing to do with Agility other than being a move towards a world where technology makes life better, not worse.
You’re on the move, and that important meeting is about to start. Your iPhone’s in your hand, but now you’ve got to find the invite. Wait, you remember you set up the dial-in number as a contact… but what’s the meeting code? Aaahhhh!!!!!!
Here’s a tip if you’re setting up online meetings. This works for an iPhone, I don’t own anything else, so please test it on your own smart phone and let us know in the comments how it works for you.
If you have a dial-in that’s a phone number, and a meeting id, and the nice electronic lady asks you to dial “#” at the end, there’s a way to set up the meeting invite so all your attendees could just tap once on the meeting reminder when it pops up on their phone – and they’re in!
The Tip – help your attendees
Enter the whole number and meeting ID in the following format, and iPhone users can just tap on the screen when the reminder pops up, and it will dial automatically.
Format: “+1 (555) 123-4567,,,999999999,,0#” where 999999999 is the meeting ID.
(If you want to put in a hard pause, use a semi-colon. The phone will them display a message “Dial <number>” that you can tap again and it’ll dial. E.g. “;0#” at the end means you will need to touch again as the phone asks “Dial 0#” so just touch where is asks and the hash is dialed.)
Why the “0” before the “#”? It’s a workaround for the iPhone bug that has a number ending in a “#” fail to dial. Neat, huh?
Note, don’t put a space into the meeting ID, the phone will take it literally and this tip won’t work!
So this trick would mean I could simply tap my screen once when the meeting reminder comes up and I’m into the call.
Sub-Tip – help yourself
If you’ve already received a meeting invite, open the appointment in your calendar and edit it to match this format, that works too. I’ve found that keeping the number in the meeting location field works well.
Respect and Time – this is Important!
Scrum has a set of ceremonies, some considered essential, some optional. What’s important is that they are held at consistent times.
Er… ok. Why’s that important?
Well, firstly, this allows for the attendees, both participants and observers, to plan their time well. It sets the heartbeat of the team, and allows for the measures that we use for a team’s predictability (velocity, Say/Do, cycle time) to have some basis in reality. Reality! Yay!
(Favorite theme: operating in reality works better than operating in make-believe!)
This is good. If your team is consistent and reasonably predictable, this is highly valuable to the business, as it allows them to do high level planning with increased confidence. Benefit to you: they’ve got fewer reasons to ask you to do crunch-work.
Secondly, there’s a bad side to not doing this, setting up regular ceremonies.
What does the bad look like, and why is it bad?
One of my favorite life principles is that you can always make more money, but you can’t make more time. (Despite claims to the contrary.) So respecting others’ time is fundamental. Being late or inconsistent around appointments is basically sending the message “My time is more important than your time, actually. Nyaah!”. It’s incredibly rude, and it’s a sure-fire way to undermine credibility, trust, and team cohesion. Is that worth it?
Don’t do it.
Don’t tolerate it.
I’ll be writing in due course about the SCARF model (see David Rock, “Your Brain at Work”) The “S” stands for Status. Sending a message that they are less important than you, even if that’s true, is an assault on their status. It activates a threat response, either having them unable to think clearly, or if strong enough, activating a fight / flight / freeze / appease response. That’s no way to run meetings.
Said another way, it’s a great way to get people pissed.
Can you see how much sense it would make to show respect for people’s time?
So what’s the first step?
So here’s what I suggest. Schedule your teams ceremonies, schedule the times when you’ll protect their ability to get on with work, and get the team to set rewards and sanctions (Reward: chocolate gift? Public cheer? Sanction: $1 fine? How about having to sing at the Stand-up? Or dance?)
Here’s an example of the kind of schedule you might want to set up, and how to use Outlook to support the team.
Let’s say your team has two week sprints, starting on a Wednesday. Here are the meetings you’ll need to set up:
- Sprint Planning: Wednesday 10:00 am to 11:00 am, recurring every two weeks on Wednesday, starting on first day of first Sprint. Invite Team, Product Owner can forward to stakeholders, also possibly engineering managers if they can act as technical consultants not bosses.
- Story Grooming: First Friday 3:00 pm until 4:00 pm, recurring every two weeks on Friday, starting of first Friday of first Sprint. Same invite list as for Planning.
- Sprint Demo: Second Tuesday 11:00 am until 12:00 pm, recurring every two weeks on Tuesday, starting last day of first Sprint. Same invite list as for Planning.
- Sprint Retrospective: Second Tuesday 2:00 pm until 4:00 pm, recurring every two weeks on Tuesday, starting on last day of first Sprint. Invite to Team only.
- Daily stand-ups:
- First Thursday and Friday, 10:00 am to 10:15, recurring every two weeks on Thursday and Friday. Invite to Team as contributors, anyone else as observers.
- Every weekday (middle week), 10:00 to 10:15, recurring every two weeks, starting on First Monday of first Sprint. Invite as 1.1.
- Last Monday, 10:00 to 10:15, recurring every two weeks, starting on last Monday of first Sprint. Invite as 1.1.
Outlook recurring meeting for first two Stand-ups.
Wow, that’s a bunch, am I right? But you only do it once!
Schedule work, not interruptions.
Get the people in the team to schedule the time they want to protect at work, so to other’s it’s clear that this time is Busy in Outlook.
In Outlook, have them add something like Daily, 9:00 through 10:00 Deal with email; Daily 11:00 through 5:00, Concentrate and Collaborate.
Outlook always allows you to Tentative Accept or Decline just one meeting instance. Use that sparingly.
Release Planning, Release Retrospectives, company All-Hands and Offsites, sure they will take precedence. Give people robust feedback if these get scheduled at the last minute, that’s not acceptable professional behavior.
But what are you telling the world if they look at your Outlook schedule and just see that it’s mostly free? It’s permissions to mess with your days my throwing meetings at you any old time. You’re asking for a drop in “S”!
Have you noticed all the job postings boasting that they’re looking for “exceptional” candidates? That, to my mind, is almost as daft as wanting ten years’ experience in a technology that’s only five years old.
If someone’s exceptional when they join your spiffy little company, where are they going from there? How about creating a company culture that brings out the exceptional in ordinary people?
The hosts, ISITE Design, kindly recorded the session. They set it up to record the laptop I was using, so as I ran PowerPoint in presenter mode, you get to see the “cheat sheet” side of the presentation. The recording stopped as we went into a live exercise.
Here it is:
The exercise was started during the talk, with people making notes on sticky-notes of aspects of their working world that they could now see qualified as waste. We then had everyone swarm and group their notes, cross referencing them with Agile practices that could handle these wastes.
We also found that folks gained a new appreciation of why Agile practices work so well.
I gave an extra mini-talk afterwards, “How to Sell Agile to the Bean-Counters” but that is a story for another day.
I’ve was asked some time back to be a panel member on a discussion about estimation. The other panel members are all business analysts. The audience is going to consist of business analysts and project managers.
Following a planning call with the organizer and other panelists, I realize that I’m dealing with some folks who are used to estimation being a quest for certainty, regardless of the fact that it’s an uncertain world.
To prepare myself, I’ve been thinking of an analogy I can use to explain agile thinking about estimation. Here’s what I’ve come up with:
Scenario The First
You’re going to play golf with some friends on a course with which you’re all familiar. How long will it take to play each hole? How long for the entire round?
Can you hear people answering already “It depends…”?
Scenario The Second
You’re going to play golf with some friend on a course with which none of you are at all familiar? How long will it take to play each hole? How long for the entire round?
Can’t you just hear people saying “Well, we could guess if we looked at a plan of the course” or “We wouldn’t really know until we’d played a few holes”. Right.
Scenario The Third
You’re going to play gold with a group you’ve never met, at a course at which none of you have ever played.
… The Fourth
…this time not even on a course, but across country! You have a map, but it’s not clear if the map is current.
Now, back to the unfamiliar course with your buddies, but this time you have only four hours to play. How many holes could you complete? How about if you were only allowed a budget of seventy-five shots, how many holes then?
How about if I told you to play exactly eighteen holes, no more, no less, and they all had to holes in one, or you lose your bonus this year? On three courses. At the same time. I’ve got a buddy who’s no longer a project manager as a result of roughly that scenario. Which is one of the reasons I’m serious about agility.
Anyhow, that’s the analogy I ended up using.
Dear and Gentle Reader,
Attending the local Lean Agile Coffee, the question arose “How can we get a team to start pair even if they all hate the idea”?
Ever heard this question before?
I thought so.
Well, I’m going to tell you the answer I gave, and if it’s useful to you, then good. It’s based on an exercise I tried with one of my teams, and it seemed to be effective.
To begin with, I explained to them how were were going to work in the retrospective, proposed a few ground rules on which we voted for agreement, and got underway.
We spent five minutes brain-dumping onto stickies things that puzzled us or that we felt needed attention. Then we grouped them leaving us with a small handful of things to consider.
I asked the team to spend five minutes writing down ideas to resolve the puzzles or that would have us make progress, one per sticky. But it had to be in absolute silence, and so, they had to work alone. I had fun enforcing the silence with comedy shushing and angry-librarian looks.
Next, they were to pair up, the rule being that like could not pair like with like. Dev could not pair with Dev, nor QA with QA. Now they could spend ten minutes discussing their subjects, even coming up with others if they felt they had time.
Next they had to stand up, pair by pair, and sell their solutions to us. They had a couple of minutes each. After their pitch, I asked them to comment on what it was like working alone compared to working with the other person.
Finally, with all the solution up on the board, we grouped them again, dot-voted to select one as an experiment for the next Sprint, and wrapped up with a discussion about what it had been like to decide on this as a team. We did a quick low-to-high line for return on time invested, and the consensus was high.
So, not only did we follow the basic framework for a retrospective (set the stage, gather data, draw conclusions, propose an experiment, retro the retro) but this was also an exercise to have them experience pairing, being bold and open, and working together as a team. I didn’t need to point out to them what I was doing, they got it.
I’ve had to say to some people before now “You’ll hate it before hand, but you’ll love it afterwards”. In this case, I didn’t need to be that obvious, they just did the exercise and got it.
It’ll need refreshing to help it stick, so I might look for a variant.
Full disclosure: I pinched the basic idea for this from Thiagi’s Hundred Favorite Games, a phenomenal resource of training games and exercises. Snag a copy for yourself, it’s pure gold.
Folks at the Lean Agile Coffee liked the sound of this exercise, so I hope that they try it, and bring back reports of their experience.
That is all for now, dear Reader. Go with Agility.
P.S. In looking for a link to Thiagi’s book, I found this link to 350 of his games – free!
While I’m finishing the wool-gathering for the last post in my Social History/Neuroscience of Agile series, here’s some reflections on the last couple of retrospectives and what’s going on around them
I’m still fairly new to the team. When I joined them, they were halfway through a sprint, and since then we’ve completed three sprints. They’re one of many teams, in a very complex business environment, and the code they’re producing operates as an integration point for the code from several other teams.
The major challenges they’re facing are, in no particular order:
- Environmental delay
- Cross-team coordination
- Starting too much work
By this I mean the impact of discovering that an environment (say a QA Integration server) is not ready, and it turns out that the infrastructure team have a ten day lead time on building the server. Or an essential service needs to be configured to expect new connections and this has a four week lead time. Or opening a firewall takes four weeks to pass security review.
Why’s this a problem?
Two reasons: first the lead times are not widely publicized or, in some cases, even predictable. This would suggest that the teams involved probably could use a Kanban approach to track their lead time and cycle time and then be able to publicize a more reliable service level. For instance, “A request to open the firewall typically can be completed within 20 working days 80% of the time.” An escalation path could be offered as well “Urgent and important requests (i.e. to resolve production outage) can be processed in twelve hours, and must be followed by a risk mitigation review to minimize repetition of the issue”.”
The second problem is that often these lead times are longer than the sprint length. So if work in sprint n reveals a need for an environment change in sprint n+1, tough! You ain’t getting it until sprint n+x, buster! We all know that in the real world, no matter how good our release planning, all the time we discover things only during story grooming. So having environment teams work to reduce their lead time to be less than one sprint’s length would be a major step forward.
Do I need to tell us why this is a problem? Oh, ok.
So in this case, it’s basically because more than one team is working on the same code base. Probably not the same code modules, but all the time we see that Team A does x, that break the code for Team B in module y. Team A’s code is essential, so Team B updates code y to take this into account. Team C’s code z promptly breaks. Guess what happens when they fix it.
Oops. Test Driven Development and Continuous Integration anyone?
Both of these problems require collaboration across boundaries, and that’s one area that is being worked on. Remember this: Scrum is designed to reveal organizational dysfunction. Taa-daa!
Starting too much work
When does value become real? When we put working features into (paying) customers hands. So we need working features. They’re working when they are finished, so finishing is a good thing. Duh, right?
So imagine a team that for one reason or another seems to be “falling behind” (read: their progress is not visible). Their workload increases as they have to keep dealing with the work on hand, and of course, someone up there keeps piling on more.
If the team’s capacity has been reached, and you add in more, it MUST mean that stuff ends up being late. Adding more cars into traffic slows the traffic. My calendar is full, if you give me something else to do, something I can’t magic up more time, so either it’s not going to happen for a while, or something else is going to be late. Fact.
Put another way, we want to stop starting and start finishing.
Worst sprint so far, they’d started sixteen stories, and finished one. They split (ow!) fifteen and didn’t recognize what this was concealing as they pretended that they’d finished all sixteen. Hmmm….
How did we fix it?
Well we haven’t – yet.
But here, much abbreviated, are the exercises we did for the last two Sprint Retrospectives. By the way, I always follow the format Set the Stage, Gather Data, Draw Conclusions, Design an Experiment, Retro the Retro. I’m only going to talk here about the middle three exercises.
Gather Data: We had the burn down, that showed we’d done only 35% of what we’d set out to achieve. So then we did a real quick Start Doing, Stop Doing, Keep doing exercise where the team brain-dump onto stickies and put them up on the board under these three headings. (Five mins.)
Then we had the team swarm on the board and group the stickies into related themes, and finally dot vote on the as things they were interested in.
Draw Conclusions: Now I had the team undertake three exercises. First, they had to sit in silence, and write on stickies any ideas that they had about the number one topic. I enforced the silence with librarian-like shushing. It was kinda fun! Next I had them pair up, and the rule was you couldn’t pair with someone with the same role as you. Then in pairs, they could compare stickies, discuss them, come up with something else if they wished.
Lastly, I had each pair pitch their conclusions to the rest of the team for two minutes. At the end of the two minutes, they were invited to comment on what it had been like to do this alone, and what it had been like to do this in a pair.
By the time each pair had gone, the place was a frenzy of people demanding another go to pitch again, discussions where breaking out all over the place.
In effect, we stepped from being lone guns, through pairing, to working as a team in this one exercise.
To wrap it up, once again, up went the stickies on the board, and we swarmed and grouped them.
Finally, once again, we dot-voted, and we had a topic for consideration for the experiment. In this case it was Focus on Story Grooming (with a strong hint of Cross-Team Coordination).
We decided that the experiment was to focus on this in the Sprint Planning session, and in the next Story grooming session.
About six days into the sprint, the question was asked in the daily stand-up “Hey, are we tracking our experiment?” We all looked blank, and guilty, as once again the Sprint was off track.
On reflection (Failure Bow time!) I realized that of course we were tracking it. That’s what the Burn-down chart was doing. It was showing that we’d sucked at Story Grooming! We’d been adding tasks up the wazoo!
This time, to gather data, I displayed the burn-down. We’d done much better, but there’d been some gaming of the numbers still, and stories were all getting finished at the last minute.
So here’s the exercise we did.
Gather Data: I had them stand in two rows, pairs facing each other. The instructions were A interviews B “Tell me two things that you think we should pay attention to” and write them down. Then B interviews A with the same questions. When we’re all done, the person on the end of row A runs round to the other end and all the A’s move along one spot. Then we repeat the interviews. We do this until you meet your original partner again.
This actually took something, it was fascinating seeing the guys struggle to understand what I was asking them to do. They hated it to begin with!
Oh, and one of the guys was on a video link, so one of us was interviewing a laptop!
But by the time were were done, it had turned fun and noisy! They loved it.
They we went to the board, of course, and started to cluster the stickies.
Draw Conclusions: This was simply a brainstorming exercise. I quietly left to go to the restroom, and by the time I’d got back, they were working on this on the whiteboard themselves.
The Experiment: We had realized that we tended not to create a decent support structure for our experiments. So as we came up with the things we wanted to do, we simply recorded them in Story format in Rally (not an endorsement, good though Rally is, it’s just the tool we happen to have).
This ensures that the stories will be sized and included in the upcoming Sprints.
At the start of the Sprint Planning, I’m going to have the guys use the “Write your team’s names” exercise. It’ll only take a couple of minutes, and may have them get what’s going on with taking on too much work and trying to start it all.
But what about…?
Did any of this progress towards solving the Environment Delay and Cross-Team Coordination issues? Not directly, but it’s looking to me like the team are getting very quickly more skillful at undertaking the kind of exercises and using the kind of thinking that has people collaborate to produce solutions.
I’ll blow more about this as we progress.
So, last time, I blathered on about The History of the World in Three Minutes. The most important point, and I hope this was clear, was the the Industrial Revolution gave us (us = The West) a two-tiered education system. The Obedient Unskilled and the Proud Professional, to paraphrase.
Tender reader, strap yourself in, we have another point to make. There is an excellent book, Mindset Carol Dweck (Random House, 2006). Carol Dweck is a psychologist who’s been researching her subject for many years. Read the book, but in summary, she proposes that there are essentially two mindsets.
The first, the “fixed” mindset, is best exemplified by say, a great tennis player. This guys knows he’s the best. He cannot lose. If a game doesn’t go his way, it’s not due to a failing of his, oh no. His shoelace broke, there was a reflection glinting in his eye, the line judge was asleep. But him lose? No, impossible.
You here it in corporate speak “We only employ superstars!” You hear it in parents thinking they are encouraging their kids “We only want you to be the best you can be.”
The problem is that if someone is the best, and identifies that way, then any failing at all is a failure of Self. Which makes is impossible to either admit to failure, or even take on anything where failure is a glaring option. Or even a very subtle option.
It’s not even always about being the best. It might be simply about being what you are. Your test scores show that’ you’re a C in math. So you know that you’re only so-so at math. “I couldn’t never do that job, it needs too much math, and I’m meh at math.”
What’s the second mindset? You probably guessed it, it’s the “learning” or “growth” mindset. This guy might not have won today, but he learned something and maybe he’ll win in the future. This girl got a C in math, but she’d like to get a B next time so she’s going to study.
[Stop Press! At this point, I interrupted my writing to attend the East Bay Agilistry Meetup where Dr Ahmed Sidky gave a talk titled ”The Agile Mindset: The Key To Being Agile Not Just Doing Agile”. He had some fabulous slides on Carol Dweck’s work, and there was much nodding and agreement going on!]
In light of Ahmed’s talk, and I’m hoping that he’ll be sharing the deck, we can cut to the chase.
The fixed mindset fears failure, as it’s a failure of Self. The growth mindset embraces failure as a learning opportunity. The fixed mindset reaches for certainty and tries to resist or control change. The growth mindset acknowledges uncertainty and embraces change as opportunity. The fixed mindset hates looking bad or stupid, the growth mindset just doesn’t care about that.
If you’re reaching ahead to seeing that the “old school” way of doing things equates to the fixed mindset and agility equates to the growth mindset, yep, we’re getting there, and we’ll bang that gong with a vengeance shortly.
But first I want to cover the why of the mindsets. Why do people think that way? We’re not born with a built-in mindset.
John Taylor Gatto has written at length on the problems of Western schooling. He documents the history of the decisions and actions taken to implement methods of schooling specifically designed to support the Industrial Revolution. To summarize, two streams were required. One would produce unskilled obedient laborers and soldiers to do the hard physical work and be cannon-fodder, the other would produce highly self-invested professionals who would manage the others and provide the technical problem solving, all to benefit the owners of the industrial means of production.
The thing is, it worked incredibly well. The Industrial Revolution was the driving force behind the explosive growth of the 19th and 20th centuries. Never mind the politics, never mind the Dickensian and Orwellian aspects, all the benefits of modern life that drive our society today came from the industrial revolution.
But think of that second tier, the professionals. Their work is knowledge work. As Ahmed so nicely put it, we keep working while the cost of the change we’re undertaking is assessed as being less than the value that change provides. And knowledge workers are all about driving down the cost of change. And as they focus on this, what comes right behind it? Technology!
Technology is all about finding more and more ways of enabling cheap change. So what do we get behind the Industrial Revolution, but a Technological Revolution! Taa-daa!
But the thing is that the way the professionals had been taught to think was industrial. It was about production lines, it was about nailing certainty, and ensuring that the means of production was predictable and completely controlled. The workers could be commanded “Do this, and do it thus, and keep doing it” and all would work.
Whoops. All this quest for certainty produced the technological revolution that brought with it the means for innovation that brought with it… uncertainty! Change! Yikes!
And the poor old professionals, still being churned out by the University System, a great machine that grinds exceedingly slow and exceedingly small (and at HUGE expense), the poor old professionals are still being taught to invest highly in their Qualification (ooh!) and still being taught to prepare for a career (a what?) and still being taught to believe in The Plan.
I’m going to pause, and find a dark corner, and give myself a quick rub-down with a damp copy of Oz Magazine from 1968, and wait until I calm down before I continue.
Up next… well, team, what do you think we’ll be talking about next…?
Humans as humans have been around for roughly 200,000 years. Some of the first are still waiting in line at the DMV.
It took that long to get to around 1 billion of us. That’ a pretty low population density, and anthropology suggests that there really was no such thing as “work” until agriculture started around 8,000 to 5,000 years ago.
Huh? Well, let’s start by defining “work” as I use the term here. I don’t mean simply the plain dictionary definition “Activity involving mental or physical effort done in order to achieve a purpose or result.” I mean work that is done to produce a surplus, so that surplus can be used in some form of exchange to fulfill needs outside the result or immediate purpose of the work.
So when agriculture started, work was farming, which produced a surplus. This surplus had to be administered, and that in turn led to mathematics. How to divide this pile of grain amongst the people, and retain some for the administrators? It needed some simple sums, and that got math underway.
Fast forward, at least in the West, through Greek and Roman civilization, then into the Dark Ages. Want to know about command and control? Think feudalism and suddenly your boss might not look so bad!
For the next few thousand years, the majority of work took place in the field. Then back in the 18th century someone noticed that a boiling kettle rattles its lid, and bingo, the Industrial Revolution! (I know, there was more to it than that, but hey, three minutes.)
With that, the center of production moved to the factory. Dad, and often Mom, and often Junior, were stuck in the factory for umpteen hours a day.
I’m not going to go into the dehumanizing effects in detail, I’m not going to touch on the dawn of socialism that sprouted from studies of the dismal conditions in the factories. But we need to note that it was dehumanizing, and I will be researching and qualifying this assertion. The point is that we did not evolve to work in factories. (Obedience ended up taking a bashing in due course. Russian Revolution anyone? French? American?)
Back to the plot. The smart money didn’t just go into the factories. The Prussians came up with an education system that graded pupils for likely job training. Roughly, they were looking for one stream who’s major requirement was that they should be obedient. They would do as they were told in the factories, and they would charge into the face of the enemies guns when ordered.
The other main stream was that of the professional. The professional could manage the obedient and solve the difficult problems. Accountants, engineers, lawyers, and so on, and the education was designed to have these people be very highly invested in their qualification. It was self-defining. I can’t prove it, but I’d guess that the social exchange that includes “So, what do you do?” “Oh, I’m a blah-blah” comes from this. The question is about doing the reply is about being. Remember this point.
It worked like a charm, and the benefits of the Industrial Revolution propelled us up to the 7 billion people on the planet today.
Taylorism (aka Scientific Management)) standardized work. For Science! The humble worker was measured and quantified and became a fungible unit of production. Moreover, Management became a profession. Who knew? “Swap them around, it doesn’t matter, I’m qualified to command them, the system will still work!”
And it did. Very well. (Never mind the squalor, feel the width!)
Well, here we are today. The biggest outcome of the Industrial Revolution is Technology. The biggest outcome of Technology is Information. We no longer have a primarily industrial economy, we have an Information Economy.
We have an Information Economy.
But we have an Industrial Education…
In the next exciting episode, we’re going to discuss mindset and how simple it can be to transform what’s possible with a slight change in language. What’s that go to do with this week? Read on and you’ll see…