||An important aspect of programming contests that Top Coder
should take advantage of is the educational aspect. Only a
minority of members can win money (and an even smaller
minority can win it consistently), and this seems to turn
off a lot of people, who see the winning of money as the
only reason they should participate (I know this turns off
several of my friends). However, what they overlook is how
educational these contests can be.
There are a few things Top Coder can do to take advantage of
this feature. First, continue to develop challenging
problems. Attempting to solve these problems, particularly
when you don't know the solution beforehand, can be very
stimulating and educational. Second, provide a forum for
discussing problems after matches. Particularly immediately
after a match, coders are eager to discuss their solutions,
as well as those of others. Even coders that were unable to
solve some problems are eager to hear how others solved it.
While the lobby is suitable for this purpose, very few
members take advantage of this, and what is said there
following a match is not recorded for posterity. Perhaps a
message board devoted to discussing how to solve particular
problems should be provided, so that members can discuss and
educate each other for days following a contest.
Finally, it may be a good idea, following a match, to have
articles discussing the problems used in that match
published on Top Coder's web site. This would be a more
formal method by which members can learn. Such articles
could be written by whoever wrote the problems, or they
could be written by contestants that solved those problems
well. The writers could even be paid a reasonable amount
for producing these write-ups.
Over time, Top Coder would produce a wealthy base of
knowledge, archived both in the discussion areas and in the
more formal articles (which could be indexed and
cross-referenced). This will bring members and contestants
here for reasons other than the money, the obtaining of
which many people (mistakenly) feel is hopeless. It would
also bring more non-contestants to the web site. Top Coder
then might become more than a measurement of programming
skills, but instead a central location to evaluate and hone
one's own skills.