Slashdot Mirror


TopCoder Open 2004 Programming Tournament

TAG writes "TopCoder just announced rules for this year annual international programming tournament. The 2004 TopCoder Open, Sponsored by Microsoft will set as rivals some of the IT industry's top professionals and international collegiate coders. Software will be designed and developed. Seemingly unsolvable algorithmic problems will be solved. $150,000 will be awarded over the course of 14 weeks. 24 of the world's best programmers will be invited to compete live at the onsite finals in Santa Clara, CA, USA. This competition is 'Free'. Yep. Free as beer. Everybody over the age of 18 is eligible. So? What is your TopCoder rating today?"

15 of 42 comments (clear)

  1. This is what recruiting has come to? by chris_mahan · · Score: 2, Interesting

    Is this what corporate recruiting has come to? A love-fest?

    As the artist forerly known as Prince, and now known as prince again would say: "Party like it's 1999". (dot com ref for the dense)

    --

    "Piter, too, is dead."

  2. OO-Centric by pkhuong · · Score: 2, Interesting

    quoth http://www.topcoder.com/tc?module=Static&d1=help&d 2=codingWindow

    "TopCoder currently allows coders to utilize Java, C++, C#, or Visual Basic .Net as a competition programming language."

    "Your solution will essentially be a class that contains at least one method - as defined in the problem statement. "

    From this we learn that good programmers only use Algol-like languages (In fact, C-like) or VB, and all use OO.

    --
    Try Corewar @ www.koth.org - rec.games.corewar
    1. Re:OO-Centric by HappyKleenexDude · · Score: 2, Interesting

      Classes don't make a program object-oriented. You could write your entire program in the class's single method, and it certainly wouldn't be OO. As for the languages, well, it's pretty standard. The ACM ICPC and IOI also both heavily restrict language usage to these languages or fewer (although I think you can use PASCAL if you really want). Perhaps the idea is that 'good programmers' aren't language dependant, and can carry over their skills to at least one of those languages.

    2. Re:OO-Centric by pkhuong · · Score: 2, Informative

      The ICFP doesn't require you to use any specific programming language.

      http://www.cis.upenn.edu/proj/plclub/contest/faq .p hp

      "What will the submission format be?
      Your entry to the contest will be a plain text file in a format that we will specify in the task description.

      You may write your entry entirely by hand, or generate it using tools in a programming language of your choice; we will ask you to submit the source code for these tools (if any) along with your entry, and we will look at them for purposes of awarding the judges' prize, but we will not need to run your tools on our machines."

      --
      Try Corewar @ www.koth.org - rec.games.corewar
    3. Re:OO-Centric by hsoft · · Score: 2, Interesting

      I was about to register there when I bumped into the language list. Too bad they don't have pascal (MS sponsored, I should have known...). I know that I should be able to write in one of these language, but people using one of these language as their main language will always have a considerable advantage over me (Except for VB coders, of course, who are inherently bad coders ;) ).

      I prefer the way ICFP does. It was my first try this year, and I liked it. Too bad my brother and I made bad design choices at the start, we couldn't make any useable ant AI on time... I have a great (delphi) ant simulator though...

      --
      perception is reality
    4. Re:OO-Centric by pkhuong · · Score: 2, Insightful

      BTW, I forgot to add this to my first reply: Good programmers use the right tool for the right task. If a task is simplified by, say, dynamic typing, continuations, closures, backtracking or run-time definition of functions, why should one not use a language that responds to one's needs? From what i gather, the reason for the language restrictions in these contests is mostly that most of the problems would be too easy in many excluded languages.

      --
      Try Corewar @ www.koth.org - rec.games.corewar
  3. TopCoder by RealityMogul · · Score: 4, Informative

    Does anybody here actually take part in their competitions? I tried it and it blows. All the so-called competitions are the same damn thing over and over. It's a few nested loops every time. It's either process this number using this formula, or sort this data.

    The people that have the highest scores have little templates built with all the variables and loops setup already, so all they have to do is write one or two lines. Yeah, that shows who the best robots, err, I mean coders are.

    1. Re:TopCoder by Anonymous Coward · · Score: 2, Insightful

      It at least demonstrates that they have the analytical ability to evaluate a group of problems and abstract the common elements of those problems to reduce coding effort/time.

    2. Re:TopCoder by HappyKleenexDude · · Score: 2, Insightful

      "It's a few nested loops every time. It's either process this number using this formula, or sort this data." At the lower levels, perhaps. Their single-round matches are designed so that a large range of skill levels can compete. I suggest you take a look at some of the problems from the later rounds in the last TCO - they're all available online - and you'll see they're more complex than you describe.

    3. Re:TopCoder by Chromodromic · · Score: 2, Insightful
      Yeah, that shows who the best robots, err, I mean coders are.

      Yes, I often encounter this attitude among those that suck at TopCoder. Well, if that's all there is to these "so-called competitions" then, you know, just make some "little templates" of your own -- be a "robot", that is -- and make yourself $50,000 in the algorithm competition. I mean, that's all there is to it, right? Just a few templates? All those other guys are just robots ...

      Or, here's an idea, you might try stowing your ego for ten minutes, and actually trying to learn something. Because something tells me if you were in contention for the top prize, you'd hardly be calling the competitors at TopCoder, who've worked hard to develop their talent with algorithms, "robots".

      It's better for everyone to think you're an idiot, than for you to open your mouth and remove all doubt.

      --
      Chr0m0Dr0m!C
  4. ACM by fishybell · · Score: 4, Insightful

    As far as I can tell, this is run exactly like the ACM annual contest. You go in, solve a few problems, and go out. From what I can tell, the ACM is better because it only allows college students to enter, you go in teams, not as individuals, and it's sponsered by IBM, not Microsoft.

    --
    ><));>
  5. Wow... expired certificates and all... by Vaginal+Discharge · · Score: 3, Interesting

    You'd expect that TopCoder would have uptodate security certificate. But apparently, when I'm trying to download the applet, I saw that their certificate expired in January. So I'm just supposed to trust them huh?

    From what I've seen and heard, the problems are not terribly complex, but instead they make you do them as fast as possible. How does this make people better coders? I'd rather spend a week on a really challenging problem, than to spend 30 seconds and write as many for-loops as possible.

    --
    "Glory is fleeting but obscurity is forever" - Napoleon Bonapart.
    1. Re:Wow... expired certificates and all... by HappyKleenexDude · · Score: 2, Informative

      Unforunately you have to log-in to be able to read problem statements (registration is free).

      For those willing to register and log-in to see them, the problem statements are at:
      http://www.topcoder.com/stat?c=problem_statement&p m=1315&rd=4711
      http://www.topcoder.com/stat?c=problem_statement&p m=1972&rd=4711
      http://www.topcoder.com/stat?c=problem_statement&p m=1986&rd=4711

  6. Why limit languages? by GnuVince · · Score: 2
    Why do they limit the choice of languages? I mean, why not let Smalltalkers and APLers participate with their language of choice as well?

    One of the requirement could be to clearly comment the code.

    1. Re:Why limit languages? by fatmonkeyboy · · Score: 2, Informative

      One of the requirements could be to clearly comment the code.

      You obviously don't understand these competitions.

      The tricky part isn't the programming. These are small programs. It's figuring out WHAT to program that is difficult - the problem solving portion, you know?

      The whole idea is to write the code quickly and your score is based on the time it takes to complete it. So, how much time should someone spend on comments?

      You'd have to somehow assess the value of someone's comments to offset the cost of the time to write them. This is would, of course, be almost entirely subjective and would add all manner of complications to the contest. Best to keep it simple, in my opinion.

      By the way...as it stands, the tests for correctness, etc. are done automatically by basically unit-testing the submitted code. So to even look at the comments would require actually hiring people (and not just any people...programmers!) to sit there and look every submission. Needless to say, that's a LOT more expensive than running a simple shell script ;)

      As for why they don't support Smalltalk or APL...well, I don't know. It might have to do with the number of users. The languages they DO support are currently the most popular ones.

      Their reasons could easily be political or technical as well though.