My First Hackathon Experience

Date: December 27 2021

Takeaway: A first-timer's experience with hackathons (what I learned, what mistakes to avoid and how I would tackle it again given the chance).

Ever since I thought about combining computer science into my degree (you can read about my thought process here :')), participating in a hackathon has always been up there in my bucket list. To me, I couldn't truly call myself a programmer until that box had been checked off in my life. After months of procrastination, I finally signed up as a participant in nwHacks 2021, and here's how it went!


My summary starts on November 14, 2021, where my partner and I both agreed on the idea that we'd try to create a working calculator within the first few hours of the day and leave it at that. However, being that neither of us had ever done a hackathon before or created a web application from scratch, this obviously didn't happen. We spent around 3 hours trying to figure out how the 2 of us could simultaneously contribute towards the same github project (we ended up using the live share plugin) and even more time trying to create a visual design that we were both satisifed with. Not only that, but neither of us started working on the project at the designated 8:30am start time and we each set aside time for lunch and dinner. Being that this was approximately a 12 hour hackathon, this left us with around 4 hours to code the functionality of the project. Evidently, we didn't have enough time to finish the project during the hackathon itself so we submitted what we had and left it there. You can read more about the finished product here.


Needless to say, my partner and I didn't win any awards for this hackathon, but many lessons were learned. Before I get into any of that, other applicants were allowed to comment on submitted projects and give us a ranking and I just wanted to share one that I found to be extremely memorable.

"It's an overall good and wholly functional project. But it seems lack of creativity, since the calculator is kinda a normal thing, and the design is also not very impressive. Plus, the demo is too short and lack of attraction for me."

What I like about this review is that it's brutally honest. Although the initial read stung a bit, it does give me a clear indicator of how much more I can improve in future hackathons and projects, so to this anonymous person, thank you for the feedback. :)


Aside from actually creating a project for the first time, here's what I learned from my experience:


Firstly, realize that hackathons have themes! I'm going to keep this one short because it's probably a no-brainer for everyone on the planet except me, but hackathons have prompts that you must base your project off of. My excuse is that I was told by my friends organizing the event that we could design pretty much anything and I took that literally. In actuality, the prompt was to create anything that promotes inclusivity in some form (still very broad so not sure how I messed this one up :'))


Secondly, make sure you manage your time well with a clear cut plan BEFORE STARTING THE PROJECT. From the passage above, it's clear that my partner and I didn't effectively plan out how we would tackle the project and we ultimately paid the price for it. For future hacakthons, I'm definitely going to try to plan out at least a day before the hackathon everything from what we're designing to how much time we're allocating for each section to who's in charge of what. This is especially applicable for shorter hackathons such as the 12 hour limit for nwHacks.


Thirdly, ensure that you have time set aside for presentation details because I've heard that how you present your project is just as important as the code itself. I've learned now that judging occurs at the end of hackathons where you as a team would explain how your project works either through video or live. While viewing the winning teams, it came to my attention that every single one of those teams created an ordered presentation that often included a slide presentation as well as a live demonstration of the project, which put my team's 15 second calculator clip to shame (the quote above was now making more sense).


Fourthly (is this even a word? :0) and finally, I learned to expect competition. This hackathon was offered as an experience for new hackers such as myself so I had no idea what to expect in the kinds of projects that other people would make. However, after seeing what others had made, it was yet again another reminder of how much room for improvement I had within the field of computer science. Overall a very humbling experience! :D


To conclude this article, despite how my partner and I did almost everything in the most unoptimal way, we still had fun designing and creating a project from scratch, which brings me to a final point that you should do before each hackathon: set a realistic goal for your team. Unless you're a programming superstar, I don't think it's ideal to go into each hackathon with the idea that you're coming home with a prize. For this hackathon, all I set for myself was to submit a project and I'm proud to say that I'm happy with how it turned out!


In the future, I'd be really interested in seeing if I'm capable of actually placing in a hackathon (and preferably do it in person!), but regardless, I enjoyed the programming environment and I highly encourage everyone to experience it firsthand!