Hackathon: insight

In February 2019, I participated in Hack the South, which is a hackathon organised in Southampton as part of MLH (Major League Hacking). The idea of hackathon is to develop exciting software application or hardware within usually 24 hours in a small team and present a demo at the end of the event. This article provides an insight into what a team experiences during a typical hackathon.

Team formation
Although most participants form teams beforehand, which makes it easier to discuss ideas before the start of the 24-hour countdown, there are still many people forming teams at the event. These have usually around 5 students.

Discussion & task division
3-2-1-go! The competition has begun. Now the teams ideally know what they want to build. Next step is to identify key tasks and split the work. We decided to build a computer game for blind people that would enable them to compose a song using only facial expressions. Each facial expression would link to a sound and two players would take turns to repeat the previous pattern before adding one more. We split the work into three main tasks: user interface, game logic including song composition, and facial expression detection using a web cam.

Research & prototyping
Now is the time to research relevant technologies, tools and libraries. We dedicated about two hours to that. Next, we spent two to three hours to doing online tutorials and interacting with the technologies to get an idea of how hard it would be to use them for our game and also mainly how long would that take.

Software specification & coding
Next step is to more closely specify the components of the software and make sure that all the bits will nicely fit together at the end. Everyone knows their part of the job, and the only thing left is to programme it. This usually happens in the late afternoon and overnight. During the whole event, mentors are available for consulting ideas and mainly to help with technical issues that every team will inevitably encounter. Help from mentors at the hackathon can often save hours and hours, which is invaluable in the restricted timeframe.

Putting it together & preparing demo
All the components are hopefully programmed by now. These have to be glued together. Although it sounds simple, most projects that do not manage to prepare a nice demo fail in this area because sometimes separate components do not work together as expected, and teams usually do not leave themselves enough time to deal with potential issues. While some of the team members are integrating individual components of the software, others usually work on the presentation and demo.

Presentation & demo
The most exciting part now. All the participants meet in a big lecture theatre and the teams take turns presenting their hacks in front of judges. Completely working software is not always required to have a decent presentation. In reality, most of the presented software is not completely finished because 24 hours is just enough to create a prototype that demonstrates the idea behind it, not a production version of the software. This was also our case. We did not manage to finish user interface and showed the game only running in a terminal together with a live video feed that showed how the algorithm recognised landmarks on faces and used them to detect expressions. Applause at the end of the presentation always creates positive feelings, these were amplified in our case because we managed to win the 2nd place.

This was an insight into a typical hackathon from a participant point of view. If this sounds like something you would like to experience, definitely check Major League Hacking and local hackathons (in Czech Republic, most famous one is probably Hack Prague).

More blog articles

All news