Registration is now open for the second annual Facebook algorithmic programming contest and the qualification round takes place from 20-23 January.
Established last year the Facebook Hacker Cup is open to programmers from around the world and involves demonstrating accuracy and speed in solving problems.
The online part of the contest starts with a qualification round that lasts 72 hours and presents all-comers with three problems. Every competitor who correctly solves at least one problem will advance to Online Round 1, which lasts 24 hours on 28-29 January.
At this point the rules get more involved.
To advance to Online Round 2, participants must solve at least one problem correctly. If more than 500 people solve at least one problem correctly, then the top 500 participants will advance, as well as everyone else who answered the same number of questions correctly as the 500th-place contestant.
Online Round 2 will last just 3 hours on February 4 and will select 100 contestants to go forward to Online Round 3, all of whom will will an official Hacker Cup t-shirt.
The top 25 contestants to emerge from Online Round 3 which lasts 3 hours on February 11 will be offered an expenses paid trip to Facebook headquarters in California to take part in the finals on March 17, 2012.
Out of this group, one champion will win $5000, the title of World Champion and have their name immortalized on the Hacker Cup trophy. A prize of $2000 will be awarded for 2nd place and $1000 for 3rd place. $100 each will be awarded to the rest of the finalists.
To give you a flavor of the contest, one of questions in last year's qualification round involved writing a program to read in a list of integers (always fewer than 100 in total) and print out how many ways each integer could be expressed as the sum of two squares. For example, 25 is 02+52 or 42+32.
Although this might sound like a mathematical question, it is really about how you implement a simple search for solutions as an algorithm. Notice that there is no requirement for the solution to be optimal - all you need is a working solution. Also remember that this is just one of three questions and only only have to solve one to qualify.
It sounds like fun and for a change trying out the initial stages of the competition doesn't sound too much of a commitment - but what if you won that round!
As it is currently constituted, the Facebook Hacker Cup is one of the very few competitions that actually is about programming skill in the sense of thinking up algorithms and implementing them. Most other competitions throw in other skills such as thinking up applications or building user interfaces. This one is pure code.