What I Wish I Knew About Hackathons

Hackathon season is about to be well under way, with the fall semester especially notorious for the simultaneous job fairs and intensity of seasoned hackathon veterans. I remember my first hackathon: it was my sophomore year of college, just six months after I decided to study computer science, at Princeton University. The experience wasn't what I was expecting and I left the hackathon to see the Princeton campus and head home.

Fast forward a year and a half, I finally found my stride with hackathons. Until I found hackNY and FlawlessHacks, two New York based hackathons that do an extraordinary job educating students and pushing out fun projects, I didn't realize that there was an incorrect way of doing hackathons.

This is what went wrong with my prior hackathon experiences:

  1. Friends bailed and I didn't have the confidence to participate in a project with a stranger. To be fair, the one time I did, the stranger told me I wasn't cut out for the CS world and I should try my time with more easy things, like reading and writing.

  • I was overwhelmed by the amount of acronyms and abstract terms that greeted me at the doorway. APIs, ML, Hadoop, Unity, AFX... Like what were these?
  • I also didn't know what there was to create. Sure, I knew most people did personal websites or created a mobile application, but I didn't know the technology past HTML/CSS. Heck, no one even told me a controller existed, let alone what it was.
  • Here are some tips that I wish I had learned before going to my first hackathon, and some things about hackathons that I wish were done differently.

    1. It's totally okay
    ... To not find your stride with hackathons. Everyone around you is faking it till they make it, too! Once I got a better mindset, I was ready to prove that random dude from my first hackathon (the one who said I should do reading and writing instead) wrong.

    2. Know what to create:
    Hackathons are meant to be environments where you can build a software or hardware product. I wish I knew what kinds of things could be built. On the software side, there are generally two types of software projects, web or mobile. If you opt for web development (web dev), then you can choose to build your site with basic HTML/CSS/JavaScript. What I recommend is knowing all the different types of web technologies before you go into the hackathon and build a site with that. You have options like Ruby on Rails, Node. JS, Django, among others. On the hardware side, people use Raspberry Pi chips or virtual reality headsets to test some cool software components.

    3. How to create it:
    This may sound like you actually create something before you go to the hackathon but this is not the case. Read about all the foreign terms of the technology and try to wrap your head around what they are saying. Compile a list of questions beforehand, like what does it mean to create a server in Node?, and get it answered at the hackathon

    4. Trust the bloggers and their guides.
    If you Google search "how to deploy a site using Heroku", then just follow the instructions and don't question it. If you go through the entire guide twice and it doesn't work, then you start "debugging". Figure out why your results don't match the blog. Ask someone around you. 11/10 someone will have an answer if you can't figure it out yourself. StackOverFlow counts as a person to me in these instances.

    5. Get rest when you need it (this is most important!)
    I'm not the greatest hackathon attender but the most important thing I saw was to recognize when I was getting burnt out. No one else can spot that energy level drop but me, and it's important to get that rest when you need it. I didn't realize that nobody else (but me) cared that I wasn't able to pull a whole 24 hours without sleeping.

    Good luck and happy hacking!