Slashdot Mirror


Google Code Jam 2004

cymen writes "Google's Code Jam 2004 is open for registration at TopCoder.com. Slashdot reported on the 2003 winner and Google has a Code Jam 2003 summary. Grab some caffeine and get hacking!"

30 of 209 comments (clear)

  1. Google - what a great company by Slashbot+Hive-Mind · · Score: 5, Insightful

    $10,000 for the winner, but the real prize is recognition amoung your peers. And it will help open source as well.

    --

    --
    We are the collective Slashbot HiveMind
    1. Re:Google - what a great company by strictfoo · · Score: 3, Informative

      How does a competition which mandates the use of proprietary languages

      From Google: Use Java, C++, C# or VB.NET

      C++ is proprietary?

      --
      I've just signed legislation that'll outlaw Russia forever. We'll begin bombing in five minutes.
    2. Re:Google - what a great company by r.jimenezz · · Score: 4, Interesting
      And it will help open source as well.

      I thought the kind of exercises used in these competitions were rather contrived and "hard" computer science problems... I am not sure the concepts developed could be easily applied to, say, developing a better desktop or interoperating better with proprietary applications/file formats.

      However some of the FOSS community best hackers could register and donate any prizes they net to their projects ;)

      --
      The revolution will not be televised.
  2. I think I speak for all of us when I say by PatrickThomson · · Score: 5, Funny

    Mmm... Jam...

    --
    I am one of many. My idea is not unique, nor do I expect my voice alone to sway you. I speak in a chorus of opinion.
  3. Jimmy! by mfh · · Score: 5, Interesting

    There was an interesting comment and rebuttal in the 2003 winners article on Slashdot that basically stated Google was above the other big corporations out to make a buck, because Google makes you feel good for donating time to their cause. Okay that was 2003. My question is that now Google has gone public, has the mood change very much? I still have a good feeling about them, and I use their services every day, including the search engine (GIS, web search) and Gmail. I'm just wondering if coders feel that $10k is enough money now that the profits have grown so much. I could see them offering $100k to the winner without batting an eye. Are they awarding enough to first place?

    FTA: During the Challenge Phase, competitors view each other's code and try to "break'" that code by passing test cases through the submitted code, with the hope that the results are not satisfied by the software written. Breaking another developer's code is the most direct form of competition for a programmer. In this phase, points are awarded for successful challenges and deducted for unsuccessful challenges.

    To me, it's more important to measure the potential of a programmer, more than the experience of the programmer. Creating new ideas and systems does not require experience alone -- it requires a great deal of potential. Simply breaking and fixing code in a realtime setting is good for the day to day stuff (and that is valuable for Google), but when a customer or boss asks to you build something new and difficult, many experienced programmers answer with, "that can't be done" when less experienced programmers will try to do it, with limited success.

    Does anyone know if Jimmy Mardell was hired by Google?

    --
    The dangers of knowledge trigger emotional distress in human beings.
    1. Re:Jimmy! by Quixote · · Score: 5, Informative

      Google Codejam is a programming contest, and not a contest to develop a neat application for Google. The problems in the CodeJam are more like puzzles. You are confusing this with the other contest that Google had (the URL for which escapes me) where they gave 10K for the best use of Google.

    2. Re:Jimmy! by Brian+Quinlan · · Score: 5, Insightful

      To me, it's more important to measure the potential of a programmer, more than the experience of the programmer. Creating new ideas and systems does not require experience alone -- it requires a great deal of potential. Simply breaking and fixing code in a realtime setting is good for the day to day stuff (and that is valuable for Google), but when a customer or boss asks to you build something new and difficult, many experienced programmers answer with, "that can't be done" when less experienced programmers will try to do it, with limited success.

      I did the Google Code Jam last year and found that they required a lot more than basic coding skills.

      One question involved analysing sequences of resource lock and unlocks, represented by upper- and lowercase characters in strings e.g. "ABba", "BAba" and "CADadBbc". Given such strings, you had to write a program to identify potential deadlock conditions e.g. the first two strings can deadlock at position 1 because the first string will hold a lock for A while waiting for B and the second string will hold a lock for B while waiting for A. Of course the real tests were more difficult than this. I think that less than 10 people out of 250 got this one.

      Another question involved graph searching but with the cost of node traversal changing with time according to a pseudorandom algorithm. My solution was only twenty or thirty lines of code but it took a while to think how to do a time-based graph search.

      The challenge phase is fairly challenging (excuse the pun) as well because you only have thirty minutes to make all of your challenges and you lose points if you are incorrect i.e. you claim that a certain valid input combination will cause the program to fail and it doesn't. Thirty minutes is not a lot of time to attack the 30 potentially flawed solutions that you are looking at. You have to pick a set of likely flaws (based on your own design) and quickly scan each set of code for it. Then, when you find a likely candidate, you have to read it in detail to make sure that you aren't wrong.

      My point is that the Google Code Jam is for more than experienced programmers who can quickly bash out simple algorithms - you have to be able to devise novel algorithms under time pressure and devise strategies based on the psycology of your fellow coders

  4. Why not... by StevenHenderson · · Score: 5, Interesting

    The 500 participants in Round 1 will receive a "Google Code Jam 2004, Powered by TopCoder" t-shirt. The top five scorers in the Championship Round will receive the following cash prizes

    Why don't they offer something like a job interview for those old enough to take it? Or even a job for the winner (with restrictions, of course)? Imagine how many people would rather work for Google than have the cash prize.

    1. Re:Why not... by upside · · Score: 5, Interesting

      They seem to imply something like what you suggest with "You might win some cash. You might wind up changing the world at Google yourself"

      --
      I'm sorry if I haven't offended anyone
  5. oh great by KingPunk · · Score: 3, Insightful

    heh. thats all we need, people who can brag about how fast they can code.
    only problem, when coding in speed, many people make more errors
    its a proven fact that if you think through your objective 1st, and take a decent ammount of time doing so, you're more efficent.
    in fact, i believe it was in the mid-70s that the us govt, thought about increasing the work day from 8hours/day x 5days, to 10hours/day x 4 days to make it more productive for workers.

    1. Re:oh great by attam · · Score: 5, Insightful

      have you ever done a topcoder competition? it's about speed AND accuracy. sure the fastest person gets the most points, but a) if your code doesn't pass their system tests you get ZERO points and b) other people can look at your code, try to find faults and challenge it. if they challenge you and your stuff breaks (takes more than allotted amount of time, gets a corner case wrong etc) they get bonus points and you lost your points. i think this is a pretty neat system, and i dont think it's advocates bad practices. remember, these problems are designed to be solved quickly.

    2. Re:oh great by shmert · · Score: 3, Funny

      I tried topCoder for a while. Seems that writing obfuscated code is actually an advantage, since people challenging it will be intimidated by its complexity, and reluctant to challenge it. Possible mistakes are buried in junk.

      Somewhat unrelated, but one of the funnier rounds I saw was for a problem which had a small possible set of results. I don't remember the specifics, but someone posted the following code, baiting someone to challenge the result:

      public class CorrectDoor {
      public int whichDoor(String[] args) {
      return (int) (Math.random() * 10);
      // Do you feel lucky, punk?
      // Go ahead, then, challenge
      }
      }

      --
      You drank my drink, you drunk!
  6. In case of slashdotting by chris_eineke · · Score: 4, Funny
    --
    "All you have to do is be fragile and grateful. So stay the underdog." Chuck Palahniuk, Choke
  7. Caffeine by Threni · · Score: 4, Interesting

    Why would I want to `grab some caffeine`? Surely a good nights sleep is more conducive to concentration?

  8. Yearh... by beaviz · · Score: 3, Funny

    Lets give them a Slashdot traffic jam!

  9. Help me win by nearlygod · · Score: 4, Funny

    I'm offering $2,500 to anyone who can give my a idea that goes on to win. I am also offering $2,500 to anyone who can impliment said idea so that it results in winning the contest. Any takers?

    --
    The Tools Of Ignorance wanna be a tool?
    1. Re:Help me win by attam · · Score: 4, Funny

      undisputable proof that bill gates does read /.

  10. No Perl? by CaptainBaz · · Score: 5, Interesting
    Use Java, C++, C# or VB.NET.

    No Perl?

    No Python?

    No ("cool" hacker language of the day)?

    How many real geeks are they going to attract?

    1. Re:No Perl? by Anonymous Coward · · Score: 5, Informative

      It is because those are the languages supported by TopCoder, which runs the coding challenges for many different corporate sponsors. Google's tournament just happens to be one of the higher-profile ones out there.

    2. Re:No Perl? by mondoterrifico · · Score: 3, Interesting

      How many real geeks are they going to attract?
      Thanks for the laugh. I didn't realize you people still existed. This isn't highschool where everyone "cool" dresses in black thinking they are the special ones.

    3. Re:No Perl? by lachlan76 · · Score: 5, Funny

      with VB6, which was a steaming pile of crap

      VB6 has helped me quite a lot - NOTHING else has motivated me to learn C++ like VB6. *NOTHING*

    4. Re:No Perl? by Peter+Cooper · · Score: 3, Interesting

      So you're saying that Google isn't full of 'real geeks'? I'd disagree, since it's well known they use Python and Perl in house.

      Furthermore, languages like Python and Perl are far better known for doing Google-esque tasks than all of the languages in that list except C++.

      There are a lot of insanely great Python and Perl programmers out there who'd need to do a few months' hard study of those other languages to be able to get up with there with the best in, say, C#.. and then find that they still need to use their old languages for all their regular work anyway.

      Let's face it, this contest isn't designed for the best of the best to enter, it's designed for the best in C++, C#, VB.NET, and Java, which is a different thing entirely.

    5. Re:No Perl? by Peter+Cooper · · Score: 3, Insightful

      Perhaps they're not looking for people with true creativity or passion, because those people are already working on their own projects.

      What they're looking for are typical Java, C#, and VB.NET (I'm excluding C++, as it's a catch-all) programmers who might be excellent coders, but typically lack originality and need to be spoon-fed with problems which they can then solve with some rapidly produced code.

      The true masters out there aren't spoon-fed problems; they find the problems and then they solve them independently of the programming language. Google are looking for code grunts to do maintenance work. They already have the 'big minds' in the form of the many PhDs on their staff.

  11. So, will they take the winning app and block it? by mbourgon · · Score: 3, Insightful

    I can see it now - something like the GoogleMail FS comes out of it, only to get blocked like the notifiers are.

    --
    "Sometimes a woman is a kind of religion, she can save your soul & set you free from all your sins" - Bad Examples
  12. Re:Quebecians by Zardoz44 · · Score: 4, Informative
    I can't give you the details why, off the top of my head, but this is a standard rule for most contests in Canada or North America. There are special lottery rules in Quebec. It's been this way for as long as I care to remember.

    What those rules are, I don't know. I could look, but I don't really care.

  13. Re:Quebecians by mrtroy · · Score: 3, Informative

    I believe in Quebec contests have to have equal chances of everyone winning, with no purchase required. So, you cannot give a prize to whoever actually wins the contest.

    --
    [I can picture a world without war, without hate. I can picture us attacking that world, because they'd never expect it]
  14. Challenge #1: Re-write the interface by Tarwn · · Score: 4, Informative

    yep, thefirst challenge will be to rewrite the TopCoder interface to convince it that it does not need 100% of the CPU...that 5-10 second pauses while your typing code should NOT occur...that in a timed competition it is not reasonable to make someone go back and retype something 5 lines earlier simplybecause the interface froze up...

    I mean crashes are on thing, you would expect the connection to get lost occasionally (try every time I have tried to do a practice problem), but c'mon, who hosts a coding competition with an interface that idles at 100% CPU usage?

    -T

    --
    Whee signature.
  15. Chickens won't even allow Jython by Baldrson · · Score: 3, Interesting

    If you aren't going to allow any of the major dynamically typed langauges like Python or Perl or even Jython (if you're really stuck on those libs), then isn't it an admission that Paul Graham is right and that Google's programming contest is simply an example of subgreatness?

  16. Re:2003 Summary by Anonymous Coward · · Score: 3, Funny
    Where is the 2003 summary at the summary link? I can't find it.

    You can't find a web page for a competition sponsored by google?

    Hmm, I wish someone would invent a way to search the web...

    Sorry, but you have been disqualified from the competition.

  17. Why is this a "programming" challange? by clambake · · Score: 3, Insightful

    I read through the various sample problems, and I see nothing at all resembling a "programming challenge". Sure there are algorithms that need to be written, but it's just that, algorithms and logic. Things you can write down on a sheet of paper in long hand. The only reason programming is involved in any way, shape, or form is because it's an easy way to test people's algorithms, not becuase it's a fundamental part of this "challenge".

    I offer that a mathematician who has never in his life even SEEN or HEARD of a computer could solve these problems, all of them, without a line of code. How then can this be considered a "programming" challenge?

    A REAL programming challenge would deal with the real problems that programmers face: memory leaks, error correction, fault tolerance, user interface design, maintainability, speed, scalability, efficient object model design, database schema design, etc.

    It's unfortunate that people look at these contests and think, whoah, that dude must be some hot shit programmer to be able to solve that! But really, he could be a crap programmer (hell they offer VB.NET for gosh sakes!) and just took a whole lot of logic and calculus. That doesn't mean if you hire him he'll do a damn bit of good for your company. It doesn't mean that any project he works on will be in any way maintainable. In fact, more likely than not, any code he writes will be only understandable by him and will turn into a taboo "don't touch it becuase it'll break if you sneeze" mess that costs endless amounts of pain and money.

    I wish for once I saw someone have the intelligence to put out a REAL *programming* challange. One that requires you to think about entire systems, about design and IMPLICATIONS of design, about the subtle balance between speed and stability, about the umpteen million things that divides the '1337 h4X0r who is brilliant but considers random crashes to be expected from the professional and vastly underappreciated programmer who's work is so rock solid that he doesn't need a pager for the weekends. THOSE are the people who should be getting the props.