Monday 2 December 2013

Extreme standups

The daily stand-up meeting is a great invention, despite my distrust of scrum I'm sold on stand-ups.  Getting everyone together and time-boxing a short meeting is a good idea.  The stand-up scope limitation of last 24 / next 24 and impediments keeps stand ups focused and helps keep to the time-box.

However as a project moves on I find a 09:00 stand-up starts to be a drain. I'm not the 9 to 5 type. I prefer long sessions of hacking followed by the occasional day at the sea side.  The obligation to be somewhere at 09:00 is bearable when a new project is kicking off but soon starts to be a finger pushing down on the wrong side of the work/life balance.

When a team is up and running with tasks well understood, stand-ups are uneventful. Last 24 as expected, next 24 per the sprint plan.  Impediments occur, but they dont get sat on until the next meeting. Stand-ups become a status check (eurgh!) followed by "impediments, none".  In the project where we coined the phrase "extreme stand-ups" we were using IRC and had sufficiently well distributed tasks and shared knowledge that there was rarely a problem that only one person could solve. A question fired to IRC got quickly resolved by whoever was first available.  I love the async nature of IRC, it sits there in the background and does not interrupt your flow. This is important when your trying to focus on a complicated task.  When you reach natural breaks you check IRC, not when someone else has a question.  IRC is not a ringing phone or a flashing IM, its real-time but it does not pester you.  We soon realised that IRC was a fine solution for stand-ups too.


The extreme stand-up protocol is as follows...

  • Create a dedicated IRC channel for stand-ups.
  • Before the stand-up, each team members prepares their last24/next24/impediments in a text editor.
  • At the allotted time, everyone switches to the stand-up channel and copy/pastes their contribution.
  • Everyone reads everyone else's contributions, impediments are addressed outside this channel.
  • If you know you aren't going to make it, you can post early, the previous day even.
  • Start promptly, there no need to wait for everyone to show up.


There are various benefits to the extreme stand-up.

Primarily its async, you don’t have to hang up a phone call to attend.  This saves stress.  The same result is achieved if you post the night before then miss the bus in the morning than if you turn up exactly on time.

Time is saved, as if stand-ups weren’t efficient enough, we got them down to 120 seconds. Because you don't type your comments live the tendency to waffle is reduced.  We started to deliver short statements that conveyed the right level of detail.  Reading an extreme stand-up is more efficient than attending a verbal one.

A history is generated automatically, you can view the channel history at your leisure.  The channel becomes a diary of what the team actually spent time on as a team rather than what was planned.  That's useful documentation and it comes with no effort.

Chickens (as in pigs and chickens) can drop in or get a copy of the minutes. Because of the pub/sub nature of IRC, chickens don’t have to be explicitly invited. The meeting is written and formally structured so there's a lot less chance of a chicken taking over the meeting.  Chickens taking over meetings is something that tends to happen when word gets about that the whole team is in one place at one time, once per day.

By copy/pasting each contribution is delivered as an atomic commit.  This avoids the common problem of IM chats where more than on thread is active at the same time.

If you miss the stand-up for some reason its no biggie, your colleagues read your contribution first the next day and often it makes very little difference if you did task a on Wednesday or Thursday.  If there were dependencies you'd be communicating that already.


Scrum-no-buts stand-ups.

The current project I'm on has not accepted extreme stand-ups (yet).

We don’t have IRC we have to use Skype :( booo. Skype has a much higher probability of turning into a tedious conf call than IRC. Skye calls regularly drop out voice or video or loose one person completely. The technology itself is often the cause of slipping the time-box.

We have now hit the issue where some team members don't necessarily join the stand-ups. Either because they have other things to do at that time or because they don’t want to dedicate more than 15 mins.

Perhaps its time to kick some scrum-butts and force the issue, extreme stand-ups worked a charm with my previous team.