I was a very active TopCoder participant in years past, but I haven't had time to participate for the last year or so. Even when I was active, I never was able to make it to JavaOne and participate in the JavaOne Coding Challenge.
For those who have never tried it, the idea behind the topcoder competitions is that you receive a set up simple programming challenges that have a set point value. Your work on a solution and when you think you have it, you submit it. Your solution is assigned a percentage of the maximum point value depending on how fast you solve the problem. In a normal tournament there are 3 problems of varying difficulty and point values. At JavaOne you have a single 250 point problem, which is the easiest level. There's never anything tricky to these problems so it's really a contest about how fast you can parse the problem statement and type in a quick solution. None of problems I saw would require more than 15-20 lines of code.
Before you submit your solution, you have a small set of unit tests you can run to verify your solution. On the tricky problems you may need to add your own test cases to check edge cases, but for the easy problems at JavaOne you can be pretty sure that if you pass the test cases they provide that your solution will stand up to the larger set of test cases they run after you submit your solution. If you pass all the tests, you get your points. If you fail any of the tests, you get no points. In the real tournaments there is also a challenge phase where you can try to poke holes in other people's solutions for added points, but that's not a part of the contest here.
I didn't have free time to compete until thursday, but I ran over to jump on a machine as soon as I could. The arena software hasn't changed much visually over the year, so I felt mostly at home except they limited your choice of languages and editors. Obviously they want to keep it to Java at JavaOne, but without my emacs key bindings I was at a loss. To make things worse, all the machines used windows style key bindings, so cut and paste was ctrl-c/ctr-v instead of cmd-c/cmd-v. It was very disorienting, but the problems are so short that it really didn't hurt that much.
My tuesday solution wasn't that sharp. I was in the top 10 for the day, but that's way too far out to be interesting. I was just to slow getting back into my topcoder groove, but by wednesday I did a lot better. I ended up in 3rd for my problem set, which put me one place out of competing for the daily prize. That was very disappointing, but I'm not sure that I could expect much more without a little practice before hand. If I make it to JavaOne next year, I'll definitely brush up with a tournament or two beforehand to make sure I'm ready.
Actually, I might do that even sooner. I just noticed that topcoder announced the return of cash prizes for tournaments. I think I may just get back into it.