Get Time
Search | Watch Thread  |  My Post History  |  My Watches  |  User Settings
View: Flat (oldest first)  | Threaded  | Tree
Previous Thread  |  Next Thread
Re: Education (response to post by Logan) | Reply
Great idea, logan! I think everybody stands to learn a lot more this way.

An easy and possibly substantial first step is to create another "Round Table" category for problem discussion, and adopt a uniform naming scheme for threads, e.g. <Competition Round Title> <Point Value>: <Problem Title>

And also as a courtesy, allow the problem author to post the initial thread, which at minimum would be a restatement of the problem.

This Round Table category should probably be only viewable to members logged in.

Also it'd be really nice if we could put links to references.
Re: Education (response to post by Logan) | Reply
A thousand times yes! If there were a way to enhance the educational aspect of competition, that could open up entirely new rationales for competing.

I, for one, had never heard of Levenshtein Distance until I asked for some post-game help with the 1000-point problem during the last competition. If there were a more persistent means for coders to explain solutions to one another, assistance like what I recieved in the lobby after the game could become a more useful aspect of these competitions.

We're bringing together a hundred or more very good coders and then challenging them to push their skill level. It's only natural that they should be able to help one another improve.
Education | Reply
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.