2020 Core Dev Sprint - virtual sprinting sessions

I have run or helped run several distributed sprints/hack days/hack weeks - here are some things that help.

  • Try to use the tools folks already use – don’t make people get used to several new things simultaneously, if you can help it.
  • Prep for discoverability – participants need to know who’s working on what so they can work together. But this is harder to serendipitously find out remotely. And some participants are reluctant to commit to a project ahead of time, or forget to update any central board/wiki page/doc as they work. So:
    • if you can, come to a rough consensus at least a few days before the event, agreeing on a few goals you want to achieve, and getting a few people to step up as topic leads; those topic leads should set up some spaces (Zulip threads, videocall rooms, etc., whatever seems good to them) for work on those topics
    • privately, give participants a list of other participants at least a few days ahead of time
    • set up some kind of easy-to-edit central collaborative notes/links/tasks document with a schedule and notes broken up by days, where it’s easy to jump to the section about a particular day (Google Docs or something like it)
    • if a voice or IRC/Zulip conversation gets to where people are making decisions or sharing key info, have a notetaker put notes in that central doc
    • each day, not in a big meeting but as a series of quick small conversations, have a person check in on what everyone’s working on, and take some brief notes and put them in that central document
  • Two big (short) all-hands meetings: kickoff and sendoff – If people trickle in at the start and out at the end without a clear start and end to the sprint, then participants miss opportunities to catch each other, feel less connected, and miss logistical reminders. So: schedule a simultaneous all-hands chat for the kickoff (probably 10 minutes on logistics and 10 minutes summarizing what teams are working on what), and a call for the end of the last day (20 minutes on accomplishments and next steps).
  • Give people a way to announce topic discussion breakouts – as people work, they figure out stuff they want to iron out and talk about. This is usually emergent and spontaneous, and its momentum is not amenable to “wait wait let’s do this when [person] can be here”. So give folks a way to announce “we’re having a conversation about [topic] right now in [place]” so that everyone hears about it and has a chance to join in. The @channel mention in Zulip, for instance, notifies all participants in that channel.
  • Schedule some optional unstructured chat/social time – Ahead of time, schedule a few 60-90-minute open discussion times with no particular topics, and a few open discussion times with fun social topics for a bit of social bonding. Spread these out among the timezones if you can.
5 Likes