Please create an account to participate in the Slashdot moderation system


Forgot your password?
Programming IT Technology

Google Code Jam 2003 Announced 303

An anonymous reader says "O'Reilly Developer News is reporting details of the newest Google programming contest, Google Code Jam 2003. Prizes range from t-shirts to ten grand and you can use any programming language you want to solve the increasingly challenging problems." Update by J : ... as long as it's Java, C++, C# or VB.NET.
This discussion has been archived. No new comments can be posted.

Google Code Jam 2003 Announced

Comments Filter:
  • Any language? (Score:5, Informative)

    by grub ( 11606 ) <> on Wednesday September 17, 2003 @12:48PM (#6986704) Homepage Journal

    The submitter writes ".. you can use any programming language you want" but Google's page says "Use Java, C++, C# or VB.NET. Pick any of these programming languages to code your solutions. All are acceptable and none is given an advantage."
    Unless I'm parsing this wrong, it sounds like one can't use any language, only 1 of the 4 listed. (It's also odd that C isn't there but some proprietary languages are)
    • Technically, isn't C++ backwards compatible with C? That is, all C programs should compile and work correctly on any C++ compiler. Do compilers actually use the file extension to differentiate? Maybe if you just labeled your code as .cpp, it will all work out.
    • Re:Any language? (Score:5, Informative)

      by Ruds ( 86067 ) on Wednesday September 17, 2003 @12:58PM (#6986828) Homepage
      Google is running this through TopCoder, which started out Java/C++ only and has recently added C# and VB.NET. TopCoder challenges are object-oriented in nature, although in some cases, this is basically a thin veneer over a non-object-oriented problem.

      • Re:Any language? (Score:5, Insightful)

        by Chundra ( 189402 ) on Wednesday September 17, 2003 @02:34PM (#6987711)
        I wonder why python isn't listed...this quote comes right off the front page:

        "Python has been an important part of Google since the beginning, and remains so as the system grows and evolves. Today dozens of Google engineers use Python, and we're looking for more people with skills in this language." said Peter Norvig, director of search quality at Google, Inc.

        VB.NET! Christ!
      • ... the difference between a problem that is Object Oriented in nature as opposed to NotObjectOriented.

        Also, does this contest heavily advantage those who know all 4 languages?

        As far as it goes with me, I can program C, but I get real uncomfortable, real fast, with C++, have never done C#, have done only the most basic Visual Basic (MS Word stuff), and never got JAVA going. For JAVA it's been a problem installing the compiler from Sun -- somehow, it never installed correctly. For the others, it was

    • by SeanTobin ( 138474 ) <> on Wednesday September 17, 2003 @01:03PM (#6986877)
      Time to break out my perl to C converter! You haven't seen obfuscated perl until you've seen it in C!

    • by 955301 ( 209856 ) on Wednesday September 17, 2003 @01:18PM (#6987000) Journal
      Yeah, the limit on programming languages reminds me of The Jerk. No, not my grandfather, but the Steve Martin movie. Specifically, a scene where he is working at a carnival stand:

      Carnival Goer:
      What'd I win?

      Uh, anything in this general area right in here. Anything below the stereo and on this side of the bicentennial glasses. Anything between the ashtrays and the thimble. Anything in this
      three inches right in here in this area. That includes the Chiclets, but not the erasers.
    • I guess it's like Ford and colors for the original Model T. Any color you want as long as it's black. Any programming language as long as it's one of the four.
    • Re:Any language? (Score:3, Informative)

      by W2k ( 540424 )
      With a few exceptions, all valid C code is also valid C++ code. The exceptions are listed in section B.2.2 of The C++ Programming Language (Stroustrup), and most of them concern things that most programmers won't usually come across, or which constitute bad style and are thus best avoided even in C.

      I don't see any reason why C code shouldn't be able to compete if it complies with the C++ specifications - I'd just be C++ but without any C++ features. Unless of course you by C mean C99, in which case there
    • Re:Any language? (Score:3, Informative)

      by jareds ( 100340 )

      Unless I'm parsing this wrong, it sounds like one can't use any language, only 1 of the 4 listed. (It's also odd that C isn't there but some proprietary languages are)

      Just for the record, although you're parsing that sentence correctly, the way TopCoder works is that there are 3 problems per contest, and you may use any of the 4 available languages for each problem, so you could use 3 of the 4 listed if you really wanted to. I would hope it's spelled out correctly somewhere in the official rules, as opp

  • blogs (Score:3, Funny)

    by CGP314 ( 672613 ) <> on Wednesday September 17, 2003 @12:48PM (#6986705) Homepage
    you can use any programming language you want to solve the increasingly challenging problems

    Like how to stop blogs from screwing with google's results? :)

  • All right! (Score:5, Funny)

    by anon* ( 637224 ) <slashdot@baudkarm[ ]om ['a.c' in gap]> on Wednesday September 17, 2003 @12:48PM (#6986707) Journal
    Finally, a chance for me to show what COBOL can really do!
  • C++ only? (Score:5, Interesting)

    by ( 664381 ) * on Wednesday September 17, 2003 @12:49PM (#6986713) Homepage
    If I write C code that compiles under C++ would that be considerd "C++" (for the purpose of said competition . While I can program C++ if its a timed competition C would be faster for me) .
    • Of course you know that C++ is a superset of C.

      would that be considerd "C++"

      That's like saying "We're gonna have a race, you can use bikes.
      Racer #664381: Um can I use a Schwinn since it works like a bike.
      • Re:Not 100% true. (Score:2, Informative)

        by botzi ( 673768 )
        Of course you know that C++ is a superset of C.

        It's quiet easy to write C code that does not compile on C++ compilers(malloc() casts anyone??? etc.), so the answer to this question is more likely to be:
        "Yes, you may write C code and it'll be accepted as long as it compiles on our compiler package.".

  • by RobertB-DC ( 622190 ) * on Wednesday September 17, 2003 @12:49PM (#6986714) Homepage Journal
    This is an interesting way of looking for recruits. An individual interview is one thing -- I've seen some real losers get past that process. Google seems to be looking for a way to entice and reward developers who can use their l33t coding sk1llz in a team environment. It's one thing to be able to write good code -- the ability to work with other great coders is valuable indeed.

    Here's what Google values, from their Job Opportunities [] page:
    What we look for when hiring great people:
    * People with broad knowledge and expertise in many different areas of computer science and mathematics, including distributed systems, operating systems, data mining, information retrieval, machine learning, performance optimization, algorithms, user interface design, statistical inference and information theory, and related areas.
    * People with world-class programming skills.
    * People with excellent communication and organizational skills.
    * People who are passionate about their work and are great colleagues.
    * People who enjoy working in a high-energy, unstructured environment on very small project teams to build amazing products used by millions of people every day.
    * People with diverse interests and skills.
    What intrigues me personally is that this contest takes place in an online collaborative environment. Does this mean that Google is considering opening up to remote working -- as in, I can live in Dallas and "work" in the Googleplex? As much as I'd love to work at a place like Google, there's no way I'm moving to Cali-fall-into-the-ocean-fornia [].

  • Mmm.. (Score:3, Funny)

    by Trolling for Profit ( 686234 ) on Wednesday September 17, 2003 @12:49PM (#6986715) Journal
    Give away your software and ideas for free (or in this case a t-shirt, that's close enough).. and then possibly get a reward afterwards? Sounds a lot like soviet communism with it's quality reward program.
    • Plenty of business models involve a loss-leader, which is what this is, from a personal standpoint.
      I daresay RMS isn't starving; he just isn't shackled with a large company for his effort.
    • It sounds more like professional sports to me. Particularly auto racing where the idea that you use to win today is used by all of your competitors to beat you tomorrow.

      You won't find many auto racers who are communists. The structure inherently attracts rabid individualists and fanatical Libertarians.

      Kinda like computer geeks. Gearhead is just a subcatagory of geek, as is bithead.

      Also, never forget the maxim that the only thing sweeter than money earned is money won.

      People will die trying to win a penn
      • Re:Mmm.. (Score:3, Insightful)

        the only thing sweeter than money earned is money won.

        So true, but let me add to it. Money won from someone else just like you is the purest form of what you describe. For example, winning at blackjack in a casino is fun, but beating people at the poker table is a rush that can't be matched.
    • by lars ( 72 )
      The problems will have model solutions already prepared beforehand for judging purposes. You don't have to give away anything they don't already know in order to solve the problems.

  • TopCoder! (Score:5, Informative)

    by Chromodromic ( 668389 ) on Wednesday September 17, 2003 @12:49PM (#6986719)
    The Google Code Jam is being conducted in conjunction with TopCoder [], the coolest, best implemented regular online coding contest. You can go there and download the Arena applet to get an idea of the format of the contest and to get ready by practicing with sample problems. In fact, that's highly recommended since the applet accommodates a very specific kind of contest.

    Also, it would be wise to participate in a few live TopCoder rounds, which are held weekly, if you have any hope of being competitive.
    • I don't know if they fixed it or not. But I hated it when I beta tested it a while ago. I found it had trouble compiling anything even a hello world application. The fact that you must get use to using TopCoder is a reason not to use it. Besides I am against programming competitions because they encourage speed in programing not not a good planned layout of thought. The primary reason why most of the code out their is crappie is because their is lack of design and everyone trying to write this super op
      • There are many things that make a coder good. Insightful and elegant design are one. But being able to quickly bang out a solution for a self-contained problem quick and dirty style is just as sure a sign of skill, to me at least.
    • Re:TopCoder! (Score:4, Interesting)

      by Thuktun ( 221615 ) on Wednesday September 17, 2003 @01:31PM (#6987102) Homepage Journal
      The only problem is that TopCoder style programming contests select for speed of implementation over quality, efficiency, readability, and maintainability. Worse, since your code is challenged by other coders, the more unreadable and impenetrable your code, the less likely subtle bugs in your code will be detected in the short challenge period.

      Still, it was nice when they were awarding $300 for first place in your room in Division I for contests every week. When they dropped the prize money for weekly matches, there wasn't a compelling reason to spend my time on it.
  • Cheap Labor (Score:5, Funny)

    by inputsprocket ( 585963 ) on Wednesday September 17, 2003 @12:50PM (#6986722)
    When your stuck on how to code something....
    run a competition and let others do the coding for you.

    oh and don't forget to through in a t-shirt or to for all the hard work

    • by CGP314 ( 672613 )
      oh and don't forget to through in a t-shirt or to for all the hard work

      That's more than some coders in the US get :(
    • Re:Cheap Labor (Score:5, Interesting)

      by WIAKywbfatw ( 307557 ) on Wednesday September 17, 2003 @12:59PM (#6986836) Journal
      When your stuck on how to code something....
      run a competition and let others do the coding for you.

      oh and don't forget to through in a t-shirt or to for all the hard work

      And lather, rinse, repeat if you're after some original designs for t-shirts for your website...

      To be honest, I like the idea of this Google competition. I'm not going to be winning it (my programming skills aren't fantastic) but it's a great way of fostering relationships between you and your user base, finding good coders (and potential future employees), getting some good code and/or code ideas and, above all, having a little bit of fun with the community as a whole.

      If all companies were like Google then we'd all be happy as Jay and Silent Bob at a weedfest.
    • Re:Cheap Labor (Score:5, Insightful)

      by MagPulse ( 316 ) on Wednesday September 17, 2003 @12:59PM (#6986839)
      Ha ha. Except:
      1. They pay problem writers to come up with fully tested solutions in all four languages.
      2. These problems are variants of well-known CS problems and distilled to their essence. Real-world problems are 80% special cases.
    • When your stuck on how to code something.... run a competition and let others do the coding for you.

      I actually read the terms and conditions. You're absolutely correct: (vi) licenses to TopCoder and Google rights to all information submitted during the tournament (including rights to source code and other executables),

    • When your stuck on how to code something.... run a competition and let others do the coding for you.

      I saw this in the rules:

      1. Function #26 must be called "CheckForSearchKing(char * HTMLpage)." It must accept a pointer to a long buffer of char.
      2. Function #27 must be called "PageRank(char * HTMLpage)." It also accepts a pointer to a char buffer, as shown. Also, it must call Function #26. Function #27 should return 0 if Function #26 returns true.

  • I assumed everyone knew about the contest already, or I would've submitted the story myself! Argh! Oh well. You can all expect to see sir_haxalot take time off from being an artist for a few minutes, in order to use the force and attempt to gain at least a t-shirt.
  • by TasosF ( 670724 ) on Wednesday September 17, 2003 @12:52PM (#6986739) Homepage
    What you get is a page full of Perl Jam.
  • by Anonymous Coward
    But what are the problems they want solved? It sounds like they want h0xerz/crackers, not real problem solvers/programmers.
  • by Anonymous Coward on Wednesday September 17, 2003 @12:55PM (#6986790)
    Google is looking for engineers with the programming skill to rewrite the world's information infrastructure.

    Yeah, right. As somebody who manages a number of programmers, I know that the kinds of people who win competitions like this (such as topcoder) simply won't make very good employees. The best programmers I work with are team players who know how to communicate, document and manage working relationships. The high-intensity macho time-critical programming that these competitions fosters is usually counterproductive in a business environment.

    - W G
    • by lars ( 72 ) on Wednesday September 17, 2003 @01:32PM (#6987118)
      [i]The best programmers I work with are team players who know how to communicate, document and manage working relationships.[/i]

      Wouldn't you know it, most of the highly ranked TopCoders I've met excel in all of the areas you mention. Just because someone is smart and skilled at one thing doesn't mean they're deficient in other areas. Usually there's quite a strong correlation.

      [i]The high-intensity macho time-critical programming that these competitions fosters is usually counterproductive in a business environment.[/i]

      TopCoder emphasizes (or attempts to) problem solving skills, which tend to be universally applicable.

    • by geekoid ( 135745 ) <dadinportland&yahoo,com> on Wednesday September 17, 2003 @01:44PM (#6987220) Homepage Journal
      Gee, whatever you do, don't do the tasks neccessary to see that communication happens. I mean you would really want to manage now, would you?

      Mos of the top programmers I have worked with, hateed meetings, came to work around 9-10 oclock, worked till 6-7 oclock and were very terse when documanting.
      However, I trusted there skills, and respected there experience, and saw to it that they had direction. These guys kicked out some wicked code that blew people away.
      When I was managing, I took the intiative to see that what was needed to be communicated, was communicated.

  • Traveling? (Score:5, Informative)

    by -Grover ( 105474 ) on Wednesday September 17, 2003 @12:56PM (#6986807)

    Sounds like to win any money you have to travel, so keep that in mind when you sign up.

    "The top 25 performers in Round 2 will be invited to compete for cash prizes in the Championship Round onsite at the Googleplex (Mountain View, CA) on November 14th."

    They are floating the bill though, according to the terms []

    " Google will provide travel accommodations for each finalist to attend the Championship Round. In addition, Google will provide overnight accommodations and all travel arrangements to and from the airport, as well as to and from Google's headquarters. All other expenses are the responsibility of the contestant. "
  • by Washizu ( 220337 ) <> on Wednesday September 17, 2003 @12:56PM (#6986812) Homepage
    Friday, October 17 8:00 AM
    Monday, October 20 8:00 AM
    Friday, November 14 4:00 PM

    Who with a job could participate?

  • by FuzzyBad-Mofo ( 184327 ) <fuzzybad AT gmail DOT com> on Wednesday September 17, 2003 @01:00PM (#6986849)

    In related news, the American Art Foundry(*) has announced an open art contest. Artists are free to use whatever medium they choose, as long as it's oil on canvas.

    * Not a real organization

  • Free Money (Score:2, Funny)

    by CGP314 ( 672613 )
    Prizes range from t-shirts to ten grand and you can use any programming language you want to solve the increasingly challenging problems." Update by J: ... as long as it's Java, C++, C# or VB.NET.

    You can withdraw as much money from my bank account as you want!*

    * Must be a deposit of at least $1.
  • For charity ! (Score:3, Informative)

    by Elie De Brauwer ( 656349 ) <> on Wednesday September 17, 2003 @01:01PM (#6986866) Homepage
    As stated in the conditions: ( gle&d2=google_rules_overview) Participants who do not meet the citizenship requirements to win prize money are still eligible to compete. However these individuals will be required to donate any cash prizes to charity. Participants will choose a charity to receive their winnings from the TopCoder approved list of charities. A prize-winning participant may request a new charity be added to the list, however it shall remain in Google's sole discretion to add that charity after reviewing the proposed charity's credentials. It sucks to be belgian :( while UK and irish residents may enter, hasn't anybody heard of Europe over there ? I wonder what the topcoder approved charity list looks like.
  • by Mostly a lurker ( 634878 ) on Wednesday September 17, 2003 @01:02PM (#6986873)
    O'Reilly Developer News is reporting details of the newest Google programming contest

    This must be some new meaning of the word details with which I an unfamiliar. The page certainly contains details in the normal sense. The O'Reilly page contains what I would call a brief summary. Interesting concept though.

  • by Agave ( 2539 ) on Wednesday September 17, 2003 @01:07PM (#6986909) Homepage
    the way to win a TopCoder competition is to not only be analytical enough to figure out the solution but also to able to type quickly and accurately as well as to take shortcuts like using short variable names. I certainly wouldn't want any 'TopCode' in a production system.

    I was disappointed with my experience in the TopCoder competition at Java One because even on day three, when I was comfortable with the TopCoder IDE, knew that speed was king, and I knew the solution right away I was still beaten out by over two minutes. I mean, I knew the solution, typed it in, compiled first time, ran a test case, passed, and submitted the solution. Damn near perfect in my mind but I was very low man on the totem pole time-wise (~4min vs ~2min).

    I guess learning to touch type by MUDing just doesn't cut it :)

    • Is it possible to have code written ahead of time? I mean, it says "ideas must be your own." But if you've put together a large library of useful functions that you've coded yourself (fourier transform; heap sort; Wheeler-Burrows transform; entropic compression; and so on), could you grab those code sections, and throw them in?
      • Yes, but it's highly unlikely that such code would be useful. The maximum size of input in TopCoder contests is quite small (a 50x50 array at most). Something like Burrows-Wheeler isn't going to be of much use for that kind of input.
  • by leibnizme ( 264472 ) on Wednesday September 17, 2003 @01:08PM (#6986919)
    Lest we forget, TopCoder is powering this contest. Here's an e-mail I received describing everything in more detail:


    Google is pleased to announce the Google Code Jam 2003 competition, powered by TopCoder. Compete against the top programmers in the world for a share of $25,000 in cash and enormous bragging rights. Google is growing and actively seeking top engineering talent to help solve some mind-bending programming challenges on a global scale.

    The competition will consist of a two-week registration period from October 1st to the 15th. All TopCoder members who intend to compete in this competition must register for the event through a new registration path that has been set up exclusively for the tournament.

    All registrants must then participate in the Qualification Round. The Qualification Round will be open from Friday, October 17th at 8:00 AM EDT to Monday, October 20th at 8:00 AM EDT. During this 72-hour period, a competitor must complete one randomly generated problem set. All competitors will be given a score for their performance on that one problem set.

    The top 500 participants from the Qualification Round will advance to the first online round to be held at 9:00 PM EDT on October 24th. All competitors in this round will be sent a t-shirt commemorating the Google Code Jam 2003. The top 250 scorers from Round 1 will advance to Round 2, which will be held at 9:00 PM EST on October 27th.

    The top 25 scorers in Round 2 will win an all expense paid trip to the Googleplex (Google's corporate headquarters) in Mountain View, CA. Here, they will compete in-person in the Championship Round for their share of $25,000 on Friday, November 14th at 4:00 PM EST (1:00 PM PST).

    The grand-prize winner will be awarded $10,000. Second, third and fourth place winners will be awarded $5,000, $3,500 and $1,250, respectively. The remaining finalists in the Championship Round will each receive $250. In order to receive a cash prize, a competitor must be at least eighteen years of age and a lawful permanent resident of one of the nine countries approved for cash prizes. All other cash prize winners will choose a charity to receive their prize.

    Google's engineering organization is pleased to sponsor this contest and is looking forward to meeting the top coders. Participating in this contest propels you to the front of the line for consideration for open positions in our engineering group. You are encouraged to submit your resume for immediate consideration for open positions at any time during this competition. Please visit for more information. And remember to register starting on October 1st!

    Best of luck to you in the Arena!

    The Google Team

  • And next... (Score:3, Funny)

    by K-Man ( 4117 ) on Wednesday September 17, 2003 @01:12PM (#6986944)
    Google Temptation Island!

  • by orthogonal ( 588627 ) on Wednesday September 17, 2003 @01:13PM (#6986952) Journal
    Programming with a time limit is not a great indication of how likely someone is to writes= robust, durable, re-usable code.

    My best code usually results from refactoring, and is made up of several small classes made up of small functions, where each function does one thing and does it well, and each class has a well-defined role, usually in collaboration with other classes.

    This is the result of crafting and thinking, not a result of typing as fast as I can, trying for a quick and dirty solution to one specific problem.

    • But it can be.
      I've adopted the habit to always search for a rapid solution of a problem and then once I have a functional code I start to optimize,build, rebuild and defragment it in smaller modules.
      I Have a friend who at the same time is uncapable of coding anything at all before writing down some project design notes on paper.
      You'll be surprised how often at the end we arrive at the same solution(at least we're surprised;o))).
      So,back on your point, fast coding != robust, durable, re-usable code, but I
    • I am glad you understand some of most basic and well known ideas of software engineering. But I would have to disagree. I think if someone has the problem solving skills and precision of thought (as one member so nicely put it) to do well at TopCoder, they certainly have the skills to write robust, durable, and re-usable code. I would argue that such concepts are in fact fairly trivial relative to the skills TC emphasizes.
  • by Serapth ( 643581 )
    To watch the live telecast on ESPN!

    Hey... if they will televise spelling bee's, they damned well better televise a coding contest!

    Hmmmm.... ok... im a geek, and even I would find that dull as hell.
    • by Jacer ( 574383 )
      What are you talking about? That would be the event of the....century! Here goes Mr. X, finishing out what looks to be line 100,000, and oh my, what's this? HE'S GOING TO COMPILE! Error, error error, oh the humanity, let's take a look at how Mr. Z is doing. Mr Z appears to have written only 100 lines, but it does compile, and What's this?!?!? It's fully functional! Mr. Z, here's your prize, one XXXL T-shirt. Tune in next week for Linus vs. Bill on the Professional Coder Network. Will be forced to w
      • Reminds me of the classic:

        Jesus and Satan have a discussion as to who is the better computer programmer. This goes on for a few hours until they come to an agreement to hold a contest, with God as the judge.

        They set themselves before their computers and begin. They type furiously, lines of code streaming up the screen, for several hours straight. Seconds before the end of the competition, a bolt of lightning strikes, taking out the electricity. Moments later, the power is restored and God announces that

  • by autopr0n ( 534291 ) on Wednesday September 17, 2003 @01:23PM (#6987037) Homepage Journal
    I donno, maybe the problems will be more 'google specific' but it sounds like a regular TopCoder compo. I'm glad TC is able to find some sponsors, but this isn't really all that exciting.

    Anyone remember when TopCoder gave out TONS of money? They would give out cash to 3/8th of the participants like 3x as week. It rocked. And it was distributed to each 'room' so you only had to compete against 8 other people (so in order to get cash you only needed to beat 5 people). Despite this, I only placed once :P. They accidentally sent me two checks though.

    The craziest thing was that they started this after the dot-com crash, so everyone thought they were basically insane, but we were happy to take free money :).

    Anyway I might play this time around. Of course, you'll need to do better then n-249, rather then 3 but it still might be fun :)

    TC used to allow C++ though, I wonder why they gave up on that.
  • by Enrico Pulatzo ( 536675 ) on Wednesday September 17, 2003 @01:28PM (#6987075)
    you also get a mask, to protect your anonymity ;) Just kidding!
  • by phamlen ( 304054 ) <> on Wednesday September 17, 2003 @01:31PM (#6987104) Homepage
    As virtually every good developer can attest, the first thing you do when stuck with a hard computer program is....

    ...Google for the answer!

    I wonder if that violates the spirit of the competition?

  • So in other words, use an OO language or use complete and utter shit (*cough* VB *cough*).
  • I think that this is a neat idea - Of course, nobody here wanted to discuss the pros and cons of the contest, they just wanted to prove to the rest of the world that they could sling senseless esoterica and criticize Microsoft

    Anyhow, all bull$hit aside concerning Lisp, Python, Haskell, Modula-2, Ada, COBOL, ALGOL, FORTRAN, and whatever other nonesense I saw, I'd like to see some of the socially challenged here at /. put their money where their hacking chops are (assuming that their mom's will let them sta

  • TopCoder stuff is boring ... It consists of a bunch of coding exercises much like you are subjected to in school.

In less than a century, computers will be making substantial progress on ... the overriding problem of war and peace. -- James Slagle