Saturday, August 26, 2006

Competitive Programming

I am a competitive guy. People who know me well, know that I always go to the bottom of things; have a passing interest in anything will never happen to me. It's either all or nothing. For years, I have been looking for ways to funnel my energies into some kind of online community. Requirements are that it should be engaging, competitive and educational. I have been taking quite a few stabs at different online gaming communities but they haven't turned out to be what I am looking for.

I am happy to say that finally, I think I have found the niche I have been hunting. TopCoder is an online community for people who love programming. Or rather, it was; today it has grown to cater for architects, testers and graphics artists as well. The basic concept is that you participate in contests where you need to solve three algorithm problems in a language of your choice (mine is .NET C#). The faster you solve it the more points you score. Given that the system tests pass your implementation, that is. Or that no competitor will challenge your implementation with a unit test. That's the weekly competition TopCoder is running, and which is divided into two divisions according to your rating. Sometimes one of the sponsors throw in money in the prize pot to make it more interesting. On top of this there are weekly design and implementation challenges where the best submissions will be awarded enough cash to make it worth having a look at.

There is just one thing missing from TopCoder, and that is that they should allow remote pair programming competitions or us agile geeks. Just read the story of this guy who tried it.

No comments:

Post a Comment