ITMO managed to solve all the problems and win with 2 more solved problems than the second team [1] - which is extremely rare.
Gennady Korotkevich extends his impressive list of achievements in competitive programming (contested by no one else in the history) [2]. He's currently on top of both most prestigious rankings: Codeforces [3] and Topcoder [4] (with insane lead in the former).
There's a list of ICPC World Finals participants with their online handles [5] (ranked before the contest according to their likelihood of winning). There are video explanations of all solutions from the World Finals [6].
As a russian software developer from Moscow I can say that this contest is not well-known in Russia software community and it is completely not obvious that this contest is prestigious in some way. It may give you some points on the interview, but is not key point at all.
Actually, most of russian software developers even do not know about this contest.
Wrapping up, it is very, very weak statement that this contest is "very prestigious in Russia" and many people "are spending a lot of time to prepare". I think that ITMO have a good base for this contest is a more reasonable point.
I don't think this or other contests (Code Jam, IOI, TopCoder, Code Forces etc.) are well-known among the software community anywhere. Just like math competitions, they are very much dominated by students who were prodigies in math and computer science. Most of the highly successful competitors grew up being part of their country's math and informatics olympiad training programs, so they have years of practice. Average university students or software developers have little reason to take an interest because they just don't have the skills to compete at that level.
That said, within the competition community, the ICPC is in fact very prestigious, including in Russia, and teams do spend hundereds of hours training. You're representing your entire university, you only have two years of eligibility so winning is very difficult, and it's the only major team-based competition in this format (with the team sharing a single computer), which adds a camaraderie aspect that made it more enjoyable for me than individual competitions.
I'm dev from Yekaterinburg and I'd disagree.
Devs here like to watch ICPC. But it is student championship. Most of my colleagues just are not students.
Mature programmers prefer ICFPC (:
I'm agree that there's a passion among developers for such contests in Moscow, too. But my point is that this is not something "prestigious" and as a consequence a reason why many people "spending a lot of time" for it.
I mean you will not get any major benefits for investing in this, or something. It's interesting but not must-have for a professional developer. And that's why I not see a lot of people around coding contest-like tasks instead of, for example, contibuting to open source or doing freelance job, etc.
You forgot to add the key qualifier "at Google". That says nothing about how being good at programming competitions correlates with being good on the job in general.
It's also kind of common sense that if you spend a lot of time working on something that's not really related to your industry job that won't be as good at said industry job as if you spent that time, say, writing open source machine learning software. People just assume that programming == software engineering, but programming competitions are a lot more similar to math competitions than they are to real world jobs.
dude, you are just plain wrong in this. any of the (few) major software organizations in Russia know very well what ACM/icpc are. the winners definitely get a preferred treatment in the interview pipeline.
If you mean companies such Yandex, Mail, ABBYY (but not Kaspersky, huh) or something like that - I agree. Winners of ACM will get "preferred treatment", definetely. This will not affect their salaries a lot, but that's true.
But you missed my point. I argue that ACM is something extremely prestigious and people practicies a lot in mass. This is not true. And companies such Yandex and Mail is not a some kind of great place to work.
But if I will interview a candidate and know he participated (not won) in ACM I will be much more interested in him.
KTH in Sweden added a special course that was essentially there to practice for this kind of competitions.
"Problem Solving and Programming under Pressure"
http://www.kth.se/student/kurser/kurs/DD2458?l=en
A good intro is `Competitive Programming` by Steven Halim [1].
It covers the types tasks typically used in these kinds of competitions, with over 1000 categorized problems. I came away with a through understanding of the intuition behind many of the algorithms and why they work.
Same applies to all eastern European countries, Japan and China. People start prepping when they're still in middle school. Most of the winning team members are former IOI gold medalists.
BS, not a lot of people give any F's in Poland, yet 3 regional universities almost always place at the top. Lets face it, its the level of education (socialized = free in regions you listed) versus western broken for profit model.
Most western universities and colleges are not for profit. They're not free, but they're heavily subsidized, directly and indirectly. Princeton for example receives $105,000 per student per year in benefits due to the fact that none of their land is taxed, nor do they pay any capital gains taxes on their investments.
Canadian universities that consistently rank well (e.g. Waterloo or Toronto) usually have students with a history of competitive programming and those teams will practice quite a bit and have dedicated coaches. But most Canadian universities probably don't put a lot of effort into preparation.
I study CS and math at a top tier US university. I've heard of the ICPC and I know we have a team, but it isn't something a lot of people are interested in, at least to my knowledge. However, I'd imagine the people who are interested are spending a lot of time on preparation.
I led our university team in Ottawa, Canada. We were mostly self-organized - we ran own our pre-competition at the university for qualifying and we also did the Baylor stuff online for practice. A professor did help us out a bit but it was minimal.
I'm from Taiwan and have some experiences on IOI[1] and ACM-ICPC (but never enter National representative or ICPC world final). We also spend many times on training. IOI is country-level contest, so every country has its own tournaments to find out top-level students as their National representative, like: USACO[2].
Usually Many of us start to know these kind of contest by IOI at high school (16 years old), while some geniuses may learn even younger.
First we need to learn C/C++/Java, algorithms, data structure and so on ( For example,Read the book "introduction to algorithms" at that age), then learn how to solve problems on that contest by UVa Online Judge[3], TopCoder and so on. So it's a long road from high school to university, but solving problems is sometimes interesting.
Curious, why does the US do relatively poorly at ICPC, but relatively well at IMO. I know they are different competitions, but I would have thought there would be more correlation. Especially since most people believe that US universities are stronger than US high schools.
In IMO we are consistently top 3 (China dominating). In ICPC we are more like 5-10, with Russia dominating.
Unless the big thing that captures the difference is that in IMO the US is one team, whereas in ICPC you split up the US competitors to probably 10-20 competitive colleges, whereas maybe in Russia the top students tend to aggregate at one school more than in the US?
I believe that it's mostly a question of incentives.
IMO/IOI are very prestigious competitions for high school students. Doing well there can help you get into the college of your choice. This is true for US students as well as for students in other countries.
ICPC is a college students competition, but if you are a student in a good US college there isn't a lot to gain from it. You have plenty of real world opportunities already: tech industry, startups, academic research. In contrast, if you are a student in Russia or China and your goal is to get into a US Ph.D. program or to work in a place like Google or Facebook, ICPC is a great opportunity to make yourself stand out.
Keep in mind that a large fraction of the top IMO/IOI students from around the world move to the US for college, so there's plenty of talent in the top US colleges. There is just no motivation.
One other factor is support from the university. Places like MIT/Stanford don't care much about ICPC. The coaches are usually other students that are former contestants, working on a volunteer basis. On the other hand, a place like St.Petersburg ITMO cares a lot about ICPC, because it gives them bragging rights.
(Source: I've studied both abroad and in the US and I've been a contestant.)
Gennady Korotkevich extends his impressive list of achievements in competitive programming (contested by no one else in the history) [2]. He's currently on top of both most prestigious rankings: Codeforces [3] and Topcoder [4] (with insane lead in the former).
There's a list of ICPC World Finals participants with their online handles [5] (ranked before the contest according to their likelihood of winning). There are video explanations of all solutions from the World Finals [6].
[1] http://icpc.baylor.edu/scoreboard/
[2] http://en.wikipedia.org/wiki/Gennady_Korotkevich#Career_achi...
[3] http://codeforces.com/ratings
[4] https://www.topcoder.com/tc?module=AlgoRank
[5] http://codeforces.com/blog/entry/15090
[6] http://codeforces.com/blog/entry/18016