Lean Agile Edinburgh meetup at Royal London, March 2018

You can watch the recording of the live stream above.

  • 14:33 Introductions
  • 18:45 Welcome from Royal London (hosts)
  • 23:50 Kathy Thomson—Explain and explore
  • 42:00 Krish Bissonauth—CIA model
  • 1:24:00 Greg Urquhart—What does Agile even mean now?

Last night I took the train down to Edinburgh for my second Lean Agile Edinburgh meetup.

Started in June 2013, Lean Agile Edinburgh is an informal and social monthly meetup to discuss and share all things agile, lean, kanban, scrum, etc. At most meetups we have talks, workshops/activities or Lean-Coffee discussion sessions.

Yesterday’s meetup was kindly hosted by Royal London at their new offices at Haymarket Yards in Edinburgh, a short hop, skip and a jump from the railway station. Last month’s was hosted at the other end of Princes Street, in the Amazon Development Centre Scotland offices at Waverley Gate.

The evening began with an opportunity to network and chat with folks over pizza and refreshments, before we took our seats for three excellent presentations.

Explain and explore

The first session was a very hands-on, get out of your seats and move about exercise lead by Kathy Thomson, a scrum master at Royal London.

We were each given a postcard and pencil and invited to answer the following question in either a word or short phrase: “What does agile transformation mean for you?”

I wrote something like, “Iterative change that is collaborated on by a team towards a shared goal”.

With our postcards completed we were invited to stand in a large open space to the near the presentation area, and turning to the person next to us explain our answers.

Next we were invited to exchange our cards with someone else, and then someone else, and so on until we had effectively shuffled the cards. I ended up on in the middle of the room. This was the ‘explore‘ part of the exercise.

And then again we were to pair up with the person next to us and explain to them the card we were holding. Which, obviously, was now not our own card. Interestingly, I felt less defensive about explaining this card. And I appreciated seeing someone else’s perspective on the same question.

Somehow, I ended up with two cards for this one! And I can’t remember either of them.

And then we were off around the room again, quickly exchanging cards, and pairing up to explain our new cards to one another. Mine simply said, “Pace”.

It was a really interesting and useful exercise, even with a room of about 60 people.

Control Influence Accept model

Returning to our seats, Krish Bissonauth, an Agile coach at Royal London, introduced us the Control Influence Accept model (or CIA model).

This is a versatile problem-solving and stress-management tool that identifies three ways to respond to challenges:

  • Control—identify the elements of the situation over which you have control.
  • Influence—identify the elements over which you have no control but which you can influence.
  • Accept—identify the elements over which you have neither control nor acceptance, which you will simply need to accept and adapt to.

I loved the Clarke Ching quote he finished with. It spoke about social comparison—why do your Facebook friends’ holidays and kids look so much better than your own? It’s simple: their lives are just like ours but they only share the good stuff. So it is with books we read and presentations we experience about Agile and DevOps: we see the good stuff and we feel bad.

His message: stop comparing yourself to the “Facebook” versions of Agile and DevOps, and start comparing yourself with how you were doing three weeks ago, three months ago, three years ago, and feel proud of the all the hard work you are doing and the progress you have made.

What does Agile even mean now?

The final talk was by former Skyscanner product delivery director, and current Agile 4-12 consultant Greg Urquhart.

There was much in Greg’s talk that resonated with me, but it was what he called his “cut the Agile bullshit-o-meter” slide that I found most helpful. He had set himself the task of limiting his definition of what agile is to just five bullet points. This is what he came up with:

  • A culture of experimentation constantly generates validated learning.
  • Teams have missions, mastery and the autonomy to act with no strings attached.
  • Software is frequently delivered to users. We learn its value through serious use.
  • Teams and resources align beautifully to strategic objectives at all times.
  • Minimum viable bureaucracy.

If you’re not doing these five things, he argued, then you’re not agile.

Towards the end of his talk he advocated for what he called scientific engineering (learning work) and argued that this more than lean and agile (knowledge work) would bring about the most effective and productive change.

This aligns with another talk I attended recently in Perth at the Scottish Programme and Project Management Group conference, where one of the speakers encouraged all the project managers and business analysts in the room to start to get familiar with big data and data analysis. It’s what the most valuable companies in the world are doing—Apple, Google, Amazon, Facebook. They are using data (massive amounts of data) to design and refine their products.

I walked away from last night’s meetup feeling encouraged and more animated. It has certainly given me a lot to consider, a couple more tools under my belt, and a little more clarity about the direction I want to take my career.

Thanks Lean Agile Edinburgh.

The boys ‘helping’ me with my studies

Boys on the desk
Reuben, Joshua and Isaac ‘helping’ me with my studies

 

