Yesterday we distributed 2,000 t-shirts to Mozillians in 90 minutes. I’ve helped give out t-shirts before but never at scale. It turns out that distributing lots of t-shirts is similar to updating software or websites — it works best when you make a series of incremental changes rather than redoing everything. Start with something simple and build from there.
So, how did we do it? We started out with a simple system and then rapidly iterated to become more efficient. Our team of 8 helpers was very quick to adapt to changes, and we found ourselves having more fun as we found new ways to optimize our process.
Each person had one task, which allowed us to focus and keep things moving along. If we found a certain task was slowing us down, someone else could help out with that role to speed things up. Two people helped folks at the check in station, two people retrieved individual shirts, two people retrieved groups of shirts for individuals to bring back to their local communities, and two people acted as floaters, helping out where needed.
Iterate, iterate, iterate
While our initial workflow was okay, we found there were several ways we could optimize it to reduce how long people were waiting in line. For example, the two of us retrieving t-shirts started tossing the shirts instead of walking them over to the check in station. We also found that calling out last names to the runners was causing us to repeat and spell names almost every time — a huge bottleneck. So instead of calling out names to our runners, we set up an IM chat between two computers — one at the check in station and one where the groups of shirts were organized. This way there were no communication challenges between the teams.
We were able to quickly adjust our process because we only made one change at a time and quickly communicated changes to everyone on the team. It also became a game as we thought of ways to get people their shirts even faster. Some ideas didn’t work and were quickly discarded. But we did find several ways to improve the process compared to when we started.
Just like releasing software, at first we started with something basic that just worked. We knew it probably wasn’t the fastest or most efficient process, but it gave us a starting point for improving on it. Our team was extremely receptive to trying new ideas and modifying the flow. As I work on future programs and websites, I’ll remember how much it can improve through quick iterations. It’s not about having the perfect solution at the beginning — I’d rather start with something decent and then build on it and adjust it over time.
How do you iterate on your projects? Whether it’s a seemingly simple task like giving out t-shirts or as complex as pushing an update out to millions of users, how do you iterate on your projects?