All Opinions In Beta

My First Hackathon


This is a picture of me on hour 30 of 37 with no sleep.  Mild hallucinations, lots of shouting at my laptop and volumes of coke zero.  No, this isn't a new interrogation technique, but Hong Kong's first hackathon.

Angelhack is a US Company that specialises in hackathon and hackcellerators and runs events globally (and often, simultaneously).  The concept is simple; Bring yourself, maybe a team, an idea and your laptops, maybe some hardware, and in 24 hours go from no code to fully fledged working app.  This hackathon was mobile oriented, with the focus being on new apps (although not necessarily for phones; a smartwatch company had brought a bunch of their android based watches for people to hack).  You must bring NO CODE to the event with everything must be written fresh which will be checked for the victorious (somehow). Libraries are allowed so you could probably do most your work as a lib before and wire it at the event, but that's not really in the spirit.

When I’d first seen the hackathon online, I signed straight up and then pretty much didn’t think about it again until the night before the event  (caveat: I had been drinking when I signed up) when I started to do a bit of googling around it.  The only similar event I’d done before was HK Startup Weekend and I’d been expecting a similar setup.  Oh how wrong I was!  Moreso, I was surprised by how little was available information wise about what the angelhack experience is actually like, which is why I wanted to write the experience up for future victims and to blunt my rose tinted glasses next time I want to apply.

First point of order: this is not a social/networking event like Startup Weekend where you create your teams on the day, do a lot of mingling and exchanging name cards, and come out with lots of new contacts and friends.  At Angelhack most people arrive as a pre-arranged team with an idea.  There’ll be a few stragglers (like me), and you’re able to hack solo or form a team on the day (like me), but I’d probably encourage you to go in with people you know and an idea you believe in. I was lucky enough to meet and pair up with someone, come up with an idea, and not end up killing each other.

Registration in the morning was terrible at this event, run by a HK Startup EventXtra whose systems kept crashing which meant everyone going through the system multiple times which was very slow.  This was mitigated somewhat by the Starbucks breakfast inside (my stomach dictates my mood, or at least has a significant influence on it).  After an hour of general shmoozing time & strategy planning (and stealing the best tables), and 2 hours (!) of sponsor presentations we got around to pitches.

Pitches are an opportunity for individuals and teams to pitch their idea and find people to join their groups.  It's fairly poorly organised and as most people are pre-organized i’m not convinced anyone picked up new team members from this. As mentioned before, go with a team organised beforehand if you can!

Then comes the hacking.  It really is just 24 hours of coding the crap out of something and using as much brute force and hacks to get it (to look like it is) working.  I’ll go into detail what we built and the tech behind it in another post. Elevator pitch- it's a push-to do list so you can nag other people. Use case: fiancé reminding me to take washing out the machine after she's gone to work. It was a hell of a learning experience from both a technology perspective and as an individual.  I’m proud of what we managed to put together in that time frame compared to how much I managed to get done when coding personal projects normally.  Most the teams didn't code thought the night, with a number of people passed out over tables or on the supplied bean bags, and some people even just went home and came back the next day.  But for the true experience, stick it out.  You won’t regret it after you've recovered (which took me about a week).

At the end of the hacking came the presentation. I can safely say that whilst I wanted to do well my enthusiasm was waining as I was feeling immensely broken. There were something like 24 teams presenting, so there’s a lot of waiting around. At ours, we got 3 minutes to present to a panel of 4 judges. I think this is one of the most disheartening things I’ve ever been through; after 24 hours with no sleep busting my nuts, with mad dash sprints to get little beautiful features working, to then get just 3 minutes to show it is nowhere near long enough and is quite an affront to how hard some of the teams worked. It's a very different mentality from a group like startup weekend where everyone is encouraged to present no matter what state they got to. Hopefully it's something they can look to improving in future iterations

The judges narrowed down the running to 9 teams (of which one went MIA), who presented to the whole room.  By this point I’m very tired and very frustrated from all the waiting around, and desperately in need of some proper food and sleep.  Delirium had definitely set in, with the stupidest and simplest of jokes setting me and my programming partner off laughing uncontrollably for minutes at a time.  Then, more waiting! Judges make their decisions and announce, prizes handed out, big group photo and then FREEDOM!  A lot of the groups had piled out of the venue when discovering they weren't in the running to win, meaning the eventual group photo was lacking a lot of the attendees. 

It's now some months down the line, and if the opportunity to do this again came up I think I probably would.  It’s a huge learning experience, and an opportunity to actually churn out some software.  We’re planning on finishing the app, although I went back into the codebase a week after and it’s a mine zone, which is to be expected really. 

Top Tips if you’re going to/thinking of going to a hackathon:

  • Definitely go. I was on the verge of bailing because I was in one of my unsocial “I can’t be bothered to talk to other people” modes.  I always inevitably end up enjoying it when I go so I forced myself, and even though I was being grumpy, managed to find a great team mate and project. 
  • Bring subtle entertainment; whether it be a kindle or your pocket backlog or whatever. There’s a lot of procession and rubbish before you actually get to do any development. Also sit at the back so you don’t get called out for not paying attention to the sponsors
  • Bring layers! As you can see in the photo, I look utterly ridiculous like a hobo Where's Wally, but the aircon was maxed out and so I had to throw on all the layers I had.  Bring gear for any occasion
  • Speaking of gear; bring lots! Cables, phones, tablets, adapters, routers etc.  You never know what you’re going to need.
  • Set your expectations; sure, there’s a grand prize of getting into an accelerator, but you’re probably not going to win.  It’s incredible the stuff that they  turned out at our hackathon.  The winning team built a personal eBay with instagram filters, Facebook and twitter AND PAYPAL integration, in a slick, working application.  Another team built a working multimeter which had hardware that plugged into the audio jack.  I didn’t even know what a multimeter was.  People are good at this.  Go in with the aim of having fun and learning something.

Hope that sums it up. Whack a question in the comments if there's anything specific anyone wants to know.

I hope you enjoyed this post! Whilst you're here, check out my course on learning TDD in Java. It's a concise and hands on tutorial with full source code provided, hosted at Udemy.
Click here to learn TDD!

This project is maintained by samberic