TopCoder

TopCoder, Inc.
Subsidiary of Appirio
Industry Information Technology Staffing
Software
Outsourcing services
Founded April, 2001
Founder Jack Hughes
Headquarters San Francisco, CA, USA
Website www.topcoder.com

TopCoder is a company which administers contests in computer programming. TopCoder hosts fortnightly online competitive programming competitions—known as SRMs or "single round matches"—as well as weekly competitions in design and development. The work in design and development produces useful software which is licensed for profit by TopCoder. Competitors involved in the creation of these components are paid royalties based on these sales. The software resulting from algorithm competitions—and the less-frequent marathon matches—is not usually directly useful, but sponsor companies sometimes provide money to pay the victors. Statistics (including an overall "rating" for each developer) are tracked over time for competitors in each category.

In September 2013, TopCoder was acquired by Appirio.[1]

Types of competitions

Algorithm competitions

TopCoder has been hosting algorithm competitions since 2001. Current SRMs consist of four phases:

At the end of the contest, ratings are updated to incorporate each participating coder's performance.

Component design and development competitions

TopCoder hosts design and development competitions in which coders can compete to create components and applications that are either generally useful, or that third parties have contracted for.

TopCoder design and development competitions are week-long competitions. New components are posted every Thursday and coders can choose a component from a list of Java and .NET components, and they have a week to design or develop their chosen component. Each week new components are posted. Development components are generally components that have been designed in a previous component design contest.

Marathon matches

Larger problems than are asked during a traditional TopCoder algorithm round are posted. They provide a more flexible competition format with an extended timeline.

Tournaments

Prizes

TopCoder initially awarded money every week to coders who did well in the weekly competitions, or Single Round Matches (SRMs). For a while, prize money was only awarded twice a year to winners and finalists of the TopCoder Collegiate Challenge (TCCC, which is in the spring) and the TopCoder Open (formerly the Invitational, which is in the fall). As of June 2005, some weekly SRMs began to once again award prize money, being sponsored by outside companies such as Google and Yahoo!. However, since August 2008 TopCoder returned to giving money prizes only to winners and finalists of other tournaments.

Statistics

As of May 23, 2012 406,943 people have registered at the TopCoder website. 15.3% of those registered have participated in at least one algorithm competition, 0.3% in design, 0.7% in development and 1.5% in marathon matches.

Competitions, ratings, and divisions

In the early days, the Iron Man system was set up under which coders were grouped into rooms of ten according to skill level (determined by , similar to Elo chess rating), in order to encourage newcomers (who would have little hope of beating out the best coders for prize money) to stay and compete. After the contest, the three highest scoring coders in each room were paid according to the skill level of the room (winners in the room of contestants with the top 10 ratings were paid more than those in the room with coders 11-20, and so on). This created some paradoxical situations such as the possibility of coming fourth in the whole contest and getting no money, while the 111th placed contestant got paid, and gave rise to ratings diving. Ratings diving, or taking a ratings dive was accomplished simply by doing very poorly on purpose in a particular contest (by opening and not submitting any problems or submitting incorrect challenges). As a result, a contestant would, in their next contest, be placed in a room with 9 coders among whom they had a good chance of winning some money. The idea was that the dramatically increased chance of winning money made up for the fact that the money to be won was a lesser amount given the lower average rating of the room.

Coders have since been divided into two divisions, Division I and Division II. Division I consists of all coders with a rating of at least 1200, and Division II consists of all coders with a rating of 1199 or less. Coders are grouped in rooms with other members of their division, in groups of up to 20 coders in such a way that within each division, the average coder ratings in each of the rooms are roughly equal.

Past tournament winners

The past tournament winners in all categories are:

Tournament Algorithm Design Development Marathon Studio Mod Dash Specification Architecture Assembly Mashathon First2Finish
2001 Collegiate Challenge qubits
2001 Invitational jonmac
2002 Collegiate Challenge dmwright
2002 Invitational John Dethridge
2003 Collegiate Challenge dgarthur
2003 Open tomek Pops rnielsen
2004 Collegiate Challenge tomek aksonov roma
2004 Open tomek adic Standlove
2005 Collegiate Challenge mathijs adic gladius
2005 Open Eryx nicka81 visualage
2006 Open Petr Pops sindu
2006 Collegiate Challenge Petr nicka81 PE
2007 High School Burunduk2
2007 Open Jan_Kuipers kyky hefeng Mojito1 yiming
2007 Collegiate Challenge Petr nicka81 PE paranoia abedavera
2008 High School ahyangyi
2008 Open tomek Pops romanoTC Psyho oninkxronda
2009 High School crazyb0y
2009 Open crazyb0y saarixx assistant KOTEHOK djnapier PE AleaActaEst Standlove pulky
2010 High School tourist
2010 Open rng_58 argolite Yeung wata djackmania Margarita
2011 Open rng_58 BLE j3_guile Psyho abedavera Yeung
2012 Open Egor argolite Yeung ainu7 iamtong hohosky
2013 Open Petr albertwang morehappiness Psyho abedavera[3] supercharger - - - logontokartik
2014 Open tourist albertwang Sky_ Psyho fairy_ley - - - - - akinwale

TopCoder as a business

The business plan behind TopCoder comprises several objectives. One goal is to be a recruitment center where companies can come to find programmers who are proven to be highly skilled, and where talented programmers can display their skills to a worldwide audience. Large companies sponsor TopCoder events to gain credibility with and exposure to talented developers. TopCoder sells software licenses to use the growing body of components that have been developed in competition and also acts as an outsourcing center, allowing companies to farm out custom design and development tasks to TopCoder competitors.

See also

References

  1. TechCrunch report "Appirio buys topcoder". Retrieved 2014-01-15.
  2. "The TCCC: A Difficult Decision".
  3. TopCoder blog post "Design Studio TCO13 – Abedevara is Our Champion!". Retrieved 2013-11-14.

External links