Wellington

Perl Mongers



HackOff 2008 is all over

On July 15th Wellington Perl Mongers hosted a 'HackOff' event - and it was fun! Even if you missed the event, you can still join in the fun by solving the problems listed below.

What was it all about?

From the original email announcement ...

HackOff 2008 is a fun evening for teams of hackers to compete at solving programming problems. Remember when coding was fun? Before you got bogged down with UML diagrams, architecture planning meetings, spec documents, units tests and user documentation? For one evening, we'll take you back to how coding was meant to be - see a problem, solve it, move on. The first team to solve all the problems will be declared the winners and will receive the adulation of their peers.

Plus there was beer and pizza.

How did it work?

We ended up with 5 teams on the night (a sixth team had to withdraw due to illness). Each team comprised 2-4 people, with one or more laptops connected over wireless to the competition web server.

Once the teams were all logged in to the web server, the first question was made available. The teams downloaded a data file from the server and set to work 'decoding' (and I use that term very loosely) the file to reveal a 'token'. Here's an example of a token:

ETGJXSFH

When a team successfully revealed a token, they would type it into the web server, which would validate the token and then make the next question available. The web application also gave teams the opportunity to show their work - upload program files or shell command histories etc, for later analysis.

It's important to note that although this was billed as a programming competition, there was no requirement that teams use only their own code. All teams had full internet access for using search engines, downloading software packages and submitting files to web services. The only thing that mattered was finding the right answer as quickly as possible.

The teams

Team Orange Brenda Wallace

Josh Waihi

Brett Taylor

Mike Cochrane

Team Amorphous John Marshall

Angus Cotton

Justin Rens

Jeromé Dolman

Team Cabbage Douglas Bagnall

Finlay Thompson

Michael Robinson

Matt Hunt

The Terminators Srdjan Jankovic

Evan Giles

Martin Ehrenstein

Starsky & Hutch Andrew Caudwell

Will Stokes

Team photos



Team Orange Team Orange



Team Amorphous Team Amorphous



Team Cabbage Team Cabbage



The Terminators The Terminators



Starsky & Hutch Starsky & Hutch

flickr tag: hackoff2008

The results

The official start time was 6:30pm although it was a few minutes after that when the first question became available. The chart below shows the progress of all the teams as recorded by the web server in minutes from 6:30 ...

As you can see, Team Amorphous took an early lead. Team Cabbage caught up by question two, moved into the lead with question three and maintained the lead through to the end. After 8:00pm, when Team Cabbage were declared the winners, Team Orange and The Terminators packed up and moved on to socialising. However Starsky and Hutch kept plugging away and eventually completed the third question at around 9:30 (not shown on the chart).

The problems

Even if you missed the event, you can still join in the fun. Listed below are the same 5 questions that were used on the night. For each question there is a data file and a 'hint'. The correct solution (token) is also listed but this is largely redundant because in each case it's pretty obvious when you've solved it.

1. Data File An old-style message in a new-style wrapper. EFMSFZFJ 2. Data File Elementary numbers are worth a thousand words. BSNMHCCS 3. Data File It's a banner - of sorts LHZDSJRH 4. Data File Style corrupts, computed style corrupts absolutely TVXQCEID 5. Data File Use the comments to clue you in to the big picture DQREGOAE

The solutions

The solutions page provides an analysis of what was required to solve the problems and how the teams implemented their solutions. The page is obviously all spoilers so you might not want to visit it until you've solved the problems yourself.

Contact Grant McLean if you have any questions, corrections or other feedback.