Slashdot Mirror


No US College In Top 10 For ACM International Programming Contest 2013

michaelmalak writes "The annual ACM International Collegiate Programming Contest finished up last week for 2013, but for the first time since its inception in the 1970s, no U.S. college placed in the top 10. Through 1989, a U.S. college won first place every year, but there hasn't been one in first place since 1997. The U.S. college that has won most frequently throughout the contest's history, Stanford, hasn't won since 1991. The 2013 top 10 consists entirely of colleges from Eastern Europe, East Asia, and India."

121 of 199 comments (clear)

  1. Diagram. by Seumas · · Score: 1

    Can someone draw us a diagram that explains the submission?

  2. Yes, but . . . by PolygamousRanchKid+ · · Score: 1, Flamebait

    . . . we're still number one in obesity, right?

    . . . and . . . how come I never get those programmers when my company outsources . . . ?

    --
    Schroedinger's Brexit: The UK is both in and out of the EU at the same time!
    1. Re:Yes, but . . . by Anonymous Coward · · Score: 1

      . . . we're still number one in obesity, right?

      Uhh, no...

    2. Re:Yes, but . . . by Anonymous Coward · · Score: 1

      Pay peanuts, get monkeys.

    3. Re:Yes, but . . . by mwvdlee · · Score: 3, Insightful

      . . . and . . . how come I never get those programmers when my company outsources . . . ?

      For the same reason you never get a knowledgeable person if you dial a helpdesk.
      Those outsourcing countries have internal markets as well, including normal programming jobs.

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    4. Re:Yes, but . . . by Anonymous Coward · · Score: 2, Insightful

      TBH a lot of these people are not the kind of programmer you'd want to outsource your average business app to.

      It's really more of an algorithm competition. The programming part is mostly concerned about getting a correct implementation, quickly. The winners tend to be people who 1. know a lot of algorithmic theory, and 2. can write and keep track of fiendishly complex code, with emphasis on conciseness.

      I'm sure many of them can write clean and maintainable code as well, but it's not a requirement for this contest.

    5. Re: Yes, but . . . by kamapuaa · · Score: 3, Informative

      Actually, various small Pacific Island Nations are higher, then various Middle Eastern nations, then Mexico. Then US. Nauru and Samoa are 95% obese.

      --
      Slashdot: providing anti-social weirdos a soapbox, since 1997.
    6. Re:Yes, but . . . by mc6809e · · Score: 1

      There probably is a correlation between obesity and a slothful mind, present company excluded, of course.

    7. Re: Yes, but . . . by OhANameWhatName · · Score: 3, Funny

      Actually, Mexico just took over the top spot for obesity.

      If you wanna be the best, you've GOT to be hungry.

    8. Re:Yes, but . . . by Anonymous Coward · · Score: 1

      a lot of these people are not the kind of programmer you'd want to outsource your average business app to

      Amen! Why would you want to outsource to proven talented programmers? How are you meant to get an adrenelin buzz out of that?
      BTW, are you including the American contestants when you mention "these people"? Just curious.

    9. Re: Yes, but . . . by davester666 · · Score: 1

      You can't say we don't try.

      http://www.heartattackgrill.com/

      --
      Sleep your way to a whiter smile...date a dentist!
    10. Re:Yes, but . . . by Anonymous Coward · · Score: 2, Insightful

      Yes, I mean everybody who participate in the ICPC.

      It's a contest where clever programmers do well.
      The advantages and disadvantages of clever programmers are well known. These are all brilliant people who can write clever code, but not all of them will write code that other people can maintain.
      Some of them are simply to clever to see why other people would have trouble following a piece of code.

      I'm not saying their skills aren't valuable when you actually have a difficult programming task, but for outsourcing especially, where the task is hopefully basic and the code is guaranteed to pass through many hands of different skill levels, you don't need clever people, and especially not 'clever' people.

  3. *shrug* by coaxial · · Score: 3, Informative

    So what? I don't see any of those schools being real power houses of innovation either.

  4. Could be a good sign... by ndykman · · Score: 1, Informative

    This programming contests have nothing to do with real world programming or the skills need for most CS fields. Certainly, these are fun algorithmic challenges, but the timed nature of these contests encourage quick and dirty solutions that have no place in the real world. Creating new algorithms and other kinds of CS research requires a lot of attention to performance, scalability and correctness that aren't tested by these contests.

    Okay, maybe those High Performance Trading guys want crazy quick complex code that nobody can understand, but that's kind of the problem, is it not?

    1. Re:Could be a good sign... by Anonymous Coward · · Score: 5, Insightful

      What manner of "real world" is it where there aren't crazy deadlines and time to design and code properly?

    2. Re:Could be a good sign... by OhANameWhatName · · Score: 3, Funny

      This programming contests have nothing to do with real world programming or the skills need for most CS fields.

      Phew, glad you cleared that up. For a second there I thought that the education system in the US had been flushed down the toilet!

    3. Re:Could be a good sign... by ndykman · · Score: 1

      s/This/These/g. I is smart!

    4. Re:Could be a good sign... by mc6809e · · Score: 1

      This programming contests have nothing to do with real world programming or the skills need for most CS fields. Certainly, these are fun algorithmic challenges, but the timed nature of these contests encourage quick and dirty solutions that have no place in the real world.

      Could be.

      I did really well in these competitions during high school. Now I look back in horror at some of the code I came up with.

      What slows me down today is all the second guessing I do now that I know what can go wrong.

      There's a parallel in entrepreneurship. Many immigrants in the USA start businesses in part because they just don't know just how vulnerable they are to lawsuits and regulations. Many native citizens are much more cautious for fear of what the legal system or government might do to make their business life more difficult and they sit on the sidelines.

      It's possible programmers in other countries are still in that exciting stage where they can code without fear.

    5. Re:Could be a good sign... by Bob+Hearn · · Score: 5, Informative

      I would guess that you've never entered one of these competitions. To do well, it is not sufficient to come up with quick and dirty solutions; these will generally fail. You have to be able to find a good algorithm, quickly, and implement it, catching all the edge cases. These are certainly valuable real-world skills.

      Disclaimer -- I was on the Rice team that took 3rd in 1986 (before there were any international teams at all).

    6. Re:Could be a good sign... by phantomfive · · Score: 4, Informative

      If someone does well in these contests, they're probably really good programmers. Inexperienced, yes, but......that's why they're still in college. They are programmers who know how to get the computer to do what they want, which is more than a lot of 'professional' programmers.

      It's not clear why you think scalability and correctness aren't tested by these contests. A lot of the problems have huge datasets, so if you use an algorithm that doesn't scale, you will fail. And of course correctness is the point.......

      --
      "First they came for the slanderers and i said nothing."
    7. Re:Could be a good sign... by Sivaraj · · Score: 2

      Quick and dirty solutions have no place in real world? Tell that to the customer losing a million an hour due to broken system. He will take whatever quick and dirty fix you can give him in a matter of minutes.
      I am not sure which real world you are living in. But thinking and coming up with fixes at very short notice is a real skill needed in software industry. I have saved or recovered from several disastrous situations with quick and dirty fixes.

    8. Re:Could be a good sign... by ndykman · · Score: 2

      Sure, if you can be quick and clean, that's valuable. But it's throwaway code by nature. You get no points for making the code readable, well structured, interoperable, etc. And, sadly, new complex algorithm development is the kind of development very few people actually get to do.

      There are all kinds of programmers and skillsets The problem with these contests is they give the impression that this the "highest form" of programming skill. In fact, there are many important skills these contests don't address at all, and there are many good programs at schools those that would have a hard time fielding a competitive team.

    9. Re:Could be a good sign... by ndykman · · Score: 1

      I thinking of the world in which you don't want those problems to crop up in the first place, and when they do (and yes, they will), you want the fixes to work and work correctly, not just trade one bug for two down the road, then four.

      Making those systems has nothing to do with quick or dirty. The reason they happen is too many programmers have to compromise in the face of unrealistic deadlines for fear of being replaced by new talent who writes code (too) fast, and makes headaches down the road even faster.

      The people that really hold these contests and the kind of programming done for them as the peak of software development really cause many more problems than they solve in most organizations. Those that just seem them as special kind of programming skill (fun, challenging, but unique) do much better. And any school that overemphasizes this skillset versus a more diverse one is not the best school.

      But, hey, I'm old and grumpy, so what do I know.

    10. Re:Could be a good sign... by ndykman · · Score: 2, Insightful

      I looked at the input/output files for the 2011 and 2012 contests. The biggest files I found were on the order of 10Mb. That's not a huge dataset in my mind, not by a long shot. I'd bet that most, if not all of the submitted solutions would fail if given datasets on the order of gigabytes, or not run in any reasonable amount of time. Makes sense, they don't have to. But that's real world scale.

      It's easy to dump on "professional" programmers, and yes, there's a lack of talent, but being good in these contests is no predictor of success in a programming career. Programming as a career has nothing to do with getting the computer to do what you want; it has everything to do with getting it to do what your customer wants. Your boss wants, what IT wants, and frankly, it really is about not doing what you can't maintain or do well enough and having the courage to say no. And, yes, it does mean being able to work in a team with people that have different skills or are less talented than you.

      I've seen too many students who thrived on this kind of work, were encouraged by professors and others for their talents, only to watch them crash and burn in the realities of programming outside of school. And academics is no recourse for some either, as that is not quickly solving problems with known answers, that's asking questions, forming a new problem (harder than it sounds) and then hopefully answering it well.

    11. Re:Could be a good sign... by ndykman · · Score: 1

      Yes, ironically, one of those "real world" skills that this may not test is writing and communication. Proofreading being paramount to the first, of course. So, your humor is on point.

      Be nice if Slashdot had a "WTF!?" edit button. You get two minutes to fix your fails. After that, to the wolves with ye.

    12. Re:Could be a good sign... by Anonymous Coward · · Score: 1

      People always say this, and it's total bullshit. It takes dedication and intelligence to be world-class anything. Dedication and intelligence carry over to every job. And if you have to explain why some person's world-class talent is not the exact same thing as they would need in their job, you'd better believe there are some more specific skills that carry over too.

      A few specific examples in this case:
      - The ability to think through an approach to a problem and see if it will actually cover all the cases.
      - The ability to, after having done this, implement a complex solution correctly.
      - The ability to tell whether an approach will be efficient before spending the time to implement it.
      - The ability to organize a small team to work together efficiently.

      The ability to do these things quickly does not make you worse at long term projects.

      On the other hand, you know what is a good anti-predictor of success in the real world? Seeing someone else accomplish something you couldn't, and then brushing it aside and saying "I'm still better than them". Unwarranted self-satisfaction goes hand in hand with a lack of drive to improve.

      - Signed, an ACM world finals veteran now in a senior engineering position at Google (and not the only one by a long stretch)

    13. Re:Could be a good sign... by GigaplexNZ · · Score: 1

      I don't see why young programmers in the USA would be coding with fear of the legal system etc.

      They probably don't want to become the next George Hotz or Aaron Swartz. Copyright and patent lawsuits are becoming fairly common, one example is Lodsys suing small iOS app developers for using APIs in the iOS SDK. There are plenty of reasons why young programmers should fear the USA legal system.

    14. Re:Could be a good sign... by allcoolnameswheretak · · Score: 4, Interesting

      From looking at some of those problems, it seems to me that it's more important to be a better mathematician than a programmer.

    15. Re:Could be a good sign... by Loki_666 · · Score: 5, Insightful

      Ah, in that case its even worse! It indicates the US is lacking behind other countries in producing quality mathematicians!

      And our company employs a lot of our programmers from the university maths department. With good reason.

    16. Re:Could be a good sign... by Anonymous Coward · · Score: 1

      Yeah, those grapes are sour. I competed in this competition and one year my team was very close to getting into the international final. Your criticism reads as something coming from a person who has no idea what these competitions are really about. I'll even help you out and give you a real criticism. These competitions test the ability to solve very difficult algorithm problems and the ability to implement those algorithms very quickly with zero bugs. The main limitation is that whatever the solution is, it has to be implementable by a very fast coder in a few hours. So the stress is not on managing complexity in very large programs, which is a very important programming skill, since you can't write a very large program in a few hours.

      However, your criticism is way off. The focus of the competition is exactly on performance, scalability and correctness. If your program has any bugs, it is exceedingly likely that the automated test suite (that you don't get to see) will find it, and then you get zero points for that submission plus a penalty for submitting something wrong. No bugs are accepted. The main challenge with these competitions is that they will give your program large inputs and your program has to solve them within tight limits on computation time and memory use. If you break those limits, you also get zero points. So it turns out that the entire focus of the competition is exactly those points that you think are not tested by such contests.

      If you had tried doing a competition like this for a while, you'd also realize that complex incomprehensible code is not a good way to go. The problem is that you have to write entirely bug-free code, and if you don't keep it simple, you won't be able to get the bugs out in time. Your 2 other team mates also won't be able to help you track down bugs if your code is incomprehensible. This is a team competition with 3 people per team and only 1 computer. So for debugging you have to print out the code and find the bug by reading the source code on paper - because the 2 other people on the team need time to input their solutions too. So you cannot rely on a debugger showing you where things went wrong. Which again means that you have to keep the complexity low. These competitions are far harder than normal programming, except, as I said, on the question of managing complexity in a large program.

      But yeah, those grapes that you know nothing about must be sour. That's it.

    17. Re:Could be a good sign... by Anonymous Coward · · Score: 2, Insightful

      I looked at the input/output files for the 2011 and 2012 contests. The biggest files I found were on the order of 10Mb. That's not a huge dataset in my mind, not by a long shot.

      10MB input is huge if you're solving traveling salesman. It's small if you're trying to count the number of binary 1's in that file. Your methodology of looking at the input size without considering the problem yields only a nonsense answer.

      It's easy to dump on "professional" programmers, and yes, there's a lack of talent, but being good in these contests is no predictor of success in a programming career.

      How do you know? Given that programming is highly IQ-loaded and so are these competitions, it would be entirely impossible for there to be no predictive effect. The only question is how much can be predicted. You clearly have no idea on that question.

    18. Re: Could be a good sign... by Khazunga · · Score: 3, Insightful

      The problems are such that you don't need huge datasets to choke O(n) solutions in the execution time limit. Winners at these competitions know how to produce efficient code. They may need to learn maintainability, but I'd wager that is an easier skill than producing the kind of efficient *and* correct solutions they come up with. Try your hand at some of the problems to see how hard they are: http://uva.onlinejudge.org/

      --
      If at first you don't succeed, skydiving is not for you
    19. Re:Could be a good sign... by Dcnjoe60 · · Score: 2

      This programming contests have nothing to do with real world programming or the skills need for most CS fields. Certainly, these are fun algorithmic challenges, but the timed nature of these contests encourage quick and dirty solutions that have no place in the real world.

      Could be.

      I did really well in these competitions during high school. Now I look back in horror at some of the code I came up with.

      What slows me down today is all the second guessing I do now that I know what can go wrong.

      There's a parallel in entrepreneurship. Many immigrants in the USA start businesses in part because they just don't know just how vulnerable they are to lawsuits and regulations. Many native citizens are much more cautious for fear of what the legal system or government might do to make their business life more difficult and they sit on the sidelines.

      It's possible programmers in other countries are still in that exciting stage where they can code without fear.

      Or, it could be that many immigrants in the USA start businesses because they have nothing to lose if they fail and everything to gain if they win. Like a high school kid in a programming contest, what is the penalty for failure? Now, take that immigrant who has made it past a startup or the high school kid is now working as a programmer, there is no longer "nothing to lose" and one has to manage risk. It has nothing to do with the legal system and everything to do with risk/reward.

    20. Re:Could be a good sign... by ebno-10db · · Score: 1

      Question: how much practice or training does a team do (analogous to how athletic teams practice and train before a meet or game)?

      Quoting PP in full because it shouldn't linger at score 0:

      Yeah, those grapes are sour. I competed in this competition and one year my team was very close to getting into the international final. Your criticism reads as something coming from a person who has no idea what these competitions are really about. I'll even help you out and give you a real criticism. These competitions test the ability to solve very difficult algorithm problems and the ability to implement those algorithms very quickly with zero bugs. The main limitation is that whatever the solution is, it has to be implementable by a very fast coder in a few hours. So the stress is not on managing complexity in very large programs, which is a very important programming skill, since you can't write a very large program in a few hours.

      However, your criticism is way off. The focus of the competition is exactly on performance, scalability and correctness. If your program has any bugs, it is exceedingly likely that the automated test suite (that you don't get to see) will find it, and then you get zero points for that submission plus a penalty for submitting something wrong. No bugs are accepted. The main challenge with these competitions is that they will give your program large inputs and your program has to solve them within tight limits on computation time and memory use. If you break those limits, you also get zero points. So it turns out that the entire focus of the competition is exactly those points that you think are not tested by such contests.

      If you had tried doing a competition like this for a while, you'd also realize that complex incomprehensible code is not a good way to go. The problem is that you have to write entirely bug-free code, and if you don't keep it simple, you won't be able to get the bugs out in time. Your 2 other team mates also won't be able to help you track down bugs if your code is incomprehensible. This is a team competition with 3 people per team and only 1 computer. So for debugging you have to print out the code and find the bug by reading the source code on paper - because the 2 other people on the team need time to input their solutions too. So you cannot rely on a debugger showing you where things went wrong. Which again means that you have to keep the complexity low. These competitions are far harder than normal programming, except, as I said, on the question of managing complexity in a large program.

      But yeah, those grapes that you know nothing about must be sour. That's it.

    21. Re:Could be a good sign... by sjames · · Score: 1

      Yes, run fast and give correct results. Does it have to provide useful diagnostics if it gets bad data? Handle strange corner cases? Be maintainable?

      Those are the real world programming requirements in question that don't apply here.

    22. Re:Could be a good sign... by Princeofcups · · Score: 1

      Ah, in that case its even worse! It indicates the US is lacking behind other countries in producing quality mathematicians!

      And our company employs a lot of our programmers from the university maths department. With good reason.

      Not only universities, but slashdot in general. How many times have we seen CS majors whining that they have to take math and, horror of horrors, foreign language courses. In the US if it's not marketable, it's not worth doing. And math is HARD. :-P

      --
      The only thing worse than a Democrat is a Republican.
    23. Re:Could be a good sign... by sydneyfong · · Score: 2

      Ironically, communication and teamwork is actually a part of this contest.

      3 people in a team on one computer. Makes you think pair programming was inspired by them (given the long history of the competition).

      --
      Don't quote me on this.
    24. Re:Could be a good sign... by tlhIngan · · Score: 2

      From looking at some of those problems, it seems to me that it's more important to be a better mathematician than a programmer.

      Which is the foundation for computer science. These are computer science contests, not programming contests. There's a huge difference.

      Computer science is a science - it's the study of computing. Coding is required, but relatively secondary to the whole thing. You can apply what you learn from CS to practical things - that's what computer engineering is about. Then there's just the garden variety coder who takes a course on Java and that's it - that's a trade.

      These problems are about generating algorithmic solutions and realizing when one may outdo another (and sometimes, realizing that while nice solution is great, sometimes brute force is the order of the day).

    25. Re:Could be a good sign... by phantomfive · · Score: 1

      The programming skill comes from the rapid, correct implementation of various algorithms.

      Of course, code monkeys don't need to know algorithms, but that doesn't mean they're not important.

      --
      "First they came for the slanderers and i said nothing."
    26. Re:Could be a good sign... by phantomfive · · Score: 1

      I've seen too many students who thrived on this kind of work, were encouraged by professors and others for their talents, only to watch them crash and burn in the realities of programming outside of school.

      Really? Why did they crash and burn? What was wrong with them? Because I've never seen that.

      --
      "First they came for the slanderers and i said nothing."
    27. Re:Could be a good sign... by thoth · · Score: 1

      I looked at the input/output files for the 2011 and 2012 contests. The biggest files I found were on the order of 10Mb. That's not a huge dataset in my mind, not by a long shot. I'd bet that most, if not all of the submitted solutions would fail if given datasets on the order of gigabytes, or not run in any reasonable amount of time. Makes sense, they don't have to. But that's real world scale.

      File size isn't a good metric when many of the challenge problems boil down to graph theory, e.g. 2013 problem C.
      And as far as running in reasonable time - in 2013 each problem had an associated solution run time limit, in the low seconds. Final scoring included a penalty for aggregate time, etc.

    28. Re:Could be a good sign... by pspahn · · Score: 1

      And math is HARD.

      English, on the other hand, is merely difficult.

      --
      Someone flopped a steamer in the gene pool.
    29. Re:Could be a good sign... by Anonymous Coward · · Score: 1

      Wait, through at least 1986 there was no international competition and yet the O.P. was using that data in a claim that prior to 1989 a US team always took first place? Wow. That's the most skewed statistic I've seen since ... well, I haven't watched the news today.

    30. Re:Could be a good sign... by Anonymous Coward · · Score: 1

      They test against a data set that will trigger the strange corner cases. Thats part of the game.

      The fact is that you can't really add those criteria without adding subjective judging on top of additional time.

      There are things the tests don't cover, but everything the competition does cover is quite relevant to real-world CS.

      A guy who can write the code in 1/2 the time is going to be 200% more efficient or he will be able to spend his time writing nice clean code. Regardless of how you argue it, the people who win this stuff are very good programmers.

    31. Re:Could be a good sign... by JMZero · · Score: 1

      [quote]The biggest files I found were on the order of 10Mb. That's not a huge dataset in my mind, not by a long shot.[/quote]

      People have already corrected you on this - but holy crap is this a revealingly stupid thing to say.

      [quote]but being good in these contests is no predictor of success in a programming career. [/quote]

      It absolutely, demonstrably is - and you'll see former top competitors in important positions at pretty much all the big tech firms. Google, in particular, spends a tremendous amount of time and money identifying prospects this way - and past competitors are key to lots of its most innovative and successful products. Obviously this isn't the only skill involved in being a good programmer, but practicing these difficult problems and learning the theory behind them is a huge leg up in being successful.

      --
      Let's not stir that bag of worms...
    32. Re:Could be a good sign... by ndykman · · Score: 1

      Mainly, expectations management. They really liked the challenge of short term projects and solving these kinds of problems, but the day to day of long term development just burnt them out. Sometimes, raw skill isn't enough, and I have to say, they got some really bad advice on what programming careers for somebody with a Bachelor's degree looks like from professors that were out of touch. That was the real problem.

    33. Re:Could be a good sign... by ndykman · · Score: 1

      Google used to. And they've finally realized that it was an ineffective way to identify talent that works for them in the long term. http://www.theregister.co.uk/2013/06/20/google_hiring_procedures/. I just interviewed with them, and they have dumped the brain teasers and puzzles completely. They are actually much more interested in what you like to do and the kind of person you are. Way overdue. Google did itself a huge disservice in letting people think you needed a PhD or to be "super smart" to work there.

      And there's a huge confounder here. I'd argue that making a direct causal link between success of the competitors and the competition and problems itself is really difficult. People that are motivated and bright can do well, and some of them will like these contests. But you can be motivated by all sorts of programming, and you can't treat the fact that the US is not doing as well in the one area as a condemnation of our education system. In fact, it might be a sign that schools are starting to focus on a more diverse set of students and skillsets.

      I will go one further. Some have noted that teams train for a long time for these competitions. I see no value in that beyond the commitment (which is significant) and I see a real risk in become over-specialized in a kind of programming and problem solving that has very little general application.

      Put it this way, if you gave me a choice between a top contender in this contest who trained for six months to do well, and a student who spent six months in between classes trying to make and sell an Xbox Live simple 2D game, I'd pick the latter every time.

      As for my comment, it was more to the point that it is not large enough to require parallel programming between machines and this is by design. If I remember correctly, these contests are limited to a single computer and a small team. Parallel algorithm development is a whole different animal. In that world, 10Mb is nothing, a graph with millions of nodes is not big.

    34. Re:Could be a good sign... by Hognoxious · · Score: 1

      10 REM
      20 Quick and dirty solutions have no place in real world?
      30 Tell that to the customer losing a million an hour due to broken system. 40 He will take whatever quick and dirty fix you can give him in a matter of minutes.
      50 goto 30.

      FTFY.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    35. Re:Could be a good sign... by JMZero · · Score: 1

      As for my comment, it was more to the point that it is not large enough to require parallel programming between machines and this is by design. If I remember correctly, these contests are limited to a single computer and a small team. Parallel algorithm development is a whole different animal. In that world, 10Mb is nothing, a graph with millions of nodes is not big.

      You aren't making this better - you're just making it clearer you don't understand algorithm complexity.

      Google used to.

      I'm not talking about interview questions with sheep. I'm talking about the algorithm competitions they recruit from. They watch external competitions, and were spending enough time on it that they eventually started an in house one a while back (Google Code Jam - this year's contest is currently in progress). I still get headhunting calls from Google and financial firms based on participation in contests years ago.

      God I regret it every time I come to Slashdot - might as well be YouTube comments.

      --
      Let's not stir that bag of worms...
    36. Re:Could be a good sign... by ndykman · · Score: 1

      Funny, I was thinking the same thing. Nature of the beast, I fear.

    37. Re:Could be a good sign... by allcoolnameswheretak · · Score: 1

      I have a masters degree in computer science and I consider me somewhat competent in the field. I think I could develop anything from a web app to a simple 3D game for you. With some of those problems however... I don't even know where to start.

      Computer science is a huge field by now and people have to specialize. You've said it yourself- those ACM puzzles seem to be heavily biased towards the algorithmic side of things, and not really -computer science- as a whole, as that would also include questions about software design, frameworks, patterns, programming languages, etc.

    38. Re:Could be a good sign... by ndykman · · Score: 1

      I'd admit that there is more focus on correctness and performance that met the eye, so I will concede those points. As for scale, the nature of the competition precludes the use of clusters, so while large scale implementations may differ, you can't get around that.

      The thing about programming, sour grapes aren't that sour. I've managed to do okay without being on a world class programming team. I'm sure plenty that have are doing awesome as well.

    39. Re: Could be a good sign... by ndykman · · Score: 1

      They may need to learn maintainability, but I'd wager that is an easier skill than producing the kind of efficient *and* correct solutions they come up with.

      And I would disagree. It's a different skill, no "easier" than others and just as valuable, if not more so; maintaining code is part and parcel of all programming.

    40. Re:Could be a good sign... by hvm2hvm · · Score: 1

      Yeah, you can get a programmer that writes beautiful frame-worthy code that doesn't work and I will hire programmers that solve the problems they are presented with.

      --
      ics
  5. Re:Anyone surprised? by c0lo · · Score: 2
    --
    Questions raise, answers kill. Raise questions to stay alive.
  6. Re:a disgrace to humanity by c0lo · · Score: 1

    Agreed, it really is a shame that they dropped Fortran and Pascal.

    What??!??

    --
    Questions raise, answers kill. Raise questions to stay alive.
  7. US programmers too clever to waste time in school? by mc6809e · · Score: 1, Redundant

    College might be considered a waste of time by the best programmers.

    Another possibility is that the very clever are washing out of school before they even get to college. I once saw a study that suggested (not proved) that something like 20% of high school dropouts in the USA might be gifted.

    In my experience most of the attention in public school goes to those that are ultimately ineducable. Gifted students are just expected to be fine without help. If they dropout, though, they're less likely to be programmers at a university.

  8. Yes but we're -really- the best in the -real world by Anonymous Coward · · Score: 1

    Why is it that whenever another country beats the US in anything that is perceived as good, their achievement is somehow not relevant or "they had it easy" or som slashbot has an funny anecdote that he thinks disproves the whole claim?

    Why is it that whenever another country beats the US in any metric that is perceived to be bad it's because they're socialists, "had it coming" or some slashbot has a funny anecdote that totally validates the claim?

    And why is it that every time this type of bullshit assumption of american exceptionalism is called out, it's always "america bashing" or some such trope instead of an argument on the merits of the claim?

  9. Re:US programmers too clever to waste time in scho by OhANameWhatName · · Score: 1

    I once saw a study that suggested (not proved) that something like 20% of high school dropouts in the USA might be gifted

    I would have thought it was closer to 80%. You have to be pretty smart to see the writing on the wall as a teenager.

  10. Misleading by Anonymous Coward · · Score: 1

    The article misses a few key points. A US team won every year until 1989 because it wasn't really accessible outside North America until after then. When the New Zealand team won in 1990 (the first winners outside the US), they had to compete in the California regional, IIRC, despite living on the other side of the world. It only really properly expanded internationally after IBM first sponsored it in 1997 - probably not coincidentally, the last time a US team won. It's also important to note that certain countries (such as Russia and China) take this competition VERY seriously, training people for years exclusively for this competition, so it's not surprising that they dominate it. Trying to read anything into trends in the 'winning' countries is fairly pointless.

    -A former world finalist

  11. Cheating by Anonymous Coward · · Score: 1

    The programming contest is partly skill, but mostly rote memorization and practice, and if you get the problem set ahead of time or even just a tip on some algorithm to study (there are tons of potentially useful formula to memorize) then you have an enormous leg up on the competition. The countries that have excelled at the programming contest recently are ones that stress rote memorization and that have, by Western standards, rampant cheating.

    Coincidence? Maybe, but I see a cheating scandal in ACM's future.

    When my team placed 2nd in our region they actually added test data after the contest to invalidate one of our programs, moving us to 3rd place (we learned that the judges constructed new test data specifically to fail our program). They did this because my college placed 1st and 2nd in the region and the rules at the time sent the fist and second team to international, but only one team per college, so our region was only going to have one team. This was a long time ago, but I wouldn't be surprised to find out they have the same kind of "professionalism" today.

    1. Re:Cheating by OhANameWhatName · · Score: 1

      The countries that have excelled at the programming contest recently are ones that stress rote memorization and that have, by Western standards, rampant cheating

      So when the 'West' wins, it's all fair and above board but when the 'not West' wins it's because of unsubstantiated rampant cheating and the stressing of rote memorization?

      I went to school in the 'West' and that's all that school was, rote memorization. I got excellent grades by cramming and accomplished all of my assignment work by 'reading between the lines' and understanding what the teachers / lecturers / private tutors were looking for. Young people are forced to attend locations under the most subservient and degrading circumstances where their minds are entrained to regurgitate a fixed set of information.

      Education isn't education .. it's indoctrination.

    2. Re:Cheating by ezdiy · · Score: 1

      Yes, sometimes there are rumors circulating about what probable problems there will be, but never closer specifics. So yes you have to memoize and practice a lot of "useless" stuff to even stand a chance. Even if there will be offline version of wikipedia and wolfram available during those contests, memoizing at least the common stuff gives you incredible edge - because it's just not the knowledge but also an acquired skill of choosing and applying common algorithms to various problems.

      Regarding "new" data set, I know how it feels, exact same thing (corner case data set) happened to me few times.

      The key is to be not bitter and throw tantrums and baseless accusations the moment results are published, but actually look over the winner's code (heck, even post it online to wider forum, if you dare :), and find corner-case data set too, during the appeal period.

      The first time I had to admit a loss - the guy's solution was perfect (or I was unable to spot the bug). The second time the competitor's code had similiar degree of a problem, just not so obvious from reading the code. Technically it would be tie, but good judge will give you bonus point for pointing out his mistake.

      Now, this was in highschool state championship in small east-european country, not sure what ACM rules are, but I suspect it will be something similiarly reasonable

      don't attribute to malice what can be explained by incompetence
      Judges are human too.

  12. Re:US programmers too clever to waste time in scho by phantomfive · · Score: 1

    Maybe that's what happens when you start teaching Python as an introductory language instead of Scheme?

    Also worth noting that you can study and practice for these competitions, there are books explaining good training routines. So it's very possible those countries just practiced harder for the contests.

    --
    "First they came for the slanderers and i said nothing."
  13. Re:US programmers too clever to waste time in scho by OhANameWhatName · · Score: 1

    So it's very possible those countries just practiced harder for the contests

    Quite true. Another possibility is that 'those countries' won fairly.

  14. Re:US programmers too clever to waste time in scho by phantomfive · · Score: 1

    Quite true. Another possibility is that 'those countries' won fairly.

    I'm going to assume by "won fairly" you mean, "won because their universities are better than ours." Because I consider winning by practicing harder to be fair.

    That's what the article seems to be worried about, are the CS programs in those countries better? As if I have any idea.

    --
    "First they came for the slanderers and i said nothing."
  15. OP gives too much credit to Indian universities by Sivaraj · · Score: 1

    There is just one Indian college in that list at position 60. Indian universities are equiped to mass manufacture programmers for IT industry, not for creating star programmers.

  16. The west is getting lazy by gweihir · · Score: 4, Interesting

    Or better, it _is_ already lazy. I have done some competitive programming while studying, but it was a small group of students in a special elective course and only 6-7students in it. I already was a PhD student at that time and not taking the course, but I knew the professor doing it and he had told me that he was setting this up and also participating himself. Ended up being 1st until the professor and another student started "cheating" by using inline-assembler ;-)

    Still, even in this specialized, elective course, only half of the student put any real effort into it. That is not good. Programming is something you need to be able to do reasonably well if you do anything advanced in IT, or you will never be any good at it. Historically, the west did protect its economic advantage by having better infrastructure, machinery and materials, but that is over. Any bright person with at least slow Internet access, reasonable English language skills and an older computer with Linux or one of the xBSDs on it can compete now on a world-class level, geography has become pretty meaningless. Or rather, being in the west is a disadvantage due to a pervasive sense of entitlement. Personally, I think this is a good thing. Competing on merit only is the only working way to identify talented people.

    --
    Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    1. Re:The west is getting lazy by gweihir · · Score: 1

      Sorry, but you fail. I am not a programmer. I was not trained as a programmer. I work as IT architect, evaluator, auditor, designer, etc. I do program on occasion, but mostly for my own research. And I clearly see all these people in IT that cannot program and notice how often they do not get it, overlook problem areas, assign priorities wrong, misidentify critical items as non-critical and the other way round, buy products based on vendor propaganda instead of facts, etc. A second skill every IT person should have is some "reasonable" system administration experience, exactly for the same reasons.

      Your analogies are wrong as well. They identify the wrong companion skills, and "good" is not a requirement. "Reasonable" is. Fixed:
      - To be a good car mechanic, you must be a reasonable car driver. Pretty obvious that one.
      - To be a good cook, you must know how to go shopping for ingredients and have a reasonable understanding understand how things are grown and processed.
          To cite Paul Bocuse: "Buy the best ingredients you can get and it becomes very hard to not produce something good." (paraphrased)

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
  17. I see opportunity here by roland_mai · · Score: 1

    I don't think this is a matter of lazy or stupid. There are smart people all over the world. Finding them is the problem. Also, the US thrives because of smart people, so why not give incentive to the special ones to come over?

    1. Re:I see opportunity here by ebno-10db · · Score: 1

      the US thrives because of smart people, so why not give incentive to the special ones to come over?

      Define "special". I don't know anyone who objects to allowing genuinely exceptional or gifted people to come to the US based on their abilities and/or accomplishments (see 'O' series visas for example). However, that doesn't describe the vast majority of H-1B's, who may be competent, but have skills that can readily be found amongst citizens. It's a good way to drive down compensation though.

  18. Re:US programmers too clever to waste time in scho by OhANameWhatName · · Score: 1

    That's what the article seems to be worried about

    Damn! You got me.

  19. Re:a disgrace to humanity by RCL · · Score: 1

    CS student that cannot program in C/C++ probably cannot efficiently use other languages as well.

  20. Re:Anyone surprised? by c0lo · · Score: 3, Insightful

    Which of the Indian teams are represented? I see one at 60th...

    Irrelevant. What's relevant: if there's little need in the US (or any other country) economy for software people, it is likely there will be no winners from US in the ACM competition (or winning will happen only as an exception rather than the norm).

    In a sociological context, one needs quantity to develop quality consistently over time (that is: it is highly likely the talents need nurturing by an existing culture in their field for them to reach their full potential; and this requires quantity).
    Note that quantity alone is not sufficient for the quality to emerge - if in need for another example, you only need to look at the today's music

    --
    Questions raise, answers kill. Raise questions to stay alive.
  21. Re:Yes but we're -really- the best in the -real wo by Cenan · · Score: 1

    If you're really that thin-skinned, you should get off the Internet

    That works both ways, and since you're the one who started the whine thread, this will apply to you specifically, in this context. It's much easier to have a discussion when you preemptively rule out everyone who does not agree with you, but that doesn't add any value now does it?

    But since you decided to start a thread, specifically to ask questions framed with sweeping statements about the mindset of everyone on Slashdot (we're nearing the 3 million UID mark), you are in fact trolling. A proper solution would have been to offer counter arguments to those individual posts that you seem to take offense to. For now, you're just a bigot calling everyone else a bigot. Big whoop - that has never been seen before.

    --
    ... whatever ...
  22. Get real! by Impy+the+Impiuos+Imp · · Score: 1

    No US College In Top 10 For ACM International Programming Contest 2013

    Well, yes, but Eastern Europe, East Asia, and India don't have the benefits of our television telling them they suck at games.

    --
    (-1: Post disagrees with my already-settled worldview) is not a valid mod option.
  23. Re:a disgrace to humanity by TheRaven64 · · Score: 2

    It's possibly related to the results. Many of the top-tier universities use less industry-friendly languages for teaching undergraduates. At Cambridge we do a lot of ocaml, at MIT they use Scheme (and, apparently, Python), at a number of others they use Haskell. There are several reasons for doing this. The first is that teaching a less common language means that you don't start the course with half the students thinking that they already know the material. The second is that teaching a relatively simple yet expressive language teaches students to think about algorithms first and then about microoptimisation later when they learn their third or forth language.

    In many other universities, there has been the growing trend to believe that the language that you should teach with is one that you would use to solve real-world problems. I believe that this is a mistake, because the requirements for a language for teaching and for creating maintainable large-scale applications are nowhere near the same. This would mean, however, that students from universities with this belief would have an advantage in these contests as they'd be using a language that they'd had a few years more practice with.

    Looking at the results, however, I suspect that there's also a lot of apathy involved. MIT and Stanford are there, but they tend to encourage a very competitive atmosphere. Several universities that I'd expect to produce students that would do well appear not to have entered at all. Given the wide range of extra curricular activities available to students these days, I wouldn't be surprised if entering a competition is somewhere down the list.

    --
    I am TheRaven on Soylent News
  24. Re:Yes but we're -really- the best in the -real wo by Loki_666 · · Score: 1

    Why do people hate on the US you could ask?

    Its an interesting (but off-topic) question. But if people are hating you, there is usually a reason. Think about it.

  25. Re:a disgrace to humanity by RCL · · Score: 1

    And why teaching functional languages is an advantage? I actually see it as an academia's disconnect with real life. They could have been very well teaching liberal arts.

  26. Re:a disgrace to humanity by brainscauseminds · · Score: 1

    A contest that is limited to only C/C++ and Java is a disgrace to humanity. No skillful CS student would go to such a thing. This is completely ridiculous. Either pen and paper, or allow languages that are not among the very worst languages of the planet.

    These contests are writing about highly efficient programs performance and memory-wise and C/C++ are very adequate for such algorithm competitions. Any inefficient step performance or memory wise will be punished by failing tests and losing points. C/C++ has been one of the classical programming languages always used in algorithm contests. And what the fuck do you mean by "worst languages on the planet". You do not implement performance critical algorithms and data structures in Python or Ruby, this the correct job for C/C++ programming languages.

  27. Re:Yes but we're -really- the best in the -real wo by Cenan · · Score: 1

    I'll assume that you take issue with my original questions and perceive the assumptions they make to be incorrect then.

    No. I'm calling you out on your use of derogatory statements to bemoan the quality of discussions, specifically the parts that employ derogatory statements, or stereotypes if you will. That is bigotry. I'm not disagreeing with you on the point you so hamfistedly tried to make, but your implementation of it.

    Maybe it is to jingoistic "patriots" like yourself.

    Fuck you, you simple minded, filthy slut. There, balance restored.

    --
    ... whatever ...
  28. Re:a disgrace to humanity by Fuzi719 · · Score: 1

    Bah! If you're not coding in binary assembler, you're just coloring by numbers. /s

  29. Re:Not really, It was hosted in St. Pete by RabidReindeer · · Score: 2

    It's "fascinating" that St Pete schools make the top 5 twice. No team from England, France, Germany, or India? Hmmm...

    University of Central Florida ranked 48, that's gotta hurt anyone outside of China, the former USSR, and whatever other teams didn't just say "hey I know some C, WTF!"

    I did a double-take, since "St Pete" to me, means Tampa Bay, and these institutions are both in the OTHER (Russian) "St Pete", it appears.

    I had a short, if enjoyable time at UCF and attended one of their ACM contest planning meetings back when they were serious contenders. They approached it with all the determination of the Invasion of Normandy.

    I don't have much use for programming contests, myself, since practical programming isn't something that easily adapts to such short time frames, but it's still pretty sad that there are no US top 10 contenders.

  30. HAHA FAIL by sproketboy · · Score: 1

    ntr

  31. Re:a disgrace to humanity by datavirtue · · Score: 1

    So in a way the requirement of Java (or C++) favors bad universities.

    So people in CS program at an elite university can't program in Java? You win the idiot card.

    --
    I object to power without constructive purpose. --Spock
  32. Re:a disgrace to humanity by datavirtue · · Score: 1

    You got voted down because you are posting AC and you implied that people who are worthy of your grace can't program in Java or C++. Wierd.

    --
    I object to power without constructive purpose. --Spock
  33. Re:a disgrace to humanity by phulax · · Score: 1

    intercal

  34. Re:a disgrace to humanity by datavirtue · · Score: 1

    The second is that teaching a relatively simple yet expressive language teaches students to think about algorithms first and then about microoptimisation later when they learn their third or forth language.

    This make a lot of sense.

    there has been the growing trend to believe that the language that you should teach with is one that you would use to solve real-world problems.

    A fundamental misunderstanding by the non-technical administration and dinosaur faculty. As has been stated before, this is not computer science. I wish the state education boards would place requirements (algorithm and mathematical requirements) on calling programs computer science. We have a CSCI program that teaches Excel, and graphic design (zero algorithms and only basic algebra required). The programming courses do get into structures and sorting a little bit, but the last one I took left off linked lists! (didn't have time)

    --
    I object to power without constructive purpose. --Spock
  35. Re:ummmmm...CMU is still in the States by cryptizard · · Score: 1

    This post is so much irony... they are number 11.

  36. Re:a disgrace to humanity by Dcnjoe60 · · Score: 1

    A fundamental misunderstanding by the non-technical administration and dinosaur faculty. As has been stated before, this is not computer science. I wish the state education boards would place requirements (algorithm and mathematical requirements) on calling programs computer science. We have a CSCI program that teaches Excel, and graphic design (zero algorithms and only basic algebra required). The programming courses do get into structures and sorting a little bit, but the last one I took left off linked lists! (didn't have time)

    OTOH, it was within the last year that there was a /. article about major universities wanting to drop all of the math requirements from computer science degrees because it would encourage more people to enter the field. If you view a college as a business, the student as the consumer and the curriculum as the product, you may understand why today's computer science degrees have been so watered down. The CS department, like every other department is evaluated by how many seats they fill, at least on an undergrad level.

  37. Re:Yes but we're -really- the best in the -real wo by phulax · · Score: 1

    can I humbly add to french description : Brain specialists (perhaps due to research about inhibition of action on primates) For those who have the chance to understand french (?) : http://www.dailymotion.com/video/xpjec4_tv-lobotomie-la-verite-scientifique-sur-les-effets-de-la-television-conference-michel-desmurget-fsl5_news [dailymotion.com] in short : Television hurts brain and makes people unable to think. At best. SAT test plunging is synched to television adoption in US (31:53). 20:22 : the effect of television on child brain in one drawing ...

  38. Re:a disgrace to humanity by TheRaven64 · · Score: 1

    The problem is mostly one of marketing. If you're a top tier university, students will trust that teaching you Scheme or whatever is sensible because you've got a good reputation. If you're a second tier university, then students (and parents) have heard of Java and C# and know that industry likes them, and if one university uses them as a teaching language but you don't, then it's hard to convince them that it really does make sense. And your reputation is dependent on how well your former students do, which depends on the quality of your intake.

    --
    I am TheRaven on Soylent News
  39. Jobs - Students - Good Students - Winners by cmr-denver · · Score: 1

    Interesting that all of the places that seem to be at the top of this competition are places that the US has been outsourcing programming to for the last decade or two. When there are lots of (relatively well-paying) jobs available in an industry, more people want to get into that industry. And when more people want to get into an industry (that is pretty specialized and having an education is almost a pre-requisite), they go to school to ensure that they can get into that industry. And when more people go to school, you tend to get more good students. And when you have more good students, you tend to do well in these kinds of competitions.

    The corollary to that is that when you don't have jobs (because you're sending them all to countries with a cheaper cost of labor), then you don't have people who want to get into the industry. And when you don't have people who want to get into the industry, they don't go to school for that specialization. And when you have fewer people going to school, you have fewer good students, which means that you don't do as well in those competitions anymore. And that leads to a lot of wailing and gnashing of teeth about "How can we get young people interested in working in our industry?"

    1. Re:Jobs - Students - Good Students - Winners by sydneyfong · · Score: 1

      Yes, the US has been outsourcing programming to Russia and Eastern Europe. And Japan. (Just RTFA instead of believing the outright wrong summary)

      FYI, India is a non-competitor in these algorithmic competitions. Seriously, they suck at it. (See http://developers.slashdot.org/comments.pl?sid=3959807&cid=44247721 )

      --
      Don't quote me on this.
  40. Re:US programmers too clever to waste time in scho by ebno-10db · · Score: 1

    In my experience most of the attention in public school goes to those that are ultimately ineducable.

    Define "ineducable".

    Gifted students are just expected to be fine without help.

    As they should be. If you're bright enough you should be able to learn it by yourself. If you can't, then you're not as clever as you think. Genuinely gifted students, or even just the "pretty bright" (top few percentile) should be cheap to educate. There's the library, it includes computers and Internet access if your family can't afford them, they'll be an exam on the following material next Thursday. Attend the lectures if you want.

  41. Re:Anyone surprised? by sydneyfong · · Score: 1

    Irrelevant. What's relevant: if there's little need in the US (or any other country) economy for software people, it is likely there will be no winners from US in the ACM competition (or winning will happen only as an exception rather than the norm).

    And yet the fact is the US has a huge appetite for software people. I know a bunch of ACM ICPC world finalists (like around 20), and at least half of them at one point in their lives ended up in the Bay Area working on software for some large tech company (yes, on H1Bs).

    You can flame all you want about them "taking your jobs", but the fact is that there's a truly felt shortage of actually good programmers in the US. And it's not felt as strongly in other parts of the world, or at least that is my anecdotal experience.

    --
    Don't quote me on this.
  42. Re:US programmers too clever to waste time in scho by PRMan · · Score: 1

    The 4 smartest programmers I ever worked with were all high school/college dropouts.

    --
    Peter predicted that you would "deliberately forget" creation 2000 years ago...
  43. I did one of these competitions last year by GodfatherofSoul · · Score: 1

    Sponsored by a local company (probably recruiting) and not officially ACM-sanctioned. These are the kinds of competitions where if you practice you'll do much better at them. Our college had just rebooted their ACM club and I got the distinct feeling that had we been dedicated for years a team could place very high. We were around the 80% percentile or so and still burned 1/2 our time figuring out the logistics (physical space and PC access was limited). On top of that, we had a couple questions worked out, just formatting errors (silly stuff like one too many CRLFs) that the automated graded rejected.

    I'm not slamming these results since I think the project winners are probably very good programmers over all, but I bet a schools that focus and compete every year are at a distinct advantage. I've seen these pattern repeated in other areas like spelling bees.

    --
    I swear to God...I swear to God! That is NOT how you treat your human!
  44. Re:a disgrace to humanity by Hognoxious · · Score: 1

    Proper CS students wouldn't touch code with a rented bargepole. See also: Djikstra, telescopes.

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  45. Re:US programmers too clever to waste time in scho by AK+Marc · · Score: 1

    I won more than my share of programming contests when I was in high school. It has less to do with the quality of the school than the caliber of the student. The skills follow the students, not the professors. If they don't get a pool of skilled freshmen every year, there's nothing the school can do to get them to the caliber they need to win these things. I was programming in BASIC from about age 8, making my own programs on my VIC-20, because I didn't get all the cool games of the C-64. By age 12, I was reading the program templates in magazines and changing them to make them harder or easier, or whatever. That level of availability and interest is what drives competitive programmers. Doing relatively small complete programs 1000 times before their first competition. I didn't like CS or programming at a college level. I didn't want to be programming 8 hours a day on some module that was part of someone else's spaghetti code. Instead, I ended up being top IT guy (technically, not managerially) at a string of companies, and liked that much better than what I've seen of programmers. But as an 8-14 year old, you aren't thinking to that time frame.

  46. call the waaambulanze by luis_a_espinal · · Score: 1

    That's a huge difference. Programmers can program in C/C++, but of course would never do that if C/C++ is not the best tool to solve the problem at hand. You realize that a lot of universities teach functional first? Carnegie mellon adopted functional first in 2011 (don't know about right now).

    Lots of universities teaching functional programming first =/= most of the top universities.

    This inequality should be obvious to you if you were as brilliant as your words tend to imply you think you are. Whether you like it or not, top shit is written by top developers in C, C++ and Java, not Haskel or Lisp.

    My university did that in 2006 with haskell.

    So did you graduate recently (ergo talking with little experience) or are you just cheerleading?

    So in a way the requirement of (C/C++) favors bad universities.

    Non sequitur. Just because you say "in a way" so, that does not make it so. This statement of yours does not follow logically from anything you have said so far. Major failzx0r for a supposedly Computer Scientist IMO.

    Let's say the requirement was you have to develop in Visual Basic on a windows machine in visual studio. Then, out of principle, a lot of students won't go.

    That might be a "principle", but that does not make it a logical one. A programming language is a programming language. Good programmers can make shit sing with any programming language. Arrogant dilettantes hide their deficiencies behind principles. Besides, there is nothing inherently wrong with Visual Basic (or any of the modern BASIC incarnations.) They were never meant to be the most elegant of things, but tools to get things done.

    That people write bad code with it is not truly a function of the language/system. After all, and as I've said, good programmer will code good shit with any language. Bad programmers will exhibit some limited competence in an idiot savant way with one technology while being completely inept with all others.

    The same is true with the stupid C/C++ requirement.

    Oh grow the hell up dude. Real world, complex systems developed by very intelligent people gets written all the time in C, C++ and Java. Combat, missile and aeronautic systems? Mostly C or C++ (some Ada here and there.) Critical systems like nuclear monitoring stuff or medical devices? Mostly C. Large, fault tolerant, highly available distributed systems? Java (and to a much lesser degree, Erlang).

    Don't get me wrong, I enjoy functional programming languages (in particular Haskel and Common Lisp). But if we are going to be pedantic about the qualities of a language, let's get hung on the actual, large scale, uber-complex, real world successes of each. If we are going to be pedantic, let us be with some substance behind it.

    I mean John Backus told the world in 1972 that imperative programming might not be the best idea, and people still don't get it in 2013.

    Yeah Backus said it, but he never formulated a concrete solution. In reality, is there a significant need for one? From an academic POV, I would love to see one? From a practical POV, at this time, the world does not desperately need one.

    That was 42 years ago!

    So what? Dijkstra also said eons ago that GOTO was inherently evil. That was a proper response back then to people who resisted the idea of structured programming, and in particular resisted the implications of Böhm-Jacopini's Structured Program Theory.

    But as that principle has become well established, the unrestricted demonization of the GOTO statement yielded some pretty stupid coding guidelines (thou shall not have more than one return.) Pretty stupid as there are cases where a GOTO statement is the right thing to do. Ergo why Donald Knuth and many others had a more relaxed, pragmatic view on the subject.

    By

  47. Re:US programmers too clever to waste time in scho by phantomfive · · Score: 1

    You're high school programming contests weren't nearly the difficulty of an ACM programming contest, sorry.

    --
    "First they came for the slanderers and i said nothing."
  48. Re:US programmers too clever to waste time in scho by AK+Marc · · Score: 1

    I just looked up an example. It was noticably easier than a number I had seen in high school.

    But thanks for presenting your incorrect opinion as fact. Reminds me I'm on Slashdot, where people think their ignorant opinions trump reality.

  49. Re:US programmers too clever to waste time in scho by phantomfive · · Score: 1

    An example, eh?

    --
    "First they came for the slanderers and i said nothing."
  50. Re:US programmers too clever to waste time in scho by AK+Marc · · Score: 1

    An example, as in an actual question from a previous year (2009):
    http://stackoverflow.com/questions/1842587/can-you-answer-this-2009-acm-international-collegiate-programming-contest-finals

    What an actual question from a few years ago doesn't count as a valid example? Whassa matta, proven wrong too often today? I don't have an example from the competitions from 20+ years ago to compare against, so I'm sure you'll invent whatever you want as an excuse for why I'm wrong and you are right. But I was there. I remember them. And I found an actual ACM question for comparison. But an eye witness isn't good enough when it contradicts your uninformed and biased opinion. Right? Again, your personal opinion will trump reality. As I said, standard fare. But it's always fun to play with the deluded.

  51. Re:US programmers too clever to waste time in scho by phantomfive · · Score: 1

    I'm not sure why you think that problem is easy......you can't use the brute force solution, the running time will be too high.

    --
    "First they came for the slanderers and i said nothing."
  52. Re:US programmers too clever to waste time in scho by AK+Marc · · Score: 1

    I never said it was easy. You need to read what you are responding to before you complain. But then again, I've been joking about you being the standard Slashdot whiner, so that would be right in line. Answer for what you think they meant, even if not supported by what they actually say.

  53. Re:US programmers too clever to waste time in scho by phantomfive · · Score: 1

    I seriously doubt you were doing dynamic programming in high school. If you were, props to you bro

    --
    "First they came for the slanderers and i said nothing."
  54. Re:US programmers too clever to waste time in scho by AK+Marc · · Score: 1

    Go look up the #1 public high school in the USA. Depending on the year in the results you find, that's where I went. You assume dynamic programming is required for a solution. Though the CS teacher there was big on recursion, so I'm sure some recursive solution would have presented itself. Not sure if you'd consider that dynamic programming.

  55. Re:US programmers too clever to waste time in scho by phantomfive · · Score: 1

    You assume dynamic programming is required for a solution. Though the CS teacher there was big on recursion, so I'm sure some recursive solution would have presented itself.

    The problem is not recursion, although that might make it easier to write; it's great you learned that in high school since most CS majors don't learn that until their second semester; the problem is that if any sort of straightforward approach is used (like the solutions shown on stackoverflow), the algorithm will end up solving the same subproblems repeatedly, and the number of subproblems will grow factorially as the input size increases. So you need some way to keep track of which sub-problems you've already solved. Dynamic programming is one way of doing that. The most common ecample of dynamic programming is to find the Longest Common Subsequence between two strings, like when you are doing a diff.

    --
    "First they came for the slanderers and i said nothing."
  56. IQ and Challenges by RicardoKAlmeida · · Score: 1

    In the eighties, software was a big challenge for me. In the early nineties as well, as I had to master multiprocessor systems available for the "masses" -- Intel and RISC machines instead of big Mainframes, to support Internet transaction systems. Nowadays, big challenges are elsewhere, that's why bright minds in the US are looking elsewhere. Software is just another tool, something you can outsource to occupy your bright mind with real challenges. It's boring to solve a problem a lot of people can solve. In US, there are bigger challenges to tackle at universities -- a rich, challenging environment. In poorer environments, bright people have less choices. US people are not less smart than they were in the eighties and nineties -- their interests changed, that's all. For the record, I'm Brazilian.

  57. Re:US programmers too clever to waste time in scho by AK+Marc · · Score: 1

    I was studying object oriented programming in 1991 in BASIC. The funny thing about the sample given is that the result was determined by methods that are itteritive, simple, and stupid. Often in the programming competitions, the data sets would be similarly limited, so the solution would be unrelated to the problem being solved. The "answer" is [LARGEST(bi)-SMALLEST(ai)]/(n-1) for all sample data. Yes, the entire "complex" problem is solved for all test data in a single simple statement. There are just a couple minutes for writing LARGEST and SMALLEST (optional, as all data contains one zero), and the bulk of the code will be I/O. No answer could be better, and the question was about optimum. If it was "hard" it would have you number the aircraft in the order they are in the dataset, and output the aircraft number and landing time after the answer. But as written, you can generate an "optimum" case in under a minute, and then write another section to catch the "edge" cases where the data doesn't allow fitting to the best case.

    Not elegant, not easily modfied, doesn't work for all datasets, hard to have someone else understand it (we once had a problem rejected until the programmer got up at a whiteboard and explained it to the judges - yes, you can have a GOTO in basic that GOTOs itself, within a single-line multi-statement for loop - that's what happens when you solve it in your head in PASCAL or FORTRAN and have to code it in BASIC). But those are the types of solutions that would come out in these contests. Rarely was the code anything approaching "good" and they were algorithm tests, where most of the work was re-stating the problem in a different manner.

  58. Re:a disgrace to humanity by tolkienfan · · Score: 1

    You can't do what I do in Haskell.

    And I'd argue that a good programmer can program well in almost any language. I'd probably have to exclude brainfuck.

    Perhaps *you* can't program well in Java.

  59. Re:US programmers too clever to waste time in scho by phantomfive · · Score: 1

    Your solution fails for the case of:

    3
    0 10
    10 15
    1000 1010

    Yours will print out 505, but the answer is 15

    --
    "First they came for the slanderers and i said nothing."
  60. Re:US programmers too clever to waste time in scho by AK+Marc · · Score: 1

    Correct, but that wasn't in the dataset. The "solution" given on that page had every comment giving another dataset that didn't work. Part of the contests is that you must get the correct answer for all the data, but the data is given, so accounting for edge cases not in the data will cause you to lose.

    That and I was deliberately giving a "correct" answer that takes 10 seconds and obviously isn't exhaustive because I thought it funny. The "real" solution I would have come up with would likely have worked for more cases.

  61. Re:US programmers too clever to waste time in scho by phantomfive · · Score: 1

    You don't understand the contest. The data given is the sample data. The true dataset is kept by the judges and is much, much larger

    --
    "First they came for the slanderers and i said nothing."
  62. Re:US programmers too clever to waste time in scho by AK+Marc · · Score: 1

    How many programming contests have you been in? How many wins? You seem to keep lecturing me about contests you have no knowledge of. I bet you are the type to argue with doctors "But I read about something like this on the Internet."

    Most of the contests I've been in, you had to data-enter your own data (type in the "official" data from the printed sheets) for testing, and a few would provide sample data in a file. I'm almost all cases, the sample data was the contest data. The actual run files would be secure, to prevent manipulation of the data (for the ones run by judges, many would just take printouts of all source files involved, and outputs). But you'd "test" against the live data.

  63. Re:US programmers too clever to waste time in scho by phantomfive · · Score: 1

    This is the ACM programming contest, it's not like it's some secret, random contest. They have them every year, the rules aren't secret. I participated in 8 of them, if you must know.

    --
    "First they came for the slanderers and i said nothing."
  64. Re: Anyone surprised? by jimballingall · · Score: 1

    I run a University Program for a US company that specializes in multicore processors (Cavium). We have SW engineers in India like everyone else, but also two large teams in the US, including the previous DEC team of computer architects in Boston. I conduct an annual multicore programming contest; last year's winners were from Pakistan, which might support the theme of this commentary, but we are seeing strongest interest this year from US. Most likely this is due to our recent US outreach - we have been on campus at MIT, CMU, Cornell, Harvard, UW, Stanford, UT, UWash, ...since January. I also work with the IEEE on multicore programming curricula for ongoing education, and we see strong interest there too . My point is the passion and need is here in the US, but it needs to be better supported and understood. By the way, our contest is open to any undergrad in any major in any country, and some profs are considering it for a 1 credit project this Fall. Previous experience in C/C++ or architecture is NOT required. We provide examples, online seminars, sample code, etc. to get rolling http://tinyurl.com/oy75hdd

  65. Re:Indeed by neonKow · · Score: 1

    Not really a fair comparison. ACM top 10 isn't the be-all and end-all of a nation's educational system, but the population of the countries you list don't even add up to that of the USA.
    Population USA: 313.9 million
    Population Germany: 81.8 million
    Population Canada: 34.48 million
    Population Australia: 22.32 million
    Population New Zealand: 4.405 million

    Population of California: 38.04 million
    Population of New York City: 8.245 million

  66. Re:a disgrace to humanity by neonKow · · Score: 1

    Well, if you want to market classes in Scheme, just mention that all the top-teir universities are doing the same thing.