Geek Olympics Code for Gold 243
Haydn Fenton writes "Wired has a recent article on the16th annual IOI (that's International Olympiad in Informatics), taking place in Athens from Sept 11th to Sept 18th. The 304 programmers from 80 countries will be competing in 7 marathon programming sessions to determine the world's fastest coder. The computers are being supplied by Altec and contestants will have a choice of using either Windows XP or RedHat 9.0. More information can be found on the IOI Website."
and in other news.. (Score:4, Informative)
in athens.
Re:Why RH9 ? (Score:2, Informative)
Because default install isn't enough (Score:4, Informative)
Here's what my buddies and coworkers complain about:
well.. (Score:4, Informative)
Not Olympics (Score:3, Informative)
Re:No MacOS X? (Score:2, Informative)
Designing GUI apps with Xcode is another story. While it's easier than writing oldschool classic mac gui apps, Apple's Cocoa (NeXT) API isn't much fun to work with. As you pointed out, it's certainly no Qt or GTK. I would put it on par with Microsoft garbage for fun/ease-of-use.
Historically speaking, the Cocoa API, Obj-C, and Xcode itself all come from NeXT. These were nice tools back in the NeXT days, but I honestly think Apple made a step backwards as they updated/enhanced them for Mac OS X. They're not _bad_, they're just not all that great.
Welcome to computing in 2004, everything's a tradeoff, moreso than ever before.
fastest coder??? (Score:3, Informative)
I suck at coding fast, type with few fingers, and pause all the time to mentally execute the code. Got gold in 1991
Don't forget ICFP (Score:3, Informative)
All well and good, but... (Score:2, Informative)
Re:Great! (Score:2, Informative)
Re:Yey Baby! (Score:3, Informative)
Most of the female geeks I've met haven't looked much better than their stereotypical male counterparts.
Hurrah! Yet another opportunity to post a gratuitous link to the gorgeous ubergeekbabe Ceren Ercen [spilth.org]. She turns my y-fronts into y-nots!
Re:if you win... (Score:2, Informative)
This was one of the events that defined my current opinion that good coders can and do code well in any language.
And while the -top- guys probably could do your data strucutres homework, most participants (like myself) had no formal algorithms and data structures training. Looking back on my solutions, there's things I recognize as mutated forms of Dijkstra's algorithm, and linked lists, and trees, that I had invented myself for the problem at hand. Knowing the general form is much more efficient, but I can't help think that formal programming training has really cramped my creativity
Some Insider Thoughts (Score:5, Informative)
In fact I've found that the best strategy is to just turn off the monitor altogether and think about the problems for a while. Your most useful tools in the IOI are the pencil and pad of paper they give you.
The ACM programming contest is sort of similar to the IOI in that you have similar time limits and similar amounts of problems per person (8-10 problems for a 3-person team, with 5 hours). However, it's a lot more frantic since you're fighting for terminal time, whereas in the IOI you can take things slowly or run detailed tests. TopCoder (the other big programming contest) is also more speed- and debugging-intensive, although problem solving skills can help a lot if you're able to start with the Hard problem every time for instance.
Re:why rh and winxp (Score:2, Informative)
Re:Excellent contest for employers... (Score:4, Informative)
The competition itself feels very non-competitive. Most participants are trying to win by performing their best, not by beating everyone else (if you catch my meaning). Outside of the actual coding sessions, everyone socializes (really!), swaps ideas and knowledge, and discusses the solutions that were used in the previous sessions. I saw people get together the next day, pool their knowledge, and come up with a better solution -- this is outside the competition, for the sheer joy of solving the problem.
The IOI does not test teamwork and communication, either positively or negatively. Anyone who has attended an IOI (regardless of whether they won a medal) deserves your attention as an employer, because it's a safe bet that they are a -very- good programmer. You still have to apply all your normal filters (is this guy a jackass, is he a slacker, or is he good for the company), but from my experience at the competition I'd say there's more contestants that would be an asset than a liability.
Re:Code fast or Fast Code? (Score:5, Informative)
For grading solutions, the only criteria are program correctness and efficiency. To do this, a judge presents the contestant's solutions for each problem with a set of test input cases. For every test case in which the contestant's solution gives the correct output under the allowed program running time, the contestant receives a fixed number of points.
As the test cases vary in their size/difficulty, they allow the judge to evaluate both program correctness and efficiency (only the most efficient programs will be able to solve all the test input cases given by the judge for a particular problem). In some recent IOIs, contestants are given an optimization problem to solve, and a contestant's program is graded based on the optimality of their generated solutions as compared to those solutions generated by programs of other contestants.
In none of these cases is grading ever based on the length of the code or coding speed (unlike the ACM or more recent TopCoder contests). Thus, the IOI is primarily an algorithm design contest rather than a coding competition.
Re:All well and good, but... (Score:2, Informative)
Waterloo programming competition (Score:4, Informative)
Re:No MacOS X? (Score:3, Informative)
Specifically, Apple's belief is that the user should always be in control, not the application or computer, so applications always run within windows that the user knows that he can control, not (except for videogames and media players, and even then only under user control) taking over the full screen. Under MacOS, maximizing a window makes it as large as it needs to be to display the window's contents without taking over more than it needs of the screen, and always leaves the user able to control the window position and size.
Under Windows, maximizing a window always takes over the full screen, obscuring everything else, locking the resize controls, etc.
USACO (Score:5, Informative)
If you're not an American student, USACO is probably still worth checking out, as it permits all pre-university students to compete (although only Americans can be considered for the team), and anybody in the world can enter as an observer. In fact, the vast majority of USACO participants are not American.
USACO is also working on making contest divisions that are more friendly to beginners, if you're worried about difficulty.
Re:Yey Baby! (Score:4, Informative)
Nowadays, you get a huge flap over a handful of naked Romanian gymnasts.
http://www.google.com/search?sourceid=mozclient&s