After attending two online hackathons, I finally had the opportunity to attend an in-person hackathon! I was super excited for Jamhacks 6, hosted at the University of Waterloo, which would be my first in-person hackathon.

You may be asking, what exactly is a hackathon?

A hackathon consists of three main parts, all within 24-36 hours:

  1. coming up with an idea to solve a problem
  2. building a prototype, usually with software or hardware
  3. pitching the idea and prototype to the judges

Day 1

I arrived at the Engineering 7 building at UWaterloo at 5pm, just in time for the opening ceremony. I was greeted by a lot of cool swag, including a bunch of stickers and a goose plushie.

After the opening ceremony, my friends and I explored the building, and we found a spot beside a window and a giant whiteboard in the hallway where we could sleep and work, after our initial territory was taken over by two other groups.

Ideation

We started to brainstorm ideas for the hackathon project. We came up with the idea of making hardware to check whether toilets were flushed, which was a half-joke idea from a month ago, due to experiences with public school washrooms.

whiteboard

Since crazy ideas make good hackathon projects, and we couldn't come up with any better ideas, we stuck with the idea. We lined up 10 minutes before the official hacking time to get a beginner Arduino kit.

Day 2

The next day, I woke up at 6am, but promptly fell back asleep, since I was still very tired. I woke up at 8, and it was now time to start working on our project.

We had barely any experience with hardware, so we asked some peers and mentors for help. Following their advice, I downloaded the Arduino software and experimented with certain components from the Arduino kit, while my two other teammates started working on the pitch.

We asked several mentors, who helped us come up with how we could determine if a toilet was flushed using the available components of the kit. Our plan was up on the giant whiteboard, which could be seen by anyone passing by. It turns out many of the high school students at Jamhacks could relate to the problem we were trying to solve.

While I was at a workshop, a large thunderstorm broke out, and our power went out. This would greatly impact us later in the day.

After lunch, we got cardboard from the organizers, and began building our mini toilet for our prototype. The components from our kit were connected on a single board, so we needed to figure out we would attach the components to the mini toilet. Since we were new to hardware, we didn't know how we could break apart the board, or if it was even possible to do so without damaging the board. Luckily, there was a mentor who helped us find pliers and break apart the board into its various components.

hardware

I programmed the Arduino board using the Arduino software, experimenting and copying code from the Arduino documentation. We came up with the logic of the program and determined the steps needed to detect whether a toilet was flushed.

Pitch

It was now time to focus on the video pitch, since we learned from previous hackathons that the idea and pitch are the most important.

Shortly after we got back from a walk, we were called down to the main hall for an emergency meeting. We were all a bit confused at first, but we soon found out it was due to the continued power outage from the storm.

The progress of our project was delayed, and it was quite late by the time we could return to our hacking space and work on the project again.

We worked late into the night to film a demo for the video pitch, using a goose plushie to demonstrate the hardware integrated into the cardboard toilet. The hardware was a bit faulty at times, but we got it to work for the pitch. We were too tired to finish the video and went to sleep with 8 hours until the deadline.

video demo

Screenshot from video demo

Day 3

We only got a few hours of sleep and woke up at 6am. We began recording voice overs for the pitch. After all the recordings were done, one teammate worked on the video editing, while the others wrote the project description for the Devpost submission. The video rendered much quicker than expected and we were able to submit the pitch on time.

We decided as a group to play the video pitch in front of the judges instead of doing a live presentation, since we already put a lot of effort into the video. Our video pitch was successful in making the judges laugh a few times. After the pitch, the judges asked us a few questions relating to our project and what set it apart from similar products.

Closing ceremony

At 5pm, the closing ceremony began, and we were back in the ideas clinic, which was where the opening ceremony was held. The organizers began announcing the winners of each sponsor prize, as well as the winners of each track.

It was time for the organizers to announce the winners of the Best Hardware Hack (drumroll…), and we were surprised to see our names up on the screen when the winners were revealed, considering how little experience we had with hardware. There were also other hardware projects which seemed a lot more technically advanced. We got a cheer from the hackers, who seemed to like our project idea, as we went up to the front to take a picture.

Although I was extremely deprived of sleep, it was an awesome first in-person hackathon and a great time spent with friends. Shoutout to the Jamhacks organizers!!

swag