My Work




Regularly obsessed with something new

Organizing a Hackathon - Lessons Learned

March 31st, 2014

During my last two years of school, I’ve helped organize and run two hackathons at the University of Toronto. In February 2013 I ran (winged may be more accurate) a Windows Phone Hackathon, and just recently ran the C3 Hackathon (which was open to all platforms). I wanted to take some time and write-out a few of my lessons-learned, so I don’t repeat the same mistakes next year and maybe provide some insight to others who are looking to run a hackathon.

Making a Hackathon accessible to beginners

One of our main goals this year was to make the event accessible and open to beginners. Hackathons can be intimidating for those who have never done them, and we didn’t want any students to miss out.

To accomplish this we tried to do a few things:

  1. Ensure all our marketing and messaging for the event encouraged people of all skill level to come out.
  2. Partnered with U of T Dev to promote Android & iOS tutorials in the months leading up to the event.
  3. Provided a couple of mentors during the event.

These were mildly successful as we had a number of beginners out at the event, however there was a lot more we could do to make the process easier on them.

Getting a Dev Environment Set Up Before the Event

A lot of beginners had considerable trouble with their dev environment. Whether it was setting up Eclipse & Android (this was literally 90% of our problems), or were trying Git with their team for the first time. This slowed down a lot of people and it was very disheartening when they had to install Eclipse multiple times.

Increasing our messaging about the importance of having this set up beforehand could help but I think that more needs to be done to properly solve this issue. Next year I intend to provide an explicit session a few days before the event about setting up and configuring a dev environment (at least for those who are local to Toronto). We obviously can’t cater to all platforms with this prep, but as Android was the most popular by far this year we would likely focus the event on getting Android configured.


This year I was mentoring teams as needed throughout the day (with Git, Rails, and to the best of my ability with Android), and we had a proper Android mentor come to help out late Saturday night. This was a good start however we definitely needed more help at the beginning to get people jump-started. These first few hours are critical to a hackathon, as it sets the tone for the duration of the event. For people at their first hackathon it’s even more important, if they start making progress they’ll be much more motivated to keep working all weekend long.

If your event is open to all platforms I’d suggest that you pick a specific platform which you’ll provide support for beginners. This will reduce your workload and also help beginners pick a platform as many at our event weren’t sure what to choose or changed their mind partway through.

Side-note: Windows Phone as a platform I feel is much easier than Android for beginners to get a basic app up and running on. Two years ago when we ran a Windows Phone hackathon even though everyone was brand new to the platform pretty much everyone was able to make good progress with their app.

Charging vs. Free Events

During the planning phase for the hackathon I wavered and agonized over this decision continuously. All of the other events I run through Hacker Academy are free, charging for one felt strange and not entirely in the spirit of the club. I also really wanted to ensure there were zero barriers to entry for students. However in the end we charged 5$ to help offset the costs, and have a more accurate headcount of who would show up going in to the event.

After charging for the event I probably won’t go back to a free hackathon because it made the logistics way simpler. Here’s some numbers from the hackathons:

WP Hackathon Free 190 130 Day 1, 85 Day 2
C3 Hackathon $5 110 85 Day 1, 80 Day 2

Theme vs No Theme

A lot of people were surprised that our hackathon didn’t have any theme or specific focus this year. We chose to have a wide open hackathon because we didn’t want to restrict students at all. Speaking from experience just about every student I know has something they would have liked to build but couldn’t get around to.

Did this make it hard for the judges?

It could potentially make things complicated but we were clear with our rubric and our judges came to a consensus on winners pretty easily.

Doesn't a theme help attendance?

I’m not sure no theme will work for everyone as a theme can really help to draw people out (especially if you’re targeting developers in big tech cities as oftentimes there’s a hackathon ever weekend for them). However since 2010 I can only really think of 2 other hackathons at U of T so we didn’t have too much competition to draw students out.

A theme could also help people generate ideas though, so it’s something I’ll still consider for next year.

Quick Notes

  • I like our judging format. 1st round are roaming judges doing casual demos / q&a with each team. They choose 10 finalists who present for everyone and a second panel of judges. From the finalists the eventual winners are chosen.
  • We should make more of a show at the end of the event. Some incredible apps were created and we can do more to make them feel like they won an awesome event other than giving them their cash.
  • We will consider having guest speakers / tech talks during the event. We didn’t feel the need to this year as we run other events through Hacker Academy which provide these to students. However it could potentially add to the hackathon.
  • Don’t procrastinate, especially on judges & sponsorship. All the obvious things we always want to do better at.

All in all I loved organizing the hackathon. It’s a little insane leading up to the event, however what people are able to build and create in a weekend always blows my mind. People also seem to learn a lot and have fun which is awesome too!

If you’ve got questions or comments about this post please reach out or follow me @ahueniken on Twitter.