Wednesday, July 9, 2008

ICFP Programming Contest

The 11th ICFP Programming Contest is underway in less than 48 hours. Last year my team took 2nd place. Unfortunately a number of things are preventing a repeat performance, with the number one problem being that I am flying over to China for RoboCup when the contest begins. Bruce and Carl are, however, forming their own team up in the UK where they'll hopefully win it for us. There's also the UCT team of Max, Keegan, Julian, Richard and Timothy who's sole aim is to pwn Bruce and Carl.

If you haven't heard of the ICFP Contest before, it's an annual contest run alongside the International Conference of Functional Programming with the aim to provide a language neutral programming problem and recognise the winning teams' languages. It's a 72 hour long marathon contest with almost no rules (anyone can compete, etc.). Last year's problem was to "implement a 2-stage virtual machine that executes a DNA-like string to produce an image. Then, given an input string for this machine, find a prefix that when added to this string yields an image as close as possible to the given target image." This year's organisers all have PhD's in computer suspects something!

In closing I'd like to say that I very much disagree with the rule limiting teams to five people. It is almost always true in these contests that having more than five people is actually worse so that removes the reasoning of making it fair for all. The reason we had such a large team last year was to have a more enjoyable time together and it truly was a most enjoyable experience. It brought ten of the top students at our university together to work on a well-defined goal over just 3 days. It was awesome! If this rule continues I fear we have lost the opportunity for a repeat of that amazing experience. Competing for fun without submitting is not an option as that removes...well, everything! Consider this as my plea to the organisers of the 2009 contest to relax this restriction.


  1. "In closing I'd like to say that I very much disagree with the rule limiting teams to five people."

    I participated as a one-man-team, and I do not want to compete against a ten-man-team, because I think that would be really unfair.

    Think about it: if you have ten people, you can try ten times as much as I can. Your team would have ten times as much brainpower as my team has.

    By the way, a ten-man-team divides nicely into two five-man-teams :)

  2. I'm sorry, but I disagree. It is the freedom of the rules that make this an interesting contest. Have a separate scoreboard for teams of three or fewer, or something like that. But don't place restrictions on a contest that previously had none.

    And no, it doesn't scale linearly. The cost of collaboration is non-zero.

    "By the way, a ten-man-team divides nicely into two five-man-teams :)"

    There are other contests we can compete in teams of 5. Those might be special in other ways, the ICFP was special in not limiting us in these ways.