Geek Olympics Code for Gold
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."
Just don't make them play beach volleyball..
*shudder*
Do the female Geeks get to wear those hot outfits like the Olympic Vollyball teams???
__________ Leave me alone I'm compiling a RPG II program on my S/36...Thanks to metamucil I'm a Regular Meta Moderator
How sweet would it be to have cheerleaders for this kind of thing?
A programming contest that doesn't include MacOS X? Crazy! All of the best engineers I know have been moving to MacOS X as their native platform ever since MacOS X 10.2. It lets you use all those wonderful open source tools, and still have a nice friendly GUI, and work on a beautiful laptop, all at once. It's a thing of beauty.
And Apple's development tools rock!
Enable 3D printed prosthetics!
With a newer distro, the contestants would get newer versions of the tools (like Eclipse, Emacs, etc.).
I'm not criticizing; I'm just wondering.
-- I like my women like I like my beer: smooth, and not too gassy.
Personally, I think fast code is more important than coding fast. But that's because I work in the real-time media industry..
www.rexguo.com - Technologist + Designer
the paraolympics are opening on 17th.
in athens.
world was created 5 seconds before this post as it is.
What could be better than winning a gold in the Geek Olympics?
A> Not being a fucking geek I'd warrant.
Can you do my homework in c++ data structures????
===== "Every head is a different world so don't invade mine you FREAK!" smartSAGA said
TFA states the programs will be automatically scored on characteristics including 'elegance'. How can one program judge the elegance of another?
Yep, I never spell check.
More incorrect spellings can be found he
Engineering is the art of compromise.
This sounds too much like something contrived by corporate America.
No, thanks. I'll take the quality olympics.
It's like... "Who can build the next skyscraper the fastest? Now, who wants to occupy it?"
If you do what you always did, you get what you always got.
Let's just hope we can keep the doping scandals to a minimum.
"I use FreeBSD you insensitive clods!"
written on his back ran onto the floor and shoved the leader's chair into the crowd. Scooting the chair back into place cost the leader precious seconds and momentum which dropped him eventually to third place.
Here's what my buddies and coworkers complain about:
My friend went to the International Biology Olympiad, which is basically the sister project of this one. She had loads of fun, so I wish all the best to the kids competing in this competition. One point to note, perhaps: The people who are in this coding competition are all kids in school. This is not determining the fastest coder in the world, it's determining the best young coders. Just thought I'd clear that up.. =)
I thought they only used Windows in the International Special Olympiad in Informatics. :)
What will it like if there is live boardcasting?
Somehow, unlike the "Athletic" Olympics, I don't think they're gonna need to hand out condoms.
Just personal lubricants...
I programmed a life last year, be I'm converting it to Java so I'm without one for a while..... Every life needs coffee!!!!!
__________ Leave me alone I'm compiling a RPG II program on my S/36...Thanks to metamucil I'm a Regular Meta Moderator
In related news, the International Olympic Committee has sued the International Olympiad in Informatics for their illegal use of the organizations trademarks, copyrights, and software patents.
Anyone got a design for the programer building? Giant Processor, etc...
Anyone seen my jagged little pill?
Arguing on Slashdot is like competing in the Special Olympics; even if you win you're still a retard.
But wait, this is offtopic, but I am pissed about that iTunes bug for Macs - the crashing, freezy thing? Damn that sucks! Apple's gotta fix that shit or what'll i do?!
What/which iTunes bug? I'm using iTunes 4.6 on my PowerBook G4 (OS X 10.3.5) without any problems. I have an older version on my PC, 4.5.1 I think, that seems to work OK.
Or are you talking about the iTunes UK overcharge? (Apparently Apple charges the German and French 0.99 Euro per song, and the British 79 pence [about 1.20 Euro] while Americans only pay 99 cents [0.80 Euro]).
An even bigger mess is the trouble the labels in Japan are giving Apple--they won't let Apple open an iTunes store in Japan unless they disable ALL ability to burn music to CD-R!!
Which Lucky TV network gets to have continous coverage of these events?
WoW: Scheod 70 orc warlock on Shadowmoon
Maybe XCode 1.5 wasn't included with Panther because Panther was released almost a year prior? XCode 1.5 was just released like last month with Panther October of 2003. X11 is on the 3rd cd and is aboue 4 -5 clicks to install.
Jisho - A Japanese English German Russian French Dictionary for the rest of us.
i can see the point of redhat but xp has no programming tools built in (not even a damn c compiler) unless you consider notepad a programming tool... REAL HACKERS CODE IN BINARY
All the torrents you could want.
It's worse than that!
>> X11 is still not installed by default.
Correct, but at least it's an (optional) part of OSX.
>> 10.3 comes with an older version of Xcode
Only partially correct. Xcode ships with new Macs and comes in 10.3 retail boxes, but it's on it's own installer CD. Xcode IS NOT part of OSX proper. If you're used to Linux distros where you only need one installer to install both the OS and the developer tools, well, you'll be in for an unfortunate surprise with OSX, you need to install Xcode seperately.
heheh, just kidding.
Don't call it an Olympics or you'll get sued by the IOC faster than you can say it.
Here's a few suggestions on what to code:
1) Fastest "Hello World"
2) 1337 0w|\|a63 Code (XP vs. RH9)
3) First one to hack HURD out from Emacs
4) First one to find (or paste) SCOde into Linux (anonymously sponsored but the prize check was stamped from Utah)
5) First to hack AI for dancing Osimo-like Ballmer.
6) First to uninstall their OS and install/compile Gentoo
7) Program a game...'cause we could use another one of them fsckin' Space Invaders clones.
Any particular reason that Apple isn't represented? I think that the competition might be a bit more competitive if the G5 was available.
411 Y0UR 8453 4R3 8310NG 70 U5!! -NSA
So we can know who NOT to hire. A good, employable coder is someone who works well in a team, writes code that can be easily taken up by another coder if necessary, and does not show up the rest of the team in an effort to be "#1". The people going for these olympics have pretty much the exact opposite of every employable skill I look for.
Anyone else notice, that last years contestants already worked out the SCO/IBM case in This task? They talk about a hypothetical RBN vs. HAL anti-trust case, which looks suspisiously like rot-1 encryption to me. (For those of you who prefer not to think RBN=>SCO & HAL=IBM)
Windows in 6 Bytes (IA-32) : 90 90 90 90 CD 19
More like fast thinking, puzzle solving skills, knowledge of algorightms, data structures and math (especially combinatorics), concentration under stress, debugging, and even some luck.
:) From what I've seen, format of the competition and problem scope hasn't changed that much since then.
I suck at coding fast, type with few fingers, and pause all the time to mentally execute the code. Got gold in 1991
Computer languages can be made to resemble human language (English) as much as possible. They can be made to reflect the machine as much as possible (assembler) and they can be made to resemble a drunken sailor with Tourette's syndrome (Pearl).
However, I wonder how functional languages will do. They try to approximate math as much as possible. OCaml Won top 3 spots from '98 till '02 in a contest called ICFP. Although OCaml is both functional and has object-oriented features.
Are functional languages the way of the future? Better brush up on my math. Another functional language feature I heard of was that they can be made multi-threaded automatically, with the runtime environment spreading the execution of the program across multiple threads/processors.
Maybe someone should tell Sony about functional languages as a way for game programmers to handle their Cell PS3 processors. They go the - slower individual chips but more of them working at the same time - route.
- -- Truth addict for life.
Stupid Google fanboys. Besides, Google is dead. Long live Google.
Does the OSX GUI even have an option for maximizing a window? AFAIK, each window has three buttons:
(X) "Red" --> Close window
(-) "Yellow" --> Minimize window (collapse window to the dock)
(+) "Green" --> Expand window to encompass as much of the data possible/needed. (Make the window large enough to display all data, but don't make it larger than it needs to be).
This is from memory, but AFAIK, there is no "Maximize Window" option that's specifically designed to expand a window to fill the entire display. Some applications have an option to do so, but it's not part of the OSX window manager.
I think applications like Apple's DVD player program have a menu or keyboard option for full screen. I don't know if it's possible to make the Safari web browser full screen though, but why would you do that on a 20", 23", or 30" monitor anyway?
Back in the day (2000), I actually got into the final of the British Informatics Olympiad. I'm not sure what the format is elsewhere, but basically they sent out a self-administering test to schools (all the schools in the UK, I think) and had them run it locally, seeing how much of a few interesting puzzles you could write in three hours or so - you can find out more on the site. All programming, no justification, you were scored on results (in that round), which I thought was the way it should be - after all, results are what matters in real life!
;-)
;-)
All the cool people were using C or Pascal. I used QuickBASIC! And yet I got the right results for enough of the questions (the C guy got his output board the wrong way up), and so I was invited to Cambridge. The best part about the first round was that I hadn't even done the last round right - I just said "yes, that's right" to the sample case and "No, impossible" to everything else.
Anyhoo, I got to Cambridge (for you USAians, one of our old "Ivy League" colleges) where I learnt to my relief that they had installed QuickBASIC especially for the two of us who had actually got in with it (15 finalists total) - they were shocked at having to, I can tell you! Of course, I was pretty sure at that stage that I wasn't actually going to win, and so I had a great time and zero stress. The tests itself were a) more of the same, but b) there was also an easay paper. Having not read much about the subject formally, I imagine I did dismally on the latter - I think I got about one and a half on the programming at best. Didn't know how to do efficient sorting! Still, it was great fun, and really set my mind on becoming a programmer.
The best part was, we got room, board and tours around Cambridge absolutely free (I guess they were looking to recruit a few of us to Cambridge). I even saw Stephen Hawking whizzing around on his motorised wheelchair! We got given two books at the end of it - Programming Pearls and Introduction to Computer Algorithms. Both darn good books, although I admit to reading the first more closely than the second.
Those too old for this competition or the ACM version should check out the ICFP programming contest. You can work from home, using any language you want, and you have three days to complete the task the give you (24 hours for the lightning division). Typically people work in small teams and use exotic stuff like Dylan, although last year's winning entry was in C++. If you win, you get a cash prize and the judges pronounce your implementation language "the programming tool of choice for discriminating hackers."
And in related news, 304 programmers will be going to bed without a woman tonight...
Speed does not necessarily indicate quality. I'll take a slow, but steady programmer any day over someone who outputs crud at great speed. Then again, I'd take someone who can generate good code quickly above those two - but when speed is your primary objective, like it is here, you're not likely to get particularly good quality code.
Nope it's simpler than that- OS X was not allowed because of easy access to Objective C libraries. Cocoa is frowned on as a "Performance Enhancing Language"
Keep it fair folks.
...have all the judges be programmers from AOL and Microsoft. The less it looks like their own code, the higher the score.
By reading this you acknowledge that you have read it.
Yup, same here. I was an "other finalist" of 2003 http://www.christs.cam.ac.uk/bio/publicity/r2003-1 .html (Ed, Westminster) but they wouldn't let me use QBasic - so I had to do with VBasic (I failed miserably I think). Unfortunately they put us in the skanky Fitzwilliam College. One of the winners of the 2000 comp (Tom Barnet-Lamb, Westminster) that you were in is bloody clever, he's now the main geek at Lionhead studios - oh and he wrote the questions for the 2003 final. See what you could've become if you put your mind to it!
Which does prove that I am old.
Back then it was mostly Turbo Pascal 5.5 on PC/XTs.
I sucked then at programming and I ended up somewhere lower than 50th place. There were around 100 participants. It was fun anyway.
Hah, I used QB in the IOI the two years I was in it. Got Bronze both times. A lot of the other people raised eyebrows - some were using Pascal, but all the "real" coders were doing C. At the end of the day, I don't think it mattered much which you used. (The second year, I was using C at home, but didn't feel comfortable enough with e.g. file I/O to use it in the competition).
There was -one- problem that I recall QB being a liability in. If you solved it the "wrong" way, processing speed and memory management became a bit of an issue, and you wouldn't be able to solve the larger cases in QB (the really large ones couldn't be solved the wrong way in C either). With an ideal solution, QB worked just fine, but most people didn't find it.
Perhaps, if I'd wanted to. I do know some people at Lionhead, it's not quite the life I want to lead. Still, does show it's a reasonable measure of potential. :-)
*reads* - nice to see someone else from Whitgift got in last year as well. We got someone in as the reserve once, I think . . . although to be honest, "we" doesn't have much of a place in such an individual contest.
VB ruled, VB.NET is quite neat as well. Wrote my dissertation around a program using it, which probably wasn't quite to my supervisor's taste, but it got me the marks. ;-)
And yes, the rooms were skanky, but at least they were free!
Well, that was what they were looking for, of course - the ideal solution, not the brute-force-in-low-overhead-language. The whole premis of half of Programming Pearls is about using the right algorithm mattering more. ;-)
It was fun. I think the best part was the comradeship - I'd never really been among "my own kind" in a big way before, and actually meeting others who "get" it is a real experience.
...OS choices did they give you in 91?
congrats by the way!
of course, this could be the start of a "back in the day" real men thread.
might as well start it...
Badgers! You young punks know about badgers right? Why, back in the day, we had to let badgers chew our wrists, and drip blood onto old pizza box cardboard to see where the punch card holes went!
and we LIKED IT!
I actually participated in the IOI for two years and won two silver medals. Anyway, I can attest that the contest is neither about speed nor coding. It's about coming up with algorithms to solve hard problems. Similar to the International Mathematics Olympiad, if anyone's heard of that. If you can come up with a brillant algorithm and prove to yourself that it works on all possible test data in time, then you'll have plenty of spare time to code it in. If you can't do that, then you might get at most a bronze medal (half the people get *some* type of medal). Of course you do need to know your way around whatever language you use to program your solutions, but none of the programs will be more than a couple pages of code (we're not writing a Linux kernel here), and you have 5 hours to solve 3 problems. At the point where you can get most of the algorithms, it's much more important to have good debugging and testing skills than to be able to code quickly.
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.
Oh yeah, and one thing I forgot to mention - we got a load of gear from Data Connection, the sponsors of the year (not, alas, Lionhead!).
:-)
I still use the mousemat to this day . . . and the towel, although it's one of the thinnest I've ever seen.
Of course -- but it did give the C coders an advantage, because they got more points for a half-assed solution than the QB coders did. It was the only time that I felt QB may have been a bad choice.
That's cool. It would have been seriously funny if you'd been all laid back and then won the damn thing.
Programming Pearls is a nice little book. It's very useful to a beginner but is probably a waste of money if you're already an established programmer. A lot of the tricks that are demonstrated in the book are common sense (for an experienced programmer).
"sweet dreams are made of this..."
Exactly why we were given it, I would imagine! And yeah, it would have been cool, but hey, I felt just fine with being in the top 15 rather than the top 5. Ironically that was the year before the inspectors said "hey, your school sucks at IT", and the computing budget got a £1mil boost. :-)
I was gonna say;
The "Geek Olympics Code" for Gold should be:
1. AU
2. $/oz -- a perl reference to a constant used as the variable reference... maybe?!?!?!
3. if($rank lt 2) { $self->award = WINNER; }
else { $self->position = $rank;
$self->award = LOSER;
}
4. 0x476F6C67
5. the purist 0b00100111011011110110101001100111
more options???
"I split coffee all over my wife's nightie
Any bets on whether the winner will be using Linux or XP? I am cheering for the linux people myself.
Selling software wont make you money, selling a service will.
How does this compare to the ACM ICPC? For those who don't know ACM also has a college level, and has regional/and world finals each year. As a former participant I'm curious what the diff is, and how you enter this one.
For the rest of us, there will be an on-line public competition hosted through the Valladolid site and run by the University of Waterloo. The next one is on the 19th (3 days away!), free, and everyone can register. Stock up on doritos and join in the fun!
As one of those types of engineers, specifically an electrical engineer, I was not happy to see *nix go. At that time, the programmable logic device and tool vendors saw the migration away from $20,000 Sun boxes. As a result, they moved to Windows. Now, however, many of the EDA tools are available for Linux (generally, supported only for RedHat) since engineers, like myself, have been constantly requesting Linux versions. Windows is still the primary platform, but Linux is now viable platform for programmable logic development.
Broken link in parent post, it should be: ICFP programming contest.
Rumour is that after ten rounds of the "not-it" game (where a task is assigned to the last person to touch their nose with pointer finger and say, "Not it.") ending in a three way tie between ABC, NBC, and FOX, with CBS automatically ruled out because the event which involves vast quantities of technology would likely terrify their viewers to death, NBC finally caved in and said, "Well, we have Bravo..."
Funny, considering this year was the GREEK Olympics...only one letter off.
If you're an American high school or middle school student and are interested in participating in IOI in the future, you should refer to the USACO website. The American IOI team is picked from among the best performers on USACO.
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.
Time and time again I feel compelled to point this out:
In the context of a Linux distribution stable does not mean "reliable" or "vetted for bugs" or "unlikely to crash". It means a feature freeze: the packages are not going to be changed except for security updates. Red Hat and Debian are examples of groups that produce "stable" distributions (EL and Woody, respectively). Fedora and Gentoo come to mind as groups that seem to have no intention of producing "stable" distributions: implicit in their development model is the notion that packages may be added and removed rather rapidly in the future.
All's true that is mistrusted
The programs are marked for completeness, I think the fastest algorithm is important in there (all this N(o)PPN erm, numbers, I wish I remember my degree)
:
But they do not support Java, I asked them why and the answer was
Although the use of Java was discussed during the GA and the ISC
meetings of the IOI-2003 contest, the suggestions to use it for this
year's contest were turned down. Java is thus not included in the
permitted languages for the IOI-2004 contest, which are limited to
Pascal, C and C++. A Java compiler will not be provided to the
contestants, and programs written in Java will not be accepted for
grading.
hmmmmmmmmmmmm - I wonder if they will program nude like the competitors of the ancient olympics? (nude, not programming...)
aaaaaaaargh, a sight worse than any goat flavoured domain.
#hostfile 0.0.0.0 primidi.com 0.0.0.0 www.primidi.com 0.0.0.0 radio.weblogs.com
"taking place in Athens from Sept 11th to Sept 18th...competing in 7 marathon programming sessions..."
no, that's ONE marathon programming session.
the 1 0001 101
The slowest coder will get The 3D Realms Award.
Aren't the fastest programmers metaprogrammers? Nothing beats an N-liner (for small values of N) which turns a terse program specification into real code.
cpghost at Cordula's Web.
as "Greek Olympics Code for Gold" and was wondering why /. would report on doping recipes...
I was one of two who used QBASIC in the BIO finals in '99, but for the first round I used BASIC on an Archimedes 4000. In fact, I hadn't used QBASIC before the finals, so the first thing I had to do was find how to compile and execute.
This could be a good oppertunity for RedHat or MS:
"The fastest coder in the world gets it done on [RedHat|Windows]"
SPAM
You're not a certain ex-CD named Steve by any chance, are you?
I've always found it interesting to watch other geeks at work, because each of them finds his own different path through the overgrown jungle of available tools to get their jobs done.
I've shown others applications I use to get my mainly scientific work done and they've been grateful to be exposed to tools and techniques they had no idea even existed.
Admittedly, many just plod along a path of semi-ignorance and are painful to watch (eg.,
uh, did you know there's this neat thing, a directory stack that you can push around?Likewise, others have exposed me to various advantages to bash command completion and specialized Emacs Lisp for editing local file formats du jour.
Some just stay in Emacs all the time; others will use vi and escape into subshells several times per minute, etc.
I'm still waiting to see someone whose shell on gecos field is either perl or python instead of *sh.
It's fascinating and I love the opportunity to learn new techniques.
"Provided by the management for your protection."
I worked the last IOI (2003) at the University of Wisconsin - Parkside in Kenosha, WI, USA, Earth.
Someone had asked why no Macs as we were setting up hundreds of Dell machines with XP/Linux.
The reason we were given - the contestants were ALL familiar with the PC, and very few were familiar with the Mac. Remember - these are people from ALL over the globe.
It's a matter of what people are used to, not which platform is better.
Besides - for the money that the hosting institution has to come up with for the equipment simply precludes Macs from being purchased. The IOI doesn't provide money for equipment.
Kenny P.
Visualize Whirled P.'s
most definitely != the worlds best coder
blah.
GO WISCONSIN!!! This proves we have the best geeks. So bring back gencon to it's rightful place already.
{
printf ("Hello World!\n");
}
Logic, macros, and more
With all the pro-/anti-Mac sentiments going on here (go away, you closet desktop publishers) I kind of wonder if I'm the only person here who's happy with an autoindenting editor and gcc.
You know, emacs works just fine without Linux, guys.
StoneCypher is Full of BS