I’m a huge fan of hackathons. Last weekend, I had the privilege to organize one for the first time after attending a few. Even though being super tired on Sunday evening after a long weekend of very little sleep on a couch, I was so happy being able to organize a successful event.
You get to write bad code
Hackathons have such limited time to come up with an idea, learning the tools and implementing the idea that there’s no way you can write perfect code with all the corner cases thought through and all different user actions taken into consideration. Once you realize that, it’s really liberating feeling. You can mock some parts of the app or only make it work on a subset of possible inputs. You can also not worry about the maintainability of the codebase – often you’ll never touch the project anyway or if it’s really good, you are probably better off rewriting it from the scratch anyway.
You get to experiment
In addition to writing bad code, you get to take a sidestep from your daily life. I usually try to select a new technology, framework or language to hack with during a hackathon. During our company hackathon at Chartio I created an online clone of Jeopardy TV show using Node.js since I used Python for my daily work.
The code base is absolutely horrible, it doesn’t always work and it lacks a few key features from the show but for the two days and the demo, I absolutely loved working on it and getting my friends playing it.
You get to meet amazing people
Meeting new people, teaming up with them and learning from them is a killer in hackathons. Let’s say you’re a backend developer and you team up with a UX designer and a mobile app developer. If you do things the right way, you’ll end up learning a lot about UX design and mobile development in the process. You might meet your future co-founders or find new people to your existing team. Working with someone intensively for 48 or 72 hours reveals character in people so you’ll have a way better idea about who someone is.
It’s often tempting to participate in a hackathon with an existing team but keep in mind the positive opportunities that arise from going in blind and finding the team at the event.
You always fit in
Hackathons are great because they are accessible to developers and designers of all skill levels. You can easily adjust the difficulty of your project to match your skills (it’s always better to do a project that is slightly over your current level). Both a junior and a senior developer can attend the same hackathon and they both feel bit lost for a moment in the beginning but learn something cool by the end.
You get to showcase what you did
Public speaking is the biggest phobia in the US. Research says that even one in four people are afraid of speaking to a crowd. I feel hackathons are a great place to practice. You’ll be talking about something you’re passionate about (I hope at least, you just spent a weekend working on it) to a group of peers in the same situation than you. You have most likely even talked with most of the people (depending on the size of the hackathon) during the weekend so you’re not even talking to a group of strangers.
You only learn pitching by doing it so it’s better to start as soon as possible. Good sales pitch is not a thing for only startup entrepreneurs. Everyone benefits from being able to sell their ideas, products or skills in life. The more you do it, the better you will become and at one point you’ll realize that you’re comfortable pitching anything to anyone – and you get people to buy your story.