I went to my first hackathon in November 2012, registered as a “designer” instead of a “developer,” found myself the only woman on a team, and proceeded to have the most fun, nerve-wracking, up-and-down weekend ever with a group of strangers.
This is what I remember: joy, laughter, sharing of backgrounds, learning how to work together, an argument between two team members over a code design technicality, panic, stepping in at the last hour to help finish a presentation.
Later on, one of those strangers — a marine-turned-business-consultant — would tell us that not since his military days had he had such an intense bonding experience with a team.
I wasn’t on a winning hackathon team until about a year later, at my 6th or 7th one. What I’d realized by then was that I didn’t have to win to have a great experience. Every time, it was the people I connected with that made the experience the most satisfying.
A few reasons I’d encourage any budding developer to go to a hackathon:
-
You’ll learn what you don’t know.
- Hackathons are as much a social event as a coding event. In the process of talking to people, you’ll learn from the tools they use or the tools and resources they talk about using.
-
You’ll realize what you *do* know, and teach others about what you know.
- Technology is big, and there’s a wide range of people who go to hackathons. An iOS developer is not going to have the same range of expertise as an Android developer or a web applications developer or an arduino hacker or a UX designer. Don’t be shy about sharing your skills — even if it’s a cool trick in Photoshop. I guarantee there will be people who don’t know how to use Photoshop too.
-
You’ll get to pair-program.
- THIS. Pair-programming is awesome if want to focus on getting as much done as possible in a short amount of time, and would enjoy talking out problems with a partner. It’s best to find someone of a similar skill level, and take turns “driving” (typing) and advising.
-
Free food!
- To be honest, the food quality depends on how much attention the organizers pay to it. But yes — most times, expect nourishment.
-
You’ll build something by the end of the weekend.
- More often than not, it’s not *completely* done… but most likely you’ll have something visual to demo, and that’s all that matters.
-
You’ll automatically contribute to open source.
- Hint: if it’s software, push it to github.
-
You’ll meet many interesting, motivated people.
- Who goes to hackathons, if not motivated people who think it’ll be fun to spend a weekend building something?
-
You’ll make new friends.
- Hackathons are time-sensitive, sometimes intense experiences that force people to work together. This makes for great bonding experiences.
-
You’ll be on a prize-winning team 10-25% of the time.
- Companies sometimes sponsor hackathons to advertise their APIs or products to developers. They also occasionally sponsor prizes. What this often means is that there’s no single hackathon “winner,” but rather multiple winners.
-
You’ll grow as a developer.
- You’ll learn a lot from talking to people, from being forced to understand better the unfamiliar framework your team picked to use, and from being able to sit by your team and ask or answer any immediate quesetion.
A few misconceptions about hackathons:
- You have to be on time.
- You have to pull an all-nighter and/or sleep overnight.
- You have to be a good programmer.
You don’t have to be a good programmer, stay overnight, or even be on time to go to a hackathon. Half the time, most of the attendees won’t know what they’re working on until a couple hours in — *after* they’ve formed teams with other strangers. Approach hackathons with the willingness to meet people and to learn, and you’ll have a fantastic experience.