Creating Chinwag - a watercooler for distributed teams

Aaron Asaro

7 minute read

Distributed team challenges #

At the start of 2020 covid-19 changed our working environment. The team of people I managed went from remote-if-we-really-really-need-to, to fully remote within a few days. Fortunately I'd managed remote teams before. I had an idea of the process required and some of the challenges involved. I knew to look at the best practices of some other fully distributed teams (Trello, Gitlab, etc.) to help us along.

The one piece of this move to distributed working that I'd not accounted for was the impact of isolation induced by the "lock down". My team was mostly based in London, UK. Outside of working hours each team member spent plenty of time exploring everything from ballroom dancing, to rock climbing, or hanging out with friends. Working from home was tough for a relatively social group. As London locked down it became a much more lonely city for everyone.

A part of distributed working that was not a surprise to me was the challenge of alignment. If people become mis-aligned with each other you end up with repeated or poor quality work. Misalignment with the company goals increases the management burden.

Tools for distributed team alignment #

We'd long used daily stand up meetings as an alignment tool. Those meets are pretty fast though, with a hard stop after 15 minutes. To keep aligned on the human side we used Donut: short 30-minute non-work chats arranged at random between 2 people every 2 weeks. There are other meetings that happen of course: all-hands, problem-specific, etc. The point is that the human side is relegated to just 30 minutes every two weeks... not enough if you're not getting social input outside of work.

We needed to find a way to help reduce the sense of isolation and ensure that we remained aligned. Enter the Chinwag.

A watercooler for distributed teams #

Chinwag was initially a Google Meet hangout that was left open throughout the day. People could pop in and out and have a chat. This solution had a few problems:

  • finding people to chat with... if someone was taking a break they were probably browsing reddit or catching up on the news.
  • if a chat was coordinated it often ended up being a bit annoying... too many people trying to socialise at once either left the room quiet (no one knowing what to say to a giant group) or noisy but with sentences only half understood.

With these problems in mind I started hacking away at what would become Chinwag was initially designed to overcome the limitations of Google Meet. I designed and built an alternative video chat solution over a couple of weekends. The tool required that everyone on the team keep open a browser tab at a specific URL. If someone opened the tab they'd be paired with up to two other people also waiting on the tab (promo image of Chinwag v1). If someone was waiting, everyone else's tab icon (favicon for the geeks amongst you) would animate to draw their attention.

The initial implementation of Chinwag didn't work out. It used a technology called WebRTC. Unfortunately the more cost effective peer-to-peer (p2p) implementation was a little bit flakey. The only way to make it more reliable was to pay more money and use something called TURN servers. p2p WebRTC is also notoriously unreliable over corporate networks - that was tricky because my team needed to connect to our corporate VPN to get some things done.

In my day-job I manage a software engineering team and we build a pretty cool web-extension. Fortunately that meant that I had a nifty go-to when I was faced with the shortcomings of Chinwag v1. As of today what's been built is a browser extension that alerts you when someone wants to have a chat, and joins up to 3 people in a Google Meet if they're waiting for a chat. Truth be told I wish I'd started with this approach before delving into a pretty complicated WebRTC solution ... but that was a bit of fun to keep me busy in my free time during the start of the pandemic. I've got quite a few more ideas for Chinwag features, but the next step now is to get it in the hands of other teams that need to inject more human interaction into their workplaces.

I really hope these covid-19 lockdowns end soon, however even when they do I suspect distributed working is here to stay. With that in mind I'm hopeful that Chinwag will play a part in making distributed team culture awesome.

Join the conversation 🎷

If you liked this post, please feel free to join in on the Twitter thread.