DEV Community

Hieu Nguyen
Hieu Nguyen

Posted on • Originally published at on

My Love And Hate Relationship With Hackathons

My First Hackathon

I was hanging out at one of my favorite developer communities, devto, and I ran into a post written by one of the admins at Devto announcing that Twilio was hosting their 2020 hackathon at Devto. The hackathon is hosted online, so you don’t have to relocate to participate. I happen to be in quarantine during the COVID-19 pandemic, so given my abundance of time and boredom, I joined my first hackathon.

What is a hackathon?

Feel free to skip this part if you already know what it is or if you want to validate what I am saying is for the most part accurate.

“A hackathon is simply a gathering of developers who share similar interests and are trying to solve some problem in society using current technologies” ~ Hieu Nguyen

The general gists of it is:

  1. They propose a theme.
  2. You brainstorm some ideas around that theme by yourself or with other people.
  3. Once you have an idea, start planning and implementing it.
  4. Testing and fine tuning your application.
  5. Show time - there is usually a chance for you to present your project or post it on some forum for others to see
  6. Receive feedbacks - this is very useful because other developers (some are a lot better than you. Trust me, I learned from personal experience) will look at your application and point of things that you might have missed or complement you on the things they liked.

The goal is not to produce a battle tested application with many features. It is about working together and building something minimally functional to showcase your ideas. Think of it as planting the seed.

Theme and Brainstorming

For this particular hackathon the themes were:

COVID-19 Communications : an app to help folks communicate during this challenging time, either to stay connected or to help resolve COVID-19 related challenges.

Engaging Engagements : an app that a company could implement to better engage with their customers or to manage their business.

Interesting Integrations : an app that integrates Twilio with at least one other API.

Exciting X-Factors : an innovative or unexpected app that doesn’t necessarily fit any of the above categories, but is a clear winner nonetheless.

learn more

Note: you have to integrate one of the Twilio API into your application. Otherwise, it wouldn’t be called the Twilio Hackathon.

My approach to comming up with an idea

I did not rush head first into the hackathon like many people would. Yes there was a time limit. However, it is entirely up to you to manage your own project, so I waited a good week or so. During this time, I was searching for ideas and looking at other people’s submissions to gain some inspiration. The worst thing that can happen is you did something that some else did. To avoid this, do your research and really think outside the box. Some questions you might asks are:

  1. What problems am I facing that I can solve using technology?
  2. Do other people also have this problem?
  3. Are there existing technologies that fix or alleviate this problem?
  4. Can the existing solution to this problem be improved and maybe I can make it better?

My humble beginnings

Since this was my first hackathon, I decided to take the safe route and choose something very simple. A lot of people think that at every hackathon, you have to build something complex with a lot of functionalities. Yes there will be submissions that are crazy advanced and complicated, but bare in mind that it is YOUR hackathon experience. You are free to go at your own pace.

So in this spirit, I built an app that lets you sign up for an account with your phone number, set a timer, and once the timer runs out, you get a text message telling you get off your electron device and offers a suggestion for something else you can do.

I called it: Device Police. I know not the greatest idea or name for that matter, but it suited my level of experience and was achievable within the time constraint.

view full submission

What I love about hackathons

  1. Own your ideas - the nature of a hackthon to challenge your critical thinking and creativity really helps you to think of new ideas.
  2. You are your own boss - Unlike a school project or a work project, a hackathon project is for the most part controlled entirely by you. Besides the theme and several criteria that they imposed, you are not really restricted by any schedule or standards. You want to build it the night before the submission deadline? Go at it! The internet is your oyster.
  3. Meeting awesome people - Sometimes you get to team up with complete strangers with a completely different set of perspectives and skills. This is really good because whatever skill you lack, that person might be able to compensate, and vice versa. Many of these relationships can last a lifetime. They could be your future co-worker at a startup or a friend who considers coding as a conversational topic.
  4. Building presense - Think of a hackathon as an audition for programmers. You prepare your act, polish it, show up on audition day, and cross your finger hoping you pass. Hackathons provide a stage and an audience that may include potential employers. Even if you don’t win it, being present and making something cool and useful is enough to turn a couple eyes in your direction.
  5. Free and unlimited membership - Most of the time, a hackathon is sponsored by some big company who are willing to spare a small percentage of their fortune to scout potential hires or to establish interests in a certain field. For you, that means admission is typically free. The only thing you pay is time, passion, and maybe a little dignity. You will make mistakes, but don’t let that discourage or prevent you from joining a hackathon. Keep in mind that you are surrounded by people who makes a living by fixing bugs or faults in an application that is how you learn.

What I don’t like about Hackathons

Note: Some of these do not apply to hackathons hosted online, but they are fair expectations of an in-person hackathon.

  1. Unrealistic time constraint - a lot of hackathons tends to span a day or two. This small window translates to sloppy code and bugs. Many projects fall through because they could not accommodate a roadblock or a nasty bug.
  2. Toxic environment - If you’ve attended a hackathon in person, then you probably have noticed that they are usually not organized with health and productivity in mind. You are in this crowded space. Lots of talking and cursing(a natural tendency when your codes doesn’t work). When it comes to food offerings, don’t expect a michelin star meal. They often prep pizzas, caffeinated drinks, and other unhealthy food.
  3. Too much socializing and not enough coding - One of the perks of being at a hackathon is meeting people. However, like they always say: too much of a good things is a bad thing. It can become very distracting when you are trying to complete your project and socialize at the same time.

Should you join a hackathon?

If you haven’t been to one before, then I would definitely advise to try it at least once.

If you have previous experiences with hackathons, then make your best judgement and considered how much value you gained from attending it. If it wasn’t good, what could you have done differently? How could the organizers make it better? Would you consider doing an online hackathon?

Top comments (0)