Random Hacks of Kindness is a social hackathon, and our model is a little different from traditional commercial hackathons. We tend to emphasise collaboration over competition, and of course we're driven by volunteers rather than employees. However we thought this blog post by a Pedram Keyani, a former engineering director at Facebook had a lot of interesting lessons for those of us that are a part of the wider hacker movement. The original post appeared on Medium, and we've reproduced it in full here with the author's permission. Happy reading!
13th April, 2015
Engineering director of growth at Uber, previously engineering director Facebook
I love hackathons. That’s why for 7 years I organized nearly 40 hackathons at Facebook. At first, I simply did it because I loved the energy of all the people and the freedom to explore ideas outside the scope of my day job. Over time though, those hackathons transformed from small 20 person extracurricular events to a major part of the Facebook culture. Scaling our hackathons to keep up with Facebook’s growth was tough, we constantly had to think through and experiment with the format to make sure that they kept up with the company. At the same time, it was through trying to capture, reinforce, and amplify the very magic that made those original hackathons so special that I came to realize that the hackathons themselves were strengthening and protecting our culture as we grew.
Time Pressure Feeds Innovation
Most ideas die in the early stages because the person/people that hatch the idea become discouraged when they realize the enormous number of steps necessary to actually make their idea a reality. It makes sense right? A great idea unbound by strict time constraints often becomes something we can “table for later.” Of course, as we all know, later seldom actually comes. That’s the beauty and driving force behind a hackathon–there is no later. The fact that there is so little time from the start of a hackathon to the prototype forum forces you to start from the opposite mindset. Instead of promising yourself that you’ll work on that idea later when you have time to perfect it, you’re forced to work with your team on building the bare minimum product that can either prove its viability or not. Only having a few hours to do something is a great clarifier. Is this thing going to work or not?
That simple mental check is incredibly powerful because it forces you to make hard tradeoffs and often times encourages you to get really creative with how to make things work. Constraints are a remarkable force multiplier for innovation.
Self Organization Scales
Before kicking off the hackathon I always set up a wiki page or shared doc with a place for people to put up their ideas and list the kinds of skills their team is looking for, these are things like: backend engineer, mobile engineer, product designer, etc. Next, the hackathon kickoff email always has a link to that doc so that people can post their ideas. An ancillary benefit is that people who don’t have an idea of their own can still reach out and join project teams and hack on ideas that interest them. The act of forming small teams and quickly jamming on ideas, designing things together, and working through problems in real time is like jazz, it encourages improvisation and riffing. This frenetic rhythm enables teams to be greater than the sum of their parts and carries over into all other aspects of how they work together. When you walk around a hackathon you’ll feel it, and it is a beautiful thing.
Hackathons organically encourage culture-building and collaboration within the company without any top-down guidance. This is crucial, because culture isn’t something that can simply be prescribed. As teams begin to meet up and flesh out their ideas it reinforces the importance of prioritizing action, and reminds both company veterans and new arrivals how to move fast and build together.
Trust and Empathy Create Speed
Organic self organization results in people from across the company meeting new people and building connections that they wouldn’t otherwise make. As these cross-functional teams work together, people get to know one another and build friendships as well as develop a greater understanding of what different teams and job functions do across the company. In my experience, it’s this exposure that builds the social bonds that engender trust, empathy, and create alternate paths of information sharing that makes companies faster and more agile at getting things done. Teams that don’t know each other personally don’t work together as effectively as teams that do. Before a hackathon, a frontend engineer might think “Ugh, trying to coordinate with sysops on this project is going to be a pain.” After a hackathon that same engineer is more likely to think “I’m going to reach out to Rachel and see how we can get this done quickly.” Building trust during the good times will help your company better handle the bad times because people will feel a connection to their coworkers and they will lean on those relationship.
Risk Everything, Win Together
For people to take risks they have to be willing to fail. Hackathons are failure incubators and failure accelerators. By normalizing failure, we encourage risk taking. Hackathons help teach your team that failure is a good thing, that it’s the flip side of innovation. After all, you can’t have that one amazing idea without exploring hundreds, or even thousands of “bad” ideas. When people work on ideas they are passionate about (vs. their performance is being measured) they’ll often venture into new and interesting spaces. Some of those unfettered explorations will pay off with a revolutionary idea that changes the entire course of how the company operates (I’ve seen this happen, and it really is amazing). Most of the ideas at your hackathon won’t result in a killer new feature or technological breakthrough — and that’s 100% okay, because the point of a hackathon is to support bold experimentation and the fearless embrace of failure and iteration. And, while those rare and beautiful “aha” moments are wonderful when they happen, you’ll undoubtedly unveil a thousand less obvious — but equally important ties — that will result in a tighter team and a bold culture of innovation. Either way, the journey is the reward. (Plus, there’s always free t-shirts.)
Code Wins Arguments
Too often in life, arguments get won by the loudest person or the one most willing to dig their heels in. Fortunately, in a company of builders, nothing beats code. Hackathons turn great ideas into reality by executing on the here and now. Hackathons push past the hypothetical and force ideas to either fail or thrive. Because hackathons are flat, ad hoc and fluid, they create a safe space for people to build-out and push ideas despite opposing points of view. Take Facebook Chat for example. In the early days there was a lot of negative pressure against building chat into the Facebook experience. Thankfully, a small team built it in a hackathon and proved the doubters wrong. Fast forward a few years and that single service is the core of how hundreds of millions of people communicate.
Be Playful, Be Curious
Not every idea has to — or even should — be focused on big changes. In fact, being too focused on high-impact change all the time can blind you to the obvious ideas right under your nose. Creating spaces for people to play with ideas and have fun together wakes up that curious part of our brain that was most active when we were children.
I’m at Uber now and we’ve had 2 “official” hackathons, hundreds of informal hackathons and a number of workcations. I’m organizing my first hackathon here now, and I can already feel the creative energy of everyone in the office. I can’t wait to see what people create and how these hackathons will shape our culture in the years to come. I’m optimistic that at Uber–like at Facebook before–that these hackathons will drive teamwork, strengthen culture and help us reach the future faster.