Live data from Hacker News

What Is It With US Students and Programming Contests?

blog.acthompson.net

1–10 of 24 posts

Re: What Is It With US Students and Programming Contests?

#2
How much institutions care about the contests can be a factor as well. I ended up as the only American placing in a data-mining contest once [1], which I entered as a hobby I spent a few weekends on. But a full 5 of the 12 awards went to a single German university, RWTH Aachen, which had a ton of entries, and apparently had set it up as something students would do as part of a course.

That does lead to the next-order question of why American universities don't care about such contests (if indeed they don't).

[1] The 2009 UC San Diego data-mining competition, which seems to have disappeared from the web, but is archived at http://web.archive.org/web/20101124175648/http://mill.ucsd.e...

Re: What Is It With US Students and Programming Contests?

#3
post #2

How much institutions care about the contests can be a factor as well. I ended up as the only American placing in a data-mining contest once [1], which I entered as a hobby I spent a few weekends on. But a full 5 of the 12 awards went to a single German university, RWTH Aachen, which had a ton of entries, and apparently had set it up as something students would do as part of a course. That does lead to the next-order…

I had this discussion with one of my professors who basically said winning a CS or Math contest has little to no long term value for a student and the preparation required to win is not particularly useful.

Re: What Is It With US Students and Programming Contests?

#4
post #2

How much institutions care about the contests can be a factor as well. I ended up as the only American placing in a data-mining contest once [1], which I entered as a hobby I spent a few weekends on. But a full 5 of the 12 awards went to a single German university, RWTH Aachen, which had a ton of entries, and apparently had set it up as something students would do as part of a course. That does lead to the next-order…

I had a similar experience. As an undergrad I actually competed in the ACM competition but we had barely enough interest for a 3-person team. Furthermore, I only found out about the competition the year I graduated; advertising was very limited.

However, competitions like this are more focused on algorithms/math, which might not coincide with American universities' focus on software engineering. Hackathons, which do coincide, seem to be far more prevalent.

Re: What Is It With US Students and Programming Contests?

#5
Not to say that I am even potentially capable of competing at the world level, but the exact premise the author describes happened to me. I won multiple contests at the university level, finished one spot away from going to the world finals at the region level, but after this performance got me noticed and a job at one of the listed companies, I spend no further time on the contests (granted in order to compete at the regional and/or world level again I would have had to have gone to grad school, which I had no plans of doing).

When I was actively working on improving my performance in the contests, I had to spend quite a bit of time practicing, and the practice is such a domain specific exercise that it really isn't that applicable to the real world. You are trying to optimize the following cycle: quickly read problem, identify type of problem, figure out applicable algorithm, find page in notes with that algorithm written out, try to write most concise possible code by hand, work with teammates to coordinate computer time (one computer per team!), submit, print, debug on paper, wait for feedback, if right move on, if wrong continue debugging on paper. Improving on each of these skills requires very specific practice that is often unrelated to any engineering skill. For example I saw many teams perform really badly because they couldn't manage the computer time properly. What a ridiculous skill to learn in 2013... sharing one computer between 3 people!

This just isn't that useful in the real world. In the real world you have a computer of your own, most of the things you are solving aren't algorithm problems, and you are trying to write readable and maintainable code. So basically the opportunity cost of continuing to improve in the contests was improving as a professional software engineer (IE my future profession), and the glory of potentially winning one of the programming contests just wasn't worth it to me.

Re: What Is It With US Students and Programming Contests?

#6
I was on an American team at the ACM world finals in 2004 and 2005 (and the top American team in 2005, which was a bad year for the US). There was very little pushing us to participate or practice, and I mostly did it because I thought the problems were more interesting than my classwork. Talking to participants from eastern Europe gave me an interesting perspective, though. It became clear that for American students, the prize was ~$10k (nice, but not a huge deal) and the cost was neglecting classwork. For an eastern-European or Chinese student, the prize was an American job. Some of those students even felt embarrassed about how hard their countries pushed these contests.

The indication that I've gotten from employers in Silicon Valley is that success in these contests is, if anything, overvalued as a signal for hiring. So the author is correct that the incentives aren't lined up to get CS students to participate in programming competitions.

I don't know whether this will be a problem for the US. It isn't right now, but you could imagine a potential future where US vs China in programming competitions becomes like chess competitions between the US and USSR during the cold war. I'm sure if that happens, the US will step up the participation incentives.

Re: What Is It With US Students and Programming Contests?

#7
post #3
post #2

How much institutions care about the contests can be a factor as well. I ended up as the only American placing in a data-mining contest once [1], which I entered as a hobby I spent a few weekends on. But a full 5 of the 12 awards went to a single German university, RWTH Aachen, which had a ton of entries, and apparently had set it up as something students would do as part of a course. That does lead to the next-order…

I had this discussion with one of my professors who basically said winning a CS or Math contest has little to no long term value for a student and the preparation required to win is not particularly useful.

Math departments seem more interested in competitions than CS departments, at least at places I've been. American math departments are quite interested in the Putnam competition in particular [1], which has a kind of legendary status in the field that CS competitions don't, maybe because a number of the past winners have become famous mathematicians [2]. Where I went for undergrad (but not as a math major) they even offered courses to prepare for it, and scholarships for students who did well [3].

[1] http://math.scu.edu/putnam/index.html

[2] https://en.wikipedia.org/wiki/William_Lowell_Putnam_Mathemat...

[3] http://www.math.hmc.edu/putnam/

Re: What Is It With US Students and Programming Contests?

#8
I represented a U.S. school at ICPC world finals twice (the maximum number of times). Just based on what I heard from other contestants and their classmates, it seems like the biggest contributor to the outcomes we see at finals is that some schools take this contest much more seriously than others. So a team at, for example, St. Petersburg State University may spend 20-60 hours/week practicing while a team at Stanford may spend 5-15. Both of the teams might opt to go to the summer training camp in Russia, though. My teams generally spent 5 hours/week practicing and did not attend any training camps.

While I don't think algorithmic programming contests are something inherently worthwhile, a lot of the replies here greatly understate their value. I have found that the experience provides some significant value in my work, in the form of recognizing moderately hard problems as problems I've solved in the past or just being able to write stock algorithms correctly without much thought. This might not apply to every job, though. A much more concrete benefit is that reaching even a moderate level of proficiency in algorithmic programming contests (like yellow on TopCoder maintained over a long period of time, or doing decently well at multiple ICPC regional contests) will build the same skills that are tested by most hiring processes at a higher level than the hiring processes generally test for.

Re: What Is It With US Students and Programming Contests?

#9
Many of the US students are in the Product Management Contest that occurs at the same time.

You win programming contests by making computers perform better. That's hard. You win product management contests by making humans perform worse. That's easier. Doesn't conflict with the drinking schedule.

Post reply on HN