The sections have been modified a fair amount. The Entries menu has been extended to have: Fixing entries, Updating author info, Thanks for the help. The first two were moved from FAQ and the last one from About. The rationale for these, in order: entries and authors have to do with entries and most of the help involves entries. It also has to do with website but in 'about' it does not seem the right place, unless maybe it is renamed to 'Credits' or something (I am not suggesting this one way or the other). This one is debatable but that was the rationale. The Status menu has been extended to have: Markdown guidelines and Security policy. The rationale is that the markdown guidelines are part of contest guidelines and the security policy is about the status of the entries and how if there are any security problems they will not be addressed (instead of about the IOCCC). The FAQ was extended to have: Compiling entries, Running entries, How to help. The reason to not have compiling and running entries under Entries is because this is 'how to' and also the menu was too long. How to help seems like a good idea under FAQ too (was in About). About was extended to have the new 'about.html' page (from about.md). This is a rare case where a new file is useful as it fits under 'About'. The menu now is: Home page, About the IOCCC, The Judges, Contact us. I was pondering the 'About [the IOCCC]' at the top and also naming it 'About us' but it seemed like a link to index.html was necessary and as for 'about us' it seemed less clear as to whether it was about the judges or the contest itself. The FAQ has been updated slightly for this. After further inspection the bin/index.html and the inc/index.html links were removed from the about section. With these changes, renaming an item or slight reordering notwithstanding, I believe that #2006 is probably in good shape.
Twenty First International Obfuscated C Code Contest
Standard IOCCC stuff
View the index.html web page for the given winning entry for information on how
on how to compile it and how to run the winning program.
Look at the winning source and try to figure how it does what it does!
You may then wish to look at the Author's remarks for even more details.
Some ANSI C compilers are not quite as good as they should be. If yours is lacking, you may need to compile using gcc instead of your local compiler.
Historical note:
The IOCCC has a website and now has a number of international mirrors. The primary website can be found at www.ioccc.org.
Historical update:
The IOCCC website once had a number of international mirrors. As of 2020 Dec 29, GitHub serves as the distributed server farm for the IOCCC winner repo that GitHub renders as Official IOCCC web site - www.ioccc.org.
Remarks on some of the entries
We believe you will be impressed with this year's winning entries. We had a very difficult time picking a single best from among the other entries because the overall quality of the submissions were so high.
This year we selected the top 4 entries for particularly high honors:
-
Balanced use of obfuscation - Gold Award
A very extremely subtle and twisted piece of source code! Even if you start with the zeitak.alt.c source, you will still have a very challenging time to understand it!
-
Most elementary use of C - Silver Award
A fun program that could also have won "Best abuse of Ghostscript" because it managed to create some PDF files that Ghostscript could not read.
-
Best use of cocoa - Bronze Award
A picture within a picture is worth more than a thousand (4 byte) words. :-)
-
Most complex ASCII fluid - Honorable mention
When you see this program in action, you too will very likely say wow as we did!
But don't ignore the other winning entries! There are games, utilities, eye candy, calculators and graphical tools to explore.
This year, Yusuke Endoh won with two entries, one of which (endoh1) won the special Honorable mention award. Eight of the winning entries were from people who won in previous years.
This year we had a number of authors from Asia. We saw our second entry from China and our first from Korea. We are pleased to see outstanding entries from areas of the world that have not been active in past contests. Will we see an upswing of entries from South America, Africa and Antarctica next year? :-)
Please note that judging is done completely anonymously. Please do NOT reveal your identity in your source code. In the future we may disqualify entries that reveal the identity of the submitter!
There were some outstanding entries that did not win. Unfortunately some very good entries lost because they:
-
would take years to execute
-
were way way oversize and didn't even attempt to justify their excess by a clever abuse of the rules
-
obfuscate themselves by simply invoking a complex state machine
-
depend on a single obfuscation trick
-
could only be run on a particular vendor's platform
-
were very similar to previous winning entries
-
were based on an overused theme such as yet another fractal display program
-
didn't work as documented
We hope the authors of some of those entries will fix and re-submit them for the next IOCCC.
There is a risk in submitting an entry that is similar to a well used theme by previous winning entries. Previous entries set a very high bar. A new winning entry must not only compete against other submissions form the current year, they must also excel over similar winning entry in some particularly impressive way.
Final Comments
IMPORTANT NOTE: See contact.html for up to date contact details as well as details on how to provide fixes to any of the entries. See also the IOCCC FAQ for additional information on the IOCCC.