You Never Really Know Someone Until They Throw A Blue Shell At You While Laughing Maniacally

Short week, short post.

Late last year, a colleague of mine brought their Nintendo Switch + Mario Kart into the office, with the plan to have a few casual games on a Friday afternoon to wind down after a long week.

Last Friday, we just finished the second season of our official office tournament.

There is a big difference between those two statements, and I’m going to use this post to explore that difference and write about how and why we did what we did, and some of the benefits (beyond fun) that we saw.

Round 1, Fight!

Progressing from that initial Friday, there was a small group of people who played regularly, usually during lunch time. We’d found that we’d gotten to know each other much faster and more effectively through racing than we ever had through any company sponsored BBQ’s or similar events. That familiarity had even knocked down a couple of walls that had grown (unintentionally) between a few areas of the business, and we were all much more open and communicative than we’d ever been before.

So why not offer the same opportunity to everyone else in a somewhat structured fashion?

Mario Kart is a rare gem of a game. Incredibly low barrier to entry, but a high skill cap. Anyone can receive a quick lesson on what buttons do what and get in and have some fun, but it takes some serious practice to get really good. Not only that, but games are generally quick (which is good for flow) and fun to spectate as well as participate.

Perfect for a competitive tournament involving a decent number of people.

The first iteration was simple:

  • Scores at the end of each set of races are recorded per player
  • Scores are averaged over time
  • After some calibration, races are organised by score bands
  • Eventually, bottom two (out of four) in each set of races is knocked out
  • Continue until we have two sets of finals (runner up and grand)
  • Winners get to write their name on some plush shells

I’m summarising the first tournament in the points above of course. We actually started with just “lets record races and somehow find a winner” and then iterated from there.

That first tournament took us about a month and a half to run to completion. Races were organised and booked into peoples calendars as appropriate (mostly during lunch), and the finals were organised on a Friday with drinks and snacks for all to come and watch the festivities.

Competition was fierce and everyone had a great time.

A lot of people commented afterwards that they now knew more people after a month than they had in the entire time they’d been working for us, which was exactly what we’d aimed to accomplish in the first place.

Some Shows Never Get a Second Season

With the first tournament behind us, it was time to reflect and improve. We actually had a few informal retrospectives with a bunch of the participants (and non-participants), discussing what went well and what went poorly.

For example:

  • The knock outs had been particularly harsh, where one bad race could see you kicked out of the tournament altogether, even if you’d been racing well up until that point. It also limited interest because it was so brutal and final. Once you were out, there was really no motivation to keep racing
  • The score averaging was okay, but it was really just a poor mans ranking system
  • Because the races were organised around score bands, and the bottom two were knocked out, if you couldn’t get all four people in the band together (which happened a lot) the tournament was a bit stuck
  • The tournament had dragged out a little bit, from a combination of the previous point and because we started before the Christmas break

Keeping those things in mind, it was time for Season 2, where we had two main improvements in mind:

  • Complete the entire tournament, start to finish, in one month
  • Rather than average scoring + knockouts, use an ELO ranking system. People could race whenever and whoever they wanted, and as long as the race was recorded, rankings would be adjusted appropriately
  • Top four players by rank go into the grand final
  • Next four go into the runner up final (which I’d taken to calling the grandiose final)

This worked a hell of a lot better, as people could keep racing all the way, and even a series of bad races could be overcome through sheer dogged persistence (and winning obviously).

It took less effort to run (no need to schedule races and chase people down), and we got the same sorts of organisational benefits as last time (familiarity, morale, etc).

The Ramifications Of Your Actions

One interesting side effect that we didn’t notice until later was that the social break in the middle of the day, where we focused on doing something vaguely physical (instead of mental) refreshed everyone, and energised them for the afternoon. A bunch of different people let me know that they felt more productive in the afternoons after they raced/spectated compare to the days when they didn’t.

Of course, it wasn’t all peaches and cream.

The lunchtime races could be somewhat disruptive to those not participating (cheering and whatnot), so the participants had to be careful to modulate ourselves, and to strictly follow our time limits (none of this “just one more race malarkey”). Also, there might have been a few times where our executives were worried about what sort of impressions we were giving to our board of directors (when they were visiting), but a few honest conversations about the benefits smoothed those things over. Hell, the CEO actively participated in the first tournament, which was great to see.

Conclusion

In essence, what started purely as a bit of Friday fun, quickly progressed into a valuable social activity for getting to know people across our entire organisation.

We have no intention of stopping, so there will almost certainly be a Season 3, and it will probably be even better than the last one.

I mean, we’re an agile organisation that prides itself on being able to adapt and adjust our approaches based on our learnings, so there’s no reason we wouldn’t apply that here too. We’re technical too, so we might even build some sort of thing to help us administer and track the tournament.

Maybe image recognition for the recording of scores and automatic booking of races for matched participants? That sounds pretty cool. Or a Hipchat/Slack bot to help us administer things. So many possibilities.

We’re software engineers after all.

Hell, I’m surprised someone hasn’t tried to write a bot to race for them yet.

This post was originally made waaay back in 2018 on my old blog, Code and Compost. I've migrated it here because I wanted to link to it and I didn't want to encourage people to go to my old blog at all.