For the next few days I’m on a course at work looking at DSDM Atern agile project management. It’s certified, so I have exams on Wednesday morning (foundation) and Thursday afternoon (practitioner).

When I got home last night, after dinner, I decided to sneak upstairs and get about 45 minutes of study in before the boys had to go to bed.

It turns out Reuben, Joshua, Isaac and monkey had different ideas and came to ‘help’ me study.

Agile planning poker

For a few months we’ve been starting to use Agile, and specifically Scrum, methods in planning and managing our Web projects at work.

This week we adopted a new practice: planning poker.

Agile / Scrum iteration planning board
Agile / Scrum iteration planning board

Like many teams starting out with Agile practices we didn’t just jump in feet first and adopt every Agile method going; that would have been too much to take in. So we began with a few methods:

The photograph above, taken a couple of months ago, shows the planning board in our office — an information radiator — that shows us at a glance how many tasks are left to do, what’s currently being worked on, what’s in testing, what’s done and (unlike, I would guess, most other Agile boards) what we’re waiting for.

Multiple projects

By definition Agile really should be used by teams working on one project at a time. It’s simply not efficient working on more than one because as soon as you start switching between different projects you lose time. One reason is that it takes time to get back up to speed with project B after working on project A.

However, some of us have no option but to work on more than one project at a time, as well as juggle support emails, telephone calls and the like. In which case you simply have to adapt the principles of Agile to accommodate more than one project, and essentially run them all in tandem as though you were working on multiple threads of a single project.

Karl Scotland, formerly Development Team Leader with BBC Interactive wrote a really useful paper back in 2002 entitled “Agile planning with a multi-customer, multi-project, multi-discipline team” (DOC, 225 KB) in which he explained how he ran things at the BBC where they would regularly work on three projects simultaneously.

We currently have 19 projects on the go at the moment. Which is far, far too many and we need to do something about it. So this week we revisited our project backlog and introduce a new Agile method to the mix: planning poker.

Planning poker

Planning poker cards
Planning poker cards

The idea behind planning poker is very simple: “planning poker is a consensus-based estimation technique for estimating, mostly used to estimate effort or relative size of tasks in software development” (Wikipedia).

Each member of the team had a pack of cards (I made our cards using Microsoft Publisher 2007 and a handful of skills) which have a sequence of numbers printed on them. They are quite often close to a Fibonacci sequence to reflect the uncertainty in estimating larger items. Our pack uses the sequence: 0, ½, 1, 2, 3, 5, 8, 13, 20, 40, 100, a ? (unsure) and a coffee cup (I need a break).

We then took each item in our project backlog and after an explanation of what was required we all took a vote on how difficult we thought it would be as a project, placing the cards down on the table at the same time so as not to influence another player’s estimation by laying your card earlier than them.

Once voted, unless the group has a consensus the person who laid the lowest-value card and the person who laid the highest-value card explains why they thought it was easier (they’ve done this before, for example) or harder (what did the others miss?).

Votes are taken again until a consensus has been reached and then the team passes to the next task or project on the list.

We found it a really useful exercise because it actively encourages everyone to speak and gives everyone an equal say in the decision-making processes associated with managing projects. We really quickly got to the core issues related to each project and at times an interesting spectrum of scores (13, 20, 40 and 100 for one project).

Planning poker cards (PDF)

Our conclusion

Our next stage is to complete the scoring on the remaining <cough> 60+ projects, and work with our boss to prioritise projects. That should give us an overall score (estimate x priority) which will enable us to more accurately plan when we should schedule these projects and in which order. For example, you don’t really want to be tackling three really taxing projects at once.

Oh, and it makes the task of planning much more fun.

If anyone wants a copy of the cards I made (in PDF format) drop me a note in the comments and I’ll upload them for you.

More resources

Luis Goncalves, co-author of the excellent book Getting value out of Agile Retrospectives has written a really useful article about planning poker:

Planning poker and scrum poker: everything you need to know

JavaScript doesn’t suck!

Interesting interview with Douglas Crockford (Senior JavaScript Architect at Yahoo!) on the SitePoint website entitled JavaScript doesn’t suck.

Having been reading up on Agile practices recently, I found this final piece of advice interesting:

… If you had fifteen minutes of attention from everyone who’s writing JavaScript in the world today, what one thing would you teach them to do better—or not do—with the language, to improve JavaScript on the Web?

The number one thing is, be aware that you can and must write good programs. One of the principal measures of the quality of a program is its legibility. We should be writing programs for other people to read. And I recommend code reading as a standard process of all development activities, so a team would do weekly code readings at the least, whether you take time out to read each other’s code … I think the benefits that come from that are tremendous.