The Hacker Olympics puts teams of developers through 30 mind-bending challenges over one day, with each round earning points based on your implementation.
Think of it as a spin on the usual hackathon, but with fewer predictable map-based playlist apps. The challenges aren't even revealed until the day of the event, and this sense of the unknown is what makes it even more exciting than the usual events.
On the day, we teamed up with our old pal Sven and a new fella we met called Yele. Yele would be first to admit he's not the most experienced developer in the world, but shared our love for learning - that's what all this is about, after all. Little did we know how Yele's talent would help us run towards the finish line in the end.
When the challenges were revealed, there was an impressively broad mix to dive into. Like Urbanspotting, where you had to "write a startup name with a script that uses Urban Dictionary." Or "Use the Force: Write a browser app that sounds like a lightsaber when you wave a phone."
Christ. This was going to be fun.
If you've ever seen the 90s fly-on-the-wall documentary "Hackers", you'll know exactly how the scene looked.
Wait, hackers don't wear leopard print. Here's reality.
Over the next four hours we went charging through the challenges, and by the final hour we were winning with a solid lead on points. Here's some of the challenges in full, with our solutions - how would you do them?
Escher's Login: Build a web based user authentication system that utilizes no form or input fields. Your system must not accept a username or password from the user. Be creative and come up with a unique authentication system using alternative verification methods.
Solution: NFC login with an Android.
You Brute: This is an MD5 hash of a 5 letter password: 98a2966d4d87b3b62b2b9241e3d517ff. It only contains alphachars (a-z), but it is the pasword to the HackerOlympics 1Password account. It would be just super if you can use a brute force attack to get the password, because we forgot what it was... Points will be awarded!
Solution: Smash that sh.t with a classic brute force attack.
The Anti-Optimizer: Write a script that has a runtime of as close to 42 seconds as possible as determined by the
timecommand. You may not use any time-based delays, counters, network requests, or waits to achieve this runtime. You may achieve the runtime through inefficient code, unwise server configurations, or any other creative means.
Solution: F.ck knows, Sven did it. It was tidy, though.
For all the fun we had so far, there were just a couple that we couldn't beat. Like the challenge where a team must take on one of the hardest games known to man: Qwop.
It doesn't matter how many lines of code you've written in your lifetime, Qwop is f.king hard and there's no two ways about it. You'd need to rewrite the whole game to have a chance at moving more than two metres on here.
But we had Yele. And by god, can that man Qwop.
In the end, there were only two challenges we didn't complete. One of them was worth an enormous 500 points. If only our competitors (and friends) managed to take it on, and win in the last 30 minutes.
We were broken. Let's be clear: first place, in these circles, comes after zeroth place. The highest honour of the 2014 Hacker Olympics was almost in our grasp, and it was snatched at the 11th hour.
But then we looked at our new friend Yele, and remembered something. Yele didn't come here just to compete and win - Yele wanted to have fun, meet cool people and learn new skills.
And that's fucking awesome.
So we came home, settled down with our first place medals next to family members who assume the best, and dreamt of Qwop.