Our first task was to pick a project to work on, and we decided to split our group up into three different teams.
My team spent a couple of hours getting to know the projects better in the hope that we’d find something super exciting to work on. After some time into the evening and no project yet picked, we decided to branch off and come up with our own idea.
We initially planned to start coding at 11:30pm and before we knew it, it was midnight and we still hadn’t found our idea. We were then faced with a choice — stay there overnight and keep brainstorming, or take the last boat home and call it a night. We of course stayed the night. A couple of energy drinks later, we finally knew what were going to work on: a terminal based rubber duck called the Motherducker.
The idea came from our bootcamp experience. During the first couple of weeks when we introduce the fundamentals of programming, students sometimes feel overwhelmed when their code does not behave the way they expect it to and our job as teachers or teaching assistants is to sit with them and guide them through the problem. We take our time to ask questions that force the student to reflect on and understand the problem they are trying to solve as well as relate it to what was covered in the lectures. Step by step, we ask them to explain to us the error message they got, the code they wrote and what they were hoping to achieve. This helps them lay their reasoning out and naturally leads them to the solution. Our goal was to write a program that would help students do just that.
After a solid night of sleep on couches, we started delegating tasks and got to work. We had drawn the flowcharts for our chat-based bot and broken it down into different components. I was to lay out the cabling and architecture while Aaron, Konstantin and Ali were to implement different features. We wanted to have a meditation feature to help users relax after facing their errors and a debugger feature that would parse an error message and open a conversation about it, helping the student get through it.
In an ideal world, we would have been able to finish it all. Unfortunately, a lot of teams finished early and we had to rush through the end, hacking a working gem together in a few short hours in the afternoon to have something to demo. Lesson learned for future hackathons! We ended up pitching last after a day of sitting on a couch coding and drinking coffee, in front of the few teams who had stayed all day.
To finish off, here’s how a student summed up his experience —
“Hackerfest was truly an amazing experience. I got to meet companies that were working on ground breaking technology, apply what I had learned to a real project and interact with other developers.” — Aaron