The next batch of TADHack events is right around the corner with the next hackathon happening in Paris on December 12th and 13th. A lot happens during a hackathon: great gear is distributed, awesome developers you’ve been dying to talk to are attending, recruiters for awesome companies are also there, and really good food is floating all around….oh yeah, and you have to code too! There is so much to do and so little time, especially if you want to be able to partake in all of those.
Having participated – won and failed – in a handful of hackathons, I’ve accumulated a checklist of tips and tricks that I’m passing on to you so you don’t have to make the same mistakes I made! There may be a hundreds of these types of posts online and I deliberately chose not to look at them to write this post so I could deliver what is 100% personal experience. If you follow the tips below, I can guarantee you that your next hackathon experience will be so much win!
Preparing in advance (at least a week)
Read about sponsors and partner APIs in advance
Many hackathons (like TADHack) make you use a particular set of sponsor APIs to qualify for the prices. So in these cases, your ideas will be centric to the sponsor APIs available at the event. Make sure you read the documentation of the ones that interest you *ahem* the ones that have the bets prizes! This way you’ll be able to start thinking about ideas for your app and you’ll already have a head start on knowing about how to use the API.
For Procrastinators: if you are already on your way to the hackathon, download the documentation to review it during your commute.
Get a clear idea (and a backup plan)
This is probably the most important point of all. You will save a lot of time by actually knowing what you want to build before getting to the event. Seems very obvious, but too often developers think they will have an idea when they get there. SPOILER ALERT: you won’t.
Although 24 hours seems like plenty of time, it is not – you will probably spend a maximum of 16 hours of productive coding, the rest will be wasted between setting up, eating, socializing, sleeping.
Extra points (for winning): think about your idea on a business level:
- What is the issue it will be solving
- Why is it such an important issue to solve
- How will this idea be solving it? (this is your favorite part where you can talk about all the cool features you’ve implemented and how the code works)
For Procrastinators: if you are already on your way to the hackathon (and you read some of the documentation of the APIs you want to integrate) read on some previous hacks built using the APIs or hardware on Hackster.io or Devpost.com then make those better – give credit to original creator!
Get a teammate (2 maximum)
Chemistry is important, especially when it comes to coding a whole app in very little time. Hackathons can be very tiresome, especially when they stretch over 2 days. You are bound to have some stress and friction along the way and picking a teammate you feel comfortable disagreeing and arguing (a tiny bit) with is very important. Your skills also have to complement in some way so you can boost productivity by dividing up the task list.
For procrastinators: If you are already on your way to a hackathon and don’t know who your teammate will be. Spend some time getting to know him or her before you dig in the code.
Build Designs and Mockups
Many hackathons allow you to bring finished designs and mockups – just no code in advance!
For procrastinators: Use a rapid wireframing tool like Balsamiq so you have a sense of the flow f the app before your start coding. Also, use Bootstrap or Semantic UI or Material design so your app already looks half decent.
Update all the things
It is important that this happens before your pre-hackathon coding session. This is because it is the only time you will be updating anything until after you have that prize in your hands. So bring it all out: apt-get update, brew update, software updates, OS updates
Start coding (don’t bring it with you though!)
Just enough to really get familiar with the APIs, frameworks, and gadgets you will be using. This will also help you figure out all the time-consuming installation of software and dependencies you will need! (Node, python, etc…). Think about how are you going to code this app and what gadgets will you be bringing? Download all the software and frameworks you need. Set up a task list in descending order that you will pull out first thing at the hackathon. If you have teammates, break it up according to your skill set (front-end, back-end, etc…).
The night before
Preparing for a hackathon is exactly like preparing for the olympics. Everything will count in your ability to deliver: how much you sleep, what you eat, and how you exercise (your brain)
Charging your devices
Somehow, as developers we always assume that going to a hackathon means that there’s going to be state-of-the-art charging stations everywhere. That’s usually not true, I’ve ended up having to crouch next to the vending machine many times for long periods of time. So charge your device the night before and bring plenty of portable battery chargers.
Don’t update your OS! Don’t update anything that you cannot spend time testing!
What to pack
- Directions to the hackathon
- Water – you never know
- Sugary snacks – Remember what I said about breakfast being your only real meal? Get that fast-release carbohydrate in your blood for the last stretches!
- A sweatshirt – mommy wouldn’t want you to be cold. Especially in the US, the air conditioning is as forty as cuddling with an ice cube!
- Internet connection (3/4G) and tethering option- the WiFi there can sometimes be way crowded!
- Portable battery chargers
- Extension cords
- a notebook and a pen to jot some ideas down.
- All in a nice bag pack easy to carry around
- Don’t forget your gadgets and hardware you want to code with!
Getting a good night sleep – you will need your brain to be active!
Getting a good breakfast
Chances are that if you followed all of the previous preparation steps very well you will get sucked in the zone right away and won’t have time to even think about eating. That first meal (and probably the last until late that day) will be very important.
At the hackathon
- Don’t go straight for the coffee, pull out your task list first and mingle with the crowd a little.
- Bathroom break before the code!
- If it ain’t broke, don’t try to fix it: unless you get error messages – do not touch that UPDATE button or type that command
- Functional code > clean code
Though the whole industry advocates for code that is clean and where each variable declaration is accurately thought-through, you are at a Hackathon you are not pushing enterprise-grade code. Remember that. Your code can and will be messy and not all of your implementations will be beautiful. Spend a little time on comments though so you can review things afterwards if you have bugs or if you want to publish it later on.
- Clean kitchen: Keep your table clean and tidy. This will prevent you from worrying about your things getting stolen and will get your mind uncluttered.
The presentation is everything!
According to Murphy’s law, your app will fail during the demo. Before presenting, get yourself Quickcast or something equivalent and record how your app actually works – this will save your a** when the wifi/your computer/the microphone/the server/the code/anything goes down.
Remember those business points I talked about in the preparation part? Now is the time to bust them out and “WOW” all the potential investors and the judges!
It’s the sad truth but at the end of the day, your code will only account for less than 30% of how judges perceive your app. So make sure you nail that presentation with use cases, screenshots, and unicorns.
Premium tip: don’t make any changes to your code in the last hour before your presentation.
Code, deploy, fail, repeat.
Chances are your first hackathon experiences will go horribly wrong (my personal experience). I hope that by following these tips, it won’t! Just like have your own experiences and have your own advices!