Google Code Jam 2011 is coming up, and registration has just opened. I’ve started practicing for it this week - you can find all my code on github, as usual - and already reached two major conclusions.
First off, I’m in GCJ for the fun - yet another reason to stay up late and hack into the night. Being realistic though, GCJ is a professional programming competition. The top coders are world-class hackers which train for these competitions year round (HN had a nice thread on the subject). It’s always important to know what your goal is - and my first aim is to successfully complete all 3 problems in the qualification round. After that, I’ll reevaluate my strategy towards Round 1.
Second, if I’m in it for the fun, maybe try out a new language? Python is my go-to language for anything of this nature. When I need to hack up something quickly, Python is a no-brainer. I also find much of Python’s constructs very helpful in solving competitive programming problems: features like list comprehensions, regular expressions, native (arbitrarily-long) big integers and generator functions are all used frequently. However, I’ve been toying with Clojure for a while now, and I might use GCJ as a platform to work on my Clojure skills.
In any case - it’s going to be tons of fun. So do yourself a favor and sign up.