Merge pull request #211 from xexyl/faq
This commit is contained in:
2 files changed
+771
-436
No files matched your search
@@ -1,546 +1,448 @@
|
|||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
<p><HTML>
|
||||||
<HTML>
|
<BODY TEXT="#000000"></p>
|
||||||
<HEAD>
|
|
||||||
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
|
|
||||||
<META name="description" content="International Obfuscated C Code Contest">
|
|
||||||
<META name="keywords" content="International, Obfuscated, C, c, IOCCC,ioccc, obfuscated, Obfuscate, obfuscate, Landon Curt Noll, chongo, Leonid A. Broukhis">
|
|
||||||
<link rel="stylesheet" type="text/css" href="ioccc.css">
|
|
||||||
<TITLE>The FAQ</TITLE>
|
|
||||||
</HEAD>
|
|
||||||
<BODY TEXT="#000000">
|
|
||||||
|
|
||||||
<CENTER><IMG ALT="IOCCC" SRC="png/ioccc.png"></CENTER><BR>
|
<center><img alt="IOCCC" SRC="png/ioccc.png"></center>
|
||||||
<CENTER><FONT SIZE="6"><I>The International Obfuscated C Code
|
|
||||||
Contest </I></FONT></CENTER><BR>
|
|
||||||
<CENTER><P>[ <A HREF="judges.html">The judges</A> |
|
<p><br></p>
|
||||||
|
|
||||||
|
<center><font size="6"><I>The International Obfuscated C Code Contest </I></font></center>
|
||||||
|
|
||||||
|
|
||||||
|
<p><br></p>
|
||||||
|
|
||||||
|
<center><P>[ <A HREF="judges.html">The judges</A> |
|
||||||
<A HREF="main.html">IOCCC home page</A> |
|
<A HREF="main.html">IOCCC home page</A> |
|
||||||
<A HREF="main.html#enter">How to enter</A> |
|
<A HREF="main.html#enter">How to enter</A> |
|
||||||
<B>FAQ</B> |
|
<B>FAQ</B> |
|
||||||
<A HREF="contact.html">Contacting the IOCCC</A>
|
<A HREF="contact.html">Contacting the IOCCC</A>
|
||||||
<BR>
|
<br>
|
||||||
<A HREF="main.html#new">IOCCC news</A> |
|
<A HREF="main.html#new">IOCCC news</A> |
|
||||||
<A HREF="winners.html">People who have won</A> |
|
<A HREF="winners.html">People who have won</A> |
|
||||||
<A HREF="years.html">Winning entries</A> ]</P></CENTER>
|
<A HREF="years.html">Winning entries</A> ]</P></center>
|
||||||
<BR>
|
|
||||||
|
|
||||||
|
<p><br></p>
|
||||||
|
|
||||||
<HR>
|
<HR>
|
||||||
|
|
||||||
<H2>The IOCCC FAQ</H2>
|
|
||||||
|
|
||||||
<P>
|
<h1>The IOCCC FAQ</h1>
|
||||||
<BLOCKQUOTE><FONT SIZE=+1>Q:</FONT> How many entries do you receive each
|
|
||||||
year?
|
<h2>Q:</font> How many entries do you receive each year?</h2>
|
||||||
<BR><FONT SIZE=+1>A:</FONT> By tradition, we do not say.
|
|
||||||
<P><FONT SIZE=+1>Q:</FONT> How many judging rounds do you have?
|
<p>By tradition, we do not say.</p>
|
||||||
<BR><FONT SIZE=+1>A:</FONT> Are you trying to trick us? We will not say
|
|
||||||
that either.
|
<h2>Q: How many judging rounds do you have?</h2>
|
||||||
<P><FONT SIZE=+1>Q:</FONT> I cannot get entry xyzzy from year 19xx to compile!
|
|
||||||
<BR><FONT SIZE=+1>A:</FONT> Some winners, particularly winners from long
|
<p>Are you trying to trick us? We will not say that either.</p>
|
||||||
ago, no longer compile on more modern systems because the C language has
|
|
||||||
evolved (i.e. the modern C compilers are much more strict in what they
|
<h2>Q: I cannot get entry XYZZY from year 19xx to compile!</h2>
|
||||||
accept as a valid program), or the entry depended on operation system
|
|
||||||
and library features that where common back then but are different/missing
|
<p>Some winners, particularly winners from long ago, no longer compile on more
|
||||||
today.
|
modern systems because the C language has evolved (i.e. the modern C compilers
|
||||||
<BR>E.g. it is highly unlikely that you'll be able to execute <A HREF="years.html#1984/mullender">1984/mullender</A> on a computer you're using to read this FAQ.
|
are much more strict in what they accept as a valid program), or the entry
|
||||||
<P><FONT SIZE=+1>Q:</FONT> I found a bug in a previous winner, what should
|
depended on operation system and library features that where common back then
|
||||||
I do?
|
but are different/missing today.</p>
|
||||||
<BR><FONT SIZE=+1>A:</FONT> We do not ``maintain'' the contest winners.
|
|
||||||
The code is made available on an ``AS IS'' basis. If you have a FIX for
|
<p>E.g. it is highly unlikely that you'll be able to execute
|
||||||
|
<a href="years.html#1984/mullender">1984/mullender</a> on a computer you're using to read
|
||||||
|
this FAQ.</p>
|
||||||
|
|
||||||
|
<h2>Q: I found a bug in a previous winner, what should I do?</h2>
|
||||||
|
|
||||||
|
<p>We do not 'maintain' the contest winners. The code is made available on an 'AS
|
||||||
|
IS' basis. If you have a FIX for
|
||||||
a entry, we suggest that you try and email it to the authors and to CC:
|
a entry, we suggest that you try and email it to the authors and to CC:
|
||||||
us using the instructions on the <A HREF="contact.html">contacting the IOCCC
|
us using the instructions on the
|
||||||
Judges</A> page.
|
<a href="contact.hml">contacting the IOCCC Judges</a> page.</p>
|
||||||
<BR>IF you have a FIX, and IF the author does not object, and IF your fix
|
|
||||||
|
<p>IF you have a FIX, and IF the author does not object, and IF your fix
|
||||||
looks reasonable, we will add a web link to a copy of your email
|
looks reasonable, we will add a web link to a copy of your email
|
||||||
for others to see.
|
for others to see.</p>
|
||||||
<P><FONT SIZE=+1>Q:</FONT> Are there types of entries that are submitted
|
|
||||||
so frequently that the judges get tired of them?
|
|
||||||
<BR><FONT SIZE=+1>A:</FONT> Yes, there are types of entries that show up
|
|
||||||
over and over again.
|
|
||||||
<BR>The <A HREF="guidelines.html">guidelines</A> say:
|
|
||||||
<BLOCKQUOTE><I>We tend to dislike programs that:</I>
|
|
||||||
<LI><I>are similar to previous winners</I></LI>
|
|
||||||
</BLOCKQUOTE>
|
|
||||||
We like variety. However too often we see (please look at the winning examples
|
|
||||||
given to be aware of the level of the competition):
|
|
||||||
<UL>
|
|
||||||
<LI>
|
|
||||||
<FONT SIZE=+1>maze generator</FONT>
|
|
||||||
|
|
||||||
<UL>
|
<h2>Q: Are there types of entries that are submitted so frequently that the judges get tired of them?</h2>
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1985_shapiro">1985/shapiro</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<p>Yes, there are types of entries that show up over and over again.</p>
|
||||||
<A HREF="years.html#1991_buzzard">1991/buzzard</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<p>The <a href="guidelines.html">guidelines</a> say:</p>
|
||||||
<A HREF="years.html#1995_cdua">1995/cdua</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<blockquote><p><em>We tend to dislike programs that: are similar to previous winners</em></p></blockquote>
|
||||||
<A HREF="years.html#1995_dodsond2">1995/dodsond2</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<p>We like variety. However too often we see (please look at the winning examples
|
||||||
<A HREF="years.html#1998_bas1">1998/bas1</A></LI>
|
given to be aware of the level of the competition):</p>
|
||||||
</UL>
|
|
||||||
<P><LI>
|
|
||||||
<FONT SIZE=+1>tic-tac-toe game</FONT>
|
|
||||||
|
|
||||||
<UL>
|
<h3>maze generator</h3>
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1991_westley">1991/westley</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<ul>
|
||||||
<A HREF="years.html#1996_jonth">1996/jonth</A></LI>
|
<li><p><a href="years.html#1985_shapiro">1985/shapiro</a></p></li>
|
||||||
|
<li><p><a href="years.html#1991_buzzard">1991/buzzard</a></p></li>
|
||||||
|
<li><p><a href="years.html#1995_cdua">1995/cdua</a></p></li>
|
||||||
|
<li><p><a href="years.html#1995_dodsond2">1995/dodsond2</a></p></li>
|
||||||
|
<li><p><a href="years.html#1998_bas1">1998/bas1</a></p></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#2020_carlini">2020/carlini</A></LI>
|
|
||||||
</UL>
|
|
||||||
|
|
||||||
<P><LI>
|
<h3>tic-tac-toe game</h3>
|
||||||
<FONT SIZE=+1>solitaire/Othello game</FONT>
|
|
||||||
|
|
||||||
<UL>
|
<ul>
|
||||||
<LI>
|
<li><p><a href="years.html#1991_westley">1991/westley</a></p></li>
|
||||||
<A HREF="years.html#1987_lievaart">1987/lievaart</A></LI>
|
<li><p><a href="years.html#1996_jonth">1996/jonth</a></p></li>
|
||||||
|
<li><p><a href="years.html#2020_carlini">2020/carlini</a></p></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1994_dodsond1">1994/dodsond1</A></LI>
|
|
||||||
</UL>
|
|
||||||
|
|
||||||
<P><LI>
|
<h3>solitaire/Othello game</h3>
|
||||||
<FONT SIZE=+1>generating small primes </FONT>(below is the list of all
|
|
||||||
prime related winners)
|
|
||||||
|
|
||||||
<UL>
|
<ul>
|
||||||
<LI>
|
<li><p><a href="years.html#1987_lievaart">1987/lievaart</a></p></li>
|
||||||
<A HREF="years.html#1985_august">1985/august</A></LI>
|
<li><p><a href="years.html#1994_dodsond1">1994/dodsond1</a></p></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1988_applin">1988/applin</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<h3>generating small primes (below is the list of all prime related winners)</h3>
|
||||||
<A HREF="years.html#1994_weisberg">1994/weisberg</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<ul>
|
||||||
<A HREF="years.html#1995_makarios">1995/makarios</A></LI>
|
<li><p><a href="years.html#1985_august">1985/august</a></p></li>
|
||||||
|
<li><p><a href="years.html#1988_applin">1988/applin</a></p></li>
|
||||||
|
<li><p><a href="years.html#1994_weisberg">1994/weisberg</a></p></li>
|
||||||
|
<li><p><a href="years.html#1995_makarios">1995/makarios</a></p></li>
|
||||||
|
<li><p><a href="years.html#1996_dalbec">1996/dalbec</a></p></li>
|
||||||
|
<li><p><a href="years.html#2000_bellard">2000/bellard</a></p></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1996_dalbec">1996/dalbec</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<p><em>As you can see, just a list of primes (let alone small primes) does not cut it
|
||||||
<A HREF="years.html#2000_bellard">2000/bellard</A></LI>
|
anymore.</em></p>
|
||||||
</UL>
|
|
||||||
<B><I>As you can see, just a list of primes (let alone small primes) does
|
|
||||||
not cut it anymore.</I></B>
|
|
||||||
|
|
||||||
<P><LI>
|
<h3>self reproducing program</h3>
|
||||||
<FONT SIZE=+1>self reproducing program</FONT>
|
|
||||||
|
|
||||||
<UL>
|
<ul>
|
||||||
<LI>
|
<li><p><a href="years.html#1990_scjones">1990/scjones</a></p></li>
|
||||||
<A HREF="years.html#1990_scjones">1990/scjones</A></LI>
|
<li><p><a href="years.html#1994_smr">1994/smr</a> - _do not claim your program is the smallest one without seeing it!</p></li>
|
||||||
|
<li><p><a href="years.html#2000_dhyang">2000/dhyang</a> - <em>unless you beat this one, your chances are slim</em></p></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1994_smr">1994/smr</A> - <I>do not claim your program
|
|
||||||
is the smallest one without seeing it</I></LI>
|
|
||||||
|
|
||||||
<LI>
|
<h3>entries that just print "Hello, world!"</h3>
|
||||||
<A HREF="years.html#2000_dhyang">2000/dhyang</A> - <I>unless you beat this
|
|
||||||
one, your chances are slim</I></LI>
|
|
||||||
</UL>
|
|
||||||
|
|
||||||
<P><LI>
|
<ul>
|
||||||
<FONT SIZE=+1>entries that just print "Hello, world!"</FONT>
|
<li><p><a href="years.html#1984_anonymous">1984/anonymous</a></p></li>
|
||||||
|
<li><p><a href="years.html#1985_applin">1985/applin</a></p></li>
|
||||||
|
<li><p><a href="years.html#1986_applin">1986/applin</a></p></li>
|
||||||
|
<li><p><a href="years.html#1986_holloway">1986/holloway</a></p></li>
|
||||||
|
<li><p><a href="years.html#1989_jar.1">1989/jar.1</a></p></li>
|
||||||
|
<li><p><a href="years.html#1992_lush">1992/lush</a></p></li>
|
||||||
|
<li><p><a href="years.html#2000_tomx">2000/tomx</a></p></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
<UL>
|
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1984_anonymous">1984/anonymous</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<p><em><strong>it's so 20th century...</strong></em></p>
|
||||||
<A HREF="years.html#1985_applin">1985/applin</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<h3>entries that use some complex state machine/table to print something</h3>
|
||||||
<A HREF="years.html#1986_applin">1986/applin</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<ul>
|
||||||
<A HREF="years.html#1986_holloway">1986/holloway</A></LI>
|
<li><p><a href="years.html#1988_isaak">1988/isaak</a></p></li>
|
||||||
|
<li><p><a href="years.html#1988_phillipps">1988/phillipps</a></p></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1989_jar.1">1989/jar.1</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<h3>rot13</h3>
|
||||||
<A HREF="years.html#1992_lush">1992/lush</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<ul>
|
||||||
<A HREF="years.html#2000_tomx">2000/tomx</A></LI>
|
<li><p><a href="years.html#1985_sicherman">1985/sicherman</a></p></li>
|
||||||
</UL>
|
<li><p><a href="years.html#1989_westley">1989/westley</a></p></li>
|
||||||
<B><I>It's so 20th century...</I></B>
|
<li><p><a href="years.html#1990_dg">1990/dg</a></p></li>
|
||||||
|
<li><p><a href="years.html#1991_fine">1991/fine</a></p></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
<P><LI>
|
|
||||||
<FONT SIZE=+1>entries that use some complex state machine/table to print
|
|
||||||
something</FONT>
|
|
||||||
|
|
||||||
<UL>
|
<h3><strong>pi</strong> or <strong>e</strong> computation</font></h3>
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1988_isaak">1988/isaak</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<ul>
|
||||||
<A HREF="years.html#1988_phillipps">1988/phillipps</A></LI>
|
<li><p><a href="years.html#1986_august">1986/august</a></p></li>
|
||||||
</UL>
|
<li><p><a href="years.html#1988_robison">1988/robison</a></p></li>
|
||||||
|
<li><p><a href="years.html#1988_westley">1988/westley</a></p></li>
|
||||||
|
<li><p><a href="years.html#1989_roemer">1989/roemer</a></p></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
<P><LI>
|
|
||||||
<FONT SIZE=+1>rot13</FONT></LI>
|
|
||||||
<UL>
|
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1985_sicherman">1985/sicherman</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<p>HINT: It is not fatal to send in those types of entries, it is just MUCH
|
||||||
<A HREF="years.html#1989_westley">1989/westley</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1990_dg">1990/dg</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1991_fine">1991/fine</A></LI>
|
|
||||||
</UL>
|
|
||||||
|
|
||||||
<P><LI>
|
|
||||||
<FONT SIZE=+1><B>pi</B> or <B>e</B> computation</FONT>
|
|
||||||
|
|
||||||
<UL>
|
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1986_august">1986/august</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1988_robison">1988/robison</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1988_westley">1988/westley</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1989_roemer">1989/roemer</A></LI>
|
|
||||||
</UL>
|
|
||||||
</UL>
|
|
||||||
<P>HINT: It is not fatal to send in those types of entries, it is just MUCH
|
|
||||||
HARDER to win. Such an entry would have to do something really unique and
|
HARDER to win. Such an entry would have to do something really unique and
|
||||||
interesting to even make it into the final judging rounds. Entries that
|
interesting to even make it into the final judging rounds. Entries that
|
||||||
re-use these 'worn out' themes frequently lose to other entries that do
|
re-use these 'worn out' themes frequently lose to other entries that do
|
||||||
something different.
|
something different.</p>
|
||||||
<P>HINT: If you really MUST send in an entry based on an 'over-used theme',
|
|
||||||
|
<p>HINT: If you really MUST send in an entry based on an 'over-used theme',
|
||||||
be sure that it is obfuscated in several new and novel ways. Be sure to clearly
|
be sure that it is obfuscated in several new and novel ways. Be sure to clearly
|
||||||
explain near the beginning of your remarks why you are submitting a entry
|
explain near the beginning of your remarks why you are submitting a entry
|
||||||
based on an 'over-used theme' and why the judges should not simply toss
|
based on an 'over-used theme' and why the judges should not simply toss
|
||||||
it out as being boring.
|
it out as being boring.</p>
|
||||||
<P><FONT SIZE=+1>Q:</FONT> What should I write in the 'remark' section
|
|
||||||
of my entry, if anything at all?
|
|
||||||
<BR><FONT SIZE=+1>A:</FONT> As much or as little as you wish.
|
|
||||||
<P>What helps:
|
|
||||||
<UL>
|
|
||||||
<LI>
|
|
||||||
explaining what your entry does</LI>
|
|
||||||
|
|
||||||
<LI>
|
<h2>Q: What should I write in the 'remarks' (remarks.md) section of my entry, if anything at all?</h2>
|
||||||
how to entice it to do what it is supposed to do</LI>
|
|
||||||
|
|
||||||
<LI>
|
<p>As much or as little as you wish.</p>
|
||||||
what obfuscations are used</LI>
|
|
||||||
|
|
||||||
<LI>
|
<h3>What helps:</h3>
|
||||||
what are the limitations of your entry in respect of portability and/or input
|
|
||||||
data</LI>
|
|
||||||
|
|
||||||
<LI>
|
<ul>
|
||||||
how it works (if you are really condescending)</LI>
|
<li><p>explaining what your entry does</p></li>
|
||||||
</UL>
|
<li><p>how to entice it to do what it is supposed to do</p></li>
|
||||||
<P>What does not help:
|
<li><p>what obfuscations are used</p></li>
|
||||||
<UL>
|
<li><p>what are the limitations of your entry in respect of portability and/or input data</p></li>
|
||||||
<LI>
|
<li><p>how it works (if you are really condescending)</p></li>
|
||||||
admitting that your entry is not very obfuscated (you see, the contest
|
</ul>
|
||||||
is called <B>IOCCC</B>, not <B>INVOCCC</B>); but even if you do not admit it,
|
|
||||||
not very obfuscated entries have a minuscule chance to win
|
|
||||||
(although <A HREF="years.html#2000_tomx">2000/tomx</A> is a notable counterexample)</LI>
|
|
||||||
|
|
||||||
<LI>
|
|
||||||
mentioning your name or any identifying information in the remark section
|
|
||||||
(or in the C code for that matter) - we like to be unbiased during the
|
|
||||||
judging rounds; we look at the author name only if an entry wins</LI>
|
|
||||||
|
|
||||||
<LI>
|
<h3>What does not help:</h3>
|
||||||
leaving the remark section empty</LI>
|
|
||||||
</UL>
|
<ul>
|
||||||
<P><FONT SIZE=+1>Q:</FONT> I am confused: what should I put to the 'build'
|
<li><p>admitting that your entry is not very obfuscated (you see, the contest is
|
||||||
section?
|
called <B>IOCCC</B>, not <B>INVOCCC</B>); but even if you do not admit it, not
|
||||||
<BR><FONT SIZE=+1>A:</FONT> The 'build' section must contain UNIX shell-style
|
very obfuscated entries have a minuscule chance to win (although
|
||||||
commands to compile your C language entry <B>in a file named prog.c</B>
|
<a href="years.html#2000_tomx">2000/tomx</a> is a notable counterexample)</p></li>
|
||||||
and produce an executable file. More than one command is allowed,
|
<li><p>mentioning your name or any identifying information in the remark section (or
|
||||||
|
in the C code for that matter) - we like to be unbiased during the judging
|
||||||
|
rounds; we look at the author name only if an entry wins</p></li>
|
||||||
|
<li><p>leaving the remark section empty</p></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>Q: I am confused: what should I put to the 'build' section?</h2>
|
||||||
|
|
||||||
|
<p>The 'build' section must contain UNIX shell-style commands to compile your C
|
||||||
|
language entry <strong>in a file named prog.c</strong> and produce an executable file. More than one command is allowed,
|
||||||
as far as the size rule is followed.
|
as far as the size rule is followed.
|
||||||
Usually one (or more) of these commands will be an invocation of
|
Usually one (or more) of these commands will be an invocation of
|
||||||
a C compiler (use <B>cc</B> or <B>gcc</B>), but there may be exceptions
|
a C compiler (use <strong>cc</strong> or <B>gcc</B>), but there may be exceptions
|
||||||
(or not anymore, see <A HREF="years.html#2000_tomx">2000/tomx</A>).
|
(or not anymore, see <a href="years.html#2000_tomx">2000/tomx</a>).</p>
|
||||||
<BR>If your entry depends on a particular source file name during
|
|
||||||
compilation or execution, you will have to put a line
|
<p>If your entry depends on a particular source file name during compilation or execution, you will have to put a line</p>
|
||||||
<PRE>cp prog.c desired_name.c</PRE> before the compiler invocation line.
|
|
||||||
<BR>If in doubt, put
|
<pre><code>cp prog.c desired_name.c
|
||||||
<PRE>cc -o prog prog.c</PRE> in the 'build' section.
|
</code></pre>
|
||||||
<P><FONT SIZE=+1>Q:</FONT> What happened to the winners for 1997, 1999
|
|
||||||
and 2002?
|
<p>before the compiler invocation line.</p>
|
||||||
<BR><FONT SIZE=+1>A:</FONT> There are none. There was no IOCCC in those
|
|
||||||
years.
|
<p>If in doubt, put</p>
|
||||||
<P><FONT SIZE=+1>Q:</FONT> Why don't you publish non-winners?
|
|
||||||
<BR><FONT SIZE=+1>A:</FONT> Because the publication on the IOCCC site <B><I>IS</I></B>
|
<pre><code>cc -o prog prog.c
|
||||||
|
</code></pre>
|
||||||
|
|
||||||
|
<p>in the 'build' section.</p>
|
||||||
|
|
||||||
|
<p>Note however that with the <a href="https://github.com/ioccc-src/mkiocccentry">mkiocccentry
|
||||||
|
tool</a> we have an example Makefile
|
||||||
|
which you should update, using the instructions above if necessary.</p>
|
||||||
|
|
||||||
|
<h2>Q: What happened to the winners for 1997, 1999 2002, 2003, 2007 - 2010, 2016, 2017, 2021 and 2022 ?</h2>
|
||||||
|
|
||||||
|
<p>There are none. There was no IOCCC in those years.</p>
|
||||||
|
|
||||||
|
<h2>Q: Why don't you publish non-winners?</h2>
|
||||||
|
|
||||||
|
<p>Because the publication on the IOCCC site <strong><em>IS</em></strong>
|
||||||
the award! Anyone is free to put their IOCCC hopefuls, lookalikes and/or
|
the award! Anyone is free to put their IOCCC hopefuls, lookalikes and/or
|
||||||
non-winners on their web page for everyone to see.
|
non-winners on their web page for everyone to see.</p>
|
||||||
<P><FONT SIZE=+1>Q:</FONT> How much time does it take to judge the contest?
|
|
||||||
<BR><FONT SIZE=+1>A:</FONT> It takes a fair amount of time to setup, run,
|
|
||||||
answer email, process (note that we do not contact the author if an entry
|
|
||||||
does not compile or does not work as advertised, we might attempt to fix
|
|
||||||
obvious compilation problems or incompatibilities, but no more than that
|
|
||||||
- so be sure that your entry does work on at least a couple different platforms,
|
|
||||||
at least one of them being UNIX or POSIX-conforming) entries, review entries,
|
|
||||||
trim down the set entries to a set of winners, doing the write-up of the
|
|
||||||
winners, announcing the winners, reviewing final edits of the winning entry
|
|
||||||
set, posting the winners, being flamed :-), tell folks who send in late
|
|
||||||
entries to wait until the next contest, etc... It takes a few weekends
|
|
||||||
and a number nights of study and work ... which is hard given that we are busy
|
|
||||||
with many other activities as well.
|
|
||||||
<P><FONT SIZE=+1>Q:</FONT> What platform should I assume for my entry?
|
|
||||||
<BR><FONT SIZE=+1>A:</FONT> Your entry must compile with GCC and run under
|
|
||||||
at least one flavor of UNIX (e.g. Linux or Solaris). To improve chances
|
|
||||||
to win, it should work under both BSD and SysV style UNIX (think <B>stty
|
|
||||||
cbreak</B>), and should not depend on endianness. If it can compile and
|
|
||||||
run on Windows and/or Mac (see <A HREF="/years.html#2000_thadgavin">2000/thadgavin</A>),
|
|
||||||
even better.
|
|
||||||
<P><FONT SIZE=+1>Q:</FONT> I would like to mirror the IOCCC web site. May
|
|
||||||
I do so?
|
|
||||||
<BR><FONT SIZE=+1>A:We are not accepting mirror requests at this time, sorry.
|
|
||||||
<P><FONT SIZE=+1>Q:</FONT> I want to publish some parts of the IOCCC in
|
|
||||||
an article, or book, or newsletter, or use then in class/instructional
|
|
||||||
notes, or quote from the IOCCC. May I do so?
|
|
||||||
<BR><FONT SIZE=+1>A:</FONT> Please ask the IOCCC judges first. Please send
|
|
||||||
your request using the instructions on the <A HREF="contact.html">contacting
|
|
||||||
the IOCCC Judges</A> page.
|
|
||||||
<P><FONT SIZE=+1>Q:</FONT> What are the grand prize / Best of Show winners?
|
|
||||||
<BR><FONT SIZE=+1>A:</FONT> In 1984-1987, the grand prize winners are:
|
|
||||||
<UL>
|
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1984_mullender">1984/mullender</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<h2>Q: How much time does it take to judge the contest?</h2>
|
||||||
<A HREF="years.html#1985_shapiro">1985/shapiro</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<p>It takes a fair amount of time to setup, run, answer email, process entries,
|
||||||
<A HREF="years.html#1986_wall">1986/wall</A></LI>
|
review entries, trim down the set entries to a set of winners, doing the
|
||||||
|
write-up of the winners, announcing the winners, reviewing final edits of the
|
||||||
|
winning entry set, posting the winners, being flamed :-), tell folks who send in
|
||||||
|
late entries to wait until the next contest, etc... It takes a few weekends and
|
||||||
|
a number nights of study and work ... which is hard given that we are busy with
|
||||||
|
many other activities as well.</p>
|
||||||
|
|
||||||
<LI>
|
<p>Note that we do not contact the author if an entry does not compile or does not
|
||||||
<A HREF="years.html#1987_lievaart">1987/lievaart</A></LI>
|
work as advertised, we might attempt to fix obvious compilation problems or
|
||||||
</UL>
|
incompatibilities, but no more than that - so be sure that your entry does work
|
||||||
<BR>Starting from 1988, the entry we liked the most in that year is called
|
on at least a couple different platforms, at least one of them being UNIX or
|
||||||
"Best of Show". Here are the "Best of Show" entries:
|
POSIX-conforming.</p>
|
||||||
<UL>
|
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1988_applin">1988/applin</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<h2>Q: What platform should I assume for my entry?</h2>
|
||||||
<A HREF="years.html#1989_jar.2">1989/jar.2</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<p>Your entry must compile with GCC and run under at least one flavor of UNIX (e.g.
|
||||||
<A HREF="years.html#1990_theorem">1990/theorem</A></LI>
|
Linux or Solaris). To improve chances to win, it should work under both BSD and
|
||||||
|
SysV style UNIX (think <B>stty cbreak</B>), and should not depend on endianness.
|
||||||
|
If it can compile and run on Windows and/or Mac (see
|
||||||
|
<a href="/years.html#2000_thadgavin">2000/thadgavin</a> for one example, amongst others), even better.</p>
|
||||||
|
|
||||||
<LI>
|
<h2>Q: I would like to mirror the IOCCC web site. May I do so?</h2>
|
||||||
<A HREF="years.html#1991_brnstnd">1991/brnstnd</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<p>We are not accepting mirror requests at this time, sorry.</p>
|
||||||
<A HREF="years.html#1992_vern">1992/vern</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<h2>Q: I want to publish some parts of the IOCCC in an article, or book, or newsletter, or use then in class/instructional notes, or quote from the IOCCC. May I do so?</h2>
|
||||||
<A HREF="years.html#1996_august">1996/august</A></LI>
|
|
||||||
|
|
||||||
<LI>
|
<p>Please ask the IOCCC judges first. Please send your request using the
|
||||||
<A HREF="years.html#1998_banks">1998/banks</A></LI>
|
instructions on the <a href="/contact.html">contacting the IOCCC Judges</a> page.</p>
|
||||||
|
|
||||||
<LI>
|
<h2>Q: What are the grand prize / Best of Show winners?</h2>
|
||||||
<A HREF="years.html#2000_jarijyrki">2000/jarijyrki</A></LI>
|
|
||||||
</UL>
|
<p>In 1984-1987, the grand prize winners are:</p>
|
||||||
<BR>In 1993, 1994 and 1995 the judges were unable to select a clear overall
|
|
||||||
|
<ul>
|
||||||
|
<li><p><a href="years.html#1984_mullender">1984/mullender</a></p></li>
|
||||||
|
<li><p><a href="years.html#1985_shapiro">1985/shapiro</a></p></li>
|
||||||
|
<li><p><a href="years.html#1986_wall">1986/wall</a></p></li>
|
||||||
|
<li><p><a href="years.html#1987_lievaart">1987/lievaart</a></p></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<p>Starting from 1988, the entry we liked the most in that year is called
|
||||||
|
"Best of Show". Here are the "Best of Show" entries:</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li><p><a href="years.html#1988_applin">1988/applin</a></p></li>
|
||||||
|
<li><p><a href="years.html#1989_jar.2">1989/jar.2</a></p></li>
|
||||||
|
<li><p><a href="years.html#1990_theorem">1990/theorem</a></p></li>
|
||||||
|
<li><p><a href="years.html#1991_brnstnd">1991/brnstnd</a></p></li>
|
||||||
|
<li><p><a href="years.html#1992_vern">1992/vern</a></p></li>
|
||||||
|
<li><p><a href="years.html#1996_august">1996/august</a></p></li>
|
||||||
|
<li><p><a href="years.html#1998_banks">1998/banks</a></p></li>
|
||||||
|
<li><p><a href="years.html#2000_jarijyrki">2000/jarijyrki</a></p></li>
|
||||||
|
<li><p><a href="years.html#2020_carlini">2020/carlini</a></p></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<p>In 1993, 1994 and 1995 the judges were unable to select a clear overall
|
||||||
winner. So to give a nod to the entry that had the highest approval ranking
|
winner. So to give a nod to the entry that had the highest approval ranking
|
||||||
from the judges, they used the following awards:
|
from the judges, they used the following awards:</p>
|
||||||
<UL>
|
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1993_rince">1993/rince</A> - Most Well Rounded</LI>
|
|
||||||
|
|
||||||
<LI>
|
<ul>
|
||||||
<A HREF="years.html#1994_shapiro">1994/shapiro</A> - Most Well Rounded</LI>
|
<li><p><a href="years.html#1993_rince">1993/rince</a> - Most Well Rounded</p></li>
|
||||||
|
<li><p><a href="years.html#1994_shapiro">1994/shapiro</a> - Most Well Rounded</p></li>
|
||||||
|
<li><p><a href="years.html#1995_leo">1995/leo</a> - Best Use of Obfuscation</p></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
<LI>
|
|
||||||
<A HREF="years.html#1995_leo">1995/leo</A> - Best Use of Obfuscation</LI>
|
|
||||||
</UL>
|
|
||||||
These could be considered the 'better entry' for those years with 1 or
|
|
||||||
more other entries that came in close behind.
|
|
||||||
|
|
||||||
<P><FONT SIZE=+1>Q:</FONT> I managed to get entry xyzzy from year 19xx to compile; now it fails to run!
|
<p>These could be considered the 'best entry' for those years with 1 or
|
||||||
<BR><FONT SIZE=+1>A:</FONT> switch(19xx/xyzzy) { <UL>
|
more other entries that came in close behind.</p>
|
||||||
<LI>case <A HREF="years.html#1984_mullender">1984/mullender</A>: try
|
|
||||||
<PRE>main(){int i=512;do write(1," :-)\b\b\b\b",9),usleep(i);while(--i);}</PRE>
|
<h2>Q: I managed to get entry XYZZY from year 19xx to compile; now it fails to run!</h2>
|
||||||
instead.<BR>Enable reverse wraparound in your xterm window for best results.
|
|
||||||
<BR>break;
|
<p>switch(19xx/XYZZY) {</p>
|
||||||
</LI>
|
|
||||||
<P><LI>case <A HREF="years.html#1991_davidguy">1991/davidguy</A>: disable access
|
<ul>
|
||||||
control of your X server (<B>xhost +</B>). If it does not help (or if you
|
<li><p>case <a href="years.html#1984_mullender">1984/mullender</a>: try</p>
|
||||||
|
|
||||||
|
<p> main(){int i=512;do write(1," :-)\b\b\b\b",9),usleep(i);while(--i);}</p></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<p>instead. Enable reverse wraparound in your xterm window for best results.</p>
|
||||||
|
|
||||||
|
<p>break;</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li>case <a href="years.html#1991_davidguy">1991/davidguy</a>: disable access
|
||||||
|
control of your X server (<strong>xhost +</strong>). If it does not help (or if you
|
||||||
see black screen), restart the X server without access control and with visual
|
see black screen), restart the X server without access control and with visual
|
||||||
depth of 8 bits or less.
|
depth of 8 bits or less.</li>
|
||||||
<BR>break;
|
</ul>
|
||||||
</LI>
|
|
||||||
<P><LI>default: Try enabling <TT>-fwritable-strings</TT> for GCC
|
|
||||||
or its equivalent for other compilers.
|
|
||||||
</LI></UL>
|
|
||||||
}
|
|
||||||
|
|
||||||
<P><FONT SIZE=+1>Q:</FONT> How
|
|
||||||
did the IOCCC get started?
|
|
||||||
<BR><FONT SIZE=+1>A:</FONT>
|
|
||||||
|
|
||||||
One day (23 March 1984 to be exact), back Larry Bassel and I (Landon Curt
|
<p>break;</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li>default: Try enabling <TT>-fwritable-strings</TT> for GCC
|
||||||
|
or its equivalent for other compilers.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<p>}</p>
|
||||||
|
|
||||||
|
<h2>Q: How did the IOCCC get started?</h2>
|
||||||
|
|
||||||
|
<p>One day (23 March 1984 to be exact), Larry Bassel and I (Landon Curt
|
||||||
Noll) were working for National Semiconductor's Genix porting group, we
|
Noll) were working for National Semiconductor's Genix porting group, we
|
||||||
were both in our offices trying to fix some very broken code.
|
were both in our offices trying to fix some very broken code.</p>
|
||||||
Larry had
|
|
||||||
been trying to fix a bug in the classic Bourne shell (C code #defined
|
|
||||||
to death to sort of look like Algol) and I had been working on the
|
|
||||||
finger program from early BSD (a bug ridden finger implementation to be
|
|
||||||
sure).
|
|
||||||
We happened to both wander (at the same time) out to the hallway
|
|
||||||
in Building 7C to clear our heads.
|
|
||||||
|
|
||||||
<P>
|
<p>Larry had been trying to fix a bug in the classic Bourne shell (C code #defined
|
||||||
|
to death to sort of look like Algol) and I had been working on the finger
|
||||||
|
program from early BSD (a bug ridden finger implementation to be sure).</p>
|
||||||
|
|
||||||
We began to compare notes: ''<I>You won't believe the code I am trying to
|
<p>We happened to both wander (at the same time) out to the hallway
|
||||||
fix</I>''.
|
in Building 7C to clear our heads.</p>
|
||||||
And: ''<I>Well you cannot imagine the brain damage level of the code
|
|
||||||
I'm trying to fix''</I>.
|
|
||||||
As well as: ''<I>It's more than bad code, the author really
|
|
||||||
had to try to make it this bad!</I>''.
|
|
||||||
|
|
||||||
<P>
|
<p>We began to compare notes: '<em>You won't believe the code I am trying to fix</em>'.</p>
|
||||||
|
|
||||||
After a few minutes we wandered back into my office where I posted a
|
<p>And: '<em>Well you cannot imagine the brain damage level of the code I'm trying to
|
||||||
<A HREF="http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=789%40nsc.UUCP&rnum=3&filter=0">flame
|
fix'</em>.</p>
|
||||||
to net.lang.c</A>
|
|
||||||
inviting people to try and out obfuscate the
|
|
||||||
UN*X source code we had just been working on.
|
|
||||||
|
|
||||||
<BLOCKQUOTE>
|
<p>As well as: '<em>It's more than bad code, the author really had to try to make it
|
||||||
|
this bad!</em></p>
|
||||||
|
|
||||||
BTW:
|
<p>After a few minutes we wandered back into my office where I posted a
|
||||||
I (Landon Curt Noll)
|
<a href="http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=789%40nsc.UUCP&rnum=3&filter=0" title="">flame to to
|
||||||
had to post this
|
net.lang.c</a>
|
||||||
<A HREF="http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=795%40nsc.UUCP&rnum=10&filter=0">typo
|
inviting people to try and out obfuscate the UN*X source code we had just been working on.</p>
|
||||||
correction</A>.
|
|
||||||
Thus began the tradition of putting typos in the contest rules and
|
|
||||||
guidelines ... to make them more obfuscated of course! :-)
|
|
||||||
|
|
||||||
<P>
|
<p>BTW: I (Landon Curt Noll) had to post this <a href="http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=795%40nsc.UUCP&rnum=10&filter=0">typo
|
||||||
|
correction</a>.
|
||||||
|
Thus began the tradition of putting typos in the contest rules and guidelines
|
||||||
|
... to make them more obfuscated of course! :-)</p>
|
||||||
|
|
||||||
BTW:
|
<p>BTW: This posting was made back in the days when AT&T was the evil giant.
|
||||||
This posting was made back in the days when AT&T was the evil giant.
|
Now, Microsoft makes AT&T look mild and kind in comparison. :-( (IMHO) ).</p>
|
||||||
Now, Microsoft makes AT&T look mild and kind in comparison. :-( (IMHO) ).
|
|
||||||
|
|
||||||
<P>
|
<p>BTW: See the story about the '<a href="/1993/mills/mills.hint">Bill Gates</a>' award. :-)</p>
|
||||||
|
|
||||||
BTW:
|
<p>OK, back to the story.</p>
|
||||||
See the story about the ''
|
|
||||||
<A HREF="/1993/mills/README.md">Bill Gates</A>'' award. :-)
|
|
||||||
|
|
||||||
</BLOCKQUOTE>
|
<p>We (Larry and I) received a number of entries by email.
|
||||||
|
|
||||||
<P>
|
|
||||||
|
|
||||||
OK, back to the story.
|
|
||||||
We (Larry and I) received a number of entries by email.
|
|
||||||
When we began to receive messages from outside of the US, Larry and I
|
When we began to receive messages from outside of the US, Larry and I
|
||||||
decided to include International in the name.
|
decided to include International in the name.</p>
|
||||||
The
|
|
||||||
<A HREF="http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=837%40nsc.UUCP&rnum=2&filter=0">1st IOCCC winners</A>
|
|
||||||
were posted on 17 April 1984.
|
|
||||||
|
|
||||||
<BLOCKQUOTE>
|
<p>The
|
||||||
|
<a href="http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=837%40nsc.UUCP&rnum=2&filter=0">1st IOCCC winners</a>
|
||||||
|
were posted on 17 April 1984.</p>
|
||||||
|
|
||||||
There were 4 winners in 1984:
|
<p>There were 4 winners in 1984:</p>
|
||||||
|
|
||||||
<OL>
|
<ol>
|
||||||
<LI> <A
|
<li><a href="http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=842%40nsc.UUCP&rnum=8&filter=0">(dis)honorable mention</a></li>
|
||||||
HREF="http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=842%40nsc.UUCP&rnum=8&filter=0"><dis>honorable
|
<li><a href="http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=843%40nsc.UUCP&rnum=7&filter=0">3rd place</a></li>
|
||||||
mention</A>
|
<li><a href="http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=844%40nsc.UUCP&rnum=6&filter=0">2nd place</a></li>
|
||||||
<LI> <A
|
<li><a href="http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=845%40nsc.UUCP&rnum=5&filter=0">1st place</a></li>
|
||||||
HREF="http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=843%40nsc.UUCP&rnum=7&filter=0">3rd
|
</ol>
|
||||||
place</A>
|
|
||||||
<LI> <A
|
|
||||||
HREF="http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=844%40nsc.UUCP&rnum=6&filter=0">2nd
|
|
||||||
place</A>
|
|
||||||
<LI> <A
|
|
||||||
HREF="http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=845%40nsc.UUCP&rnum=5&filter=0">1st
|
|
||||||
place</A>
|
|
||||||
</OL>
|
|
||||||
|
|
||||||
BTW:
|
|
||||||
The <dis>honorable
|
<p>BTW: The (dis)honorable mention wished to remain anonymous.
|
||||||
mention wished to remain anonymous.
|
|
||||||
While many have asked who it was, we have continued to follow the
|
While many have asked who it was, we have continued to follow the
|
||||||
author's wish to remain anonymous.
|
author's wish to remain anonymous.</p>
|
||||||
A few years ago, we asked the author if they still wanted to remain anonymous.
|
|
||||||
They said: ''<I>Yes, I want to keep my anonymity.
|
|
||||||
But you can tell them that I am a well known for my connection to the
|
|
||||||
C language"</I>''.
|
|
||||||
It was not until 2001 that another
|
|
||||||
<A HREF="/years.html#2001_anonymous">anonymous
|
|
||||||
entry</A> received an award.
|
|
||||||
|
|
||||||
<P>
|
<p>A few years ago, we asked the author if they still wanted to remain anonymous.
|
||||||
|
They said: '<em>Yes, I want to keep my anonymity. But you can tell them that I am a well known for my connection to the
|
||||||
|
C language"</em>'. It was not until 2001 that another <a href="/years.html#2001_anonymous">anonymous
|
||||||
|
entry</a> received an award.</p>
|
||||||
|
|
||||||
BTW:
|
<p>BTW: The <a href="/years.html#1984_mullender">1984 winner</a> remains one of my (Landon
|
||||||
The
|
Curt Noll) all time favorites.</p>
|
||||||
<A HREF="/years.html#1984_mullender">1984 winner</A>
|
|
||||||
remains one of my (Landon Curt Noll) all time favorites.
|
|
||||||
|
|
||||||
</BLOCKQUOTE>
|
<p>The name used in the posting of the <a href="http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=837%40nsc.UUCP&rnum=2&filter=0">1st IOCCC
|
||||||
|
winner</a>
|
||||||
|
posting was <strong>I</strong>nternational <strong>O</strong>bfuscated <strong>C</strong> <strong>C</strong>ode <B>C</B>ontest or
|
||||||
|
<strong>IOCCC</strong> for short.</p>
|
||||||
|
|
||||||
The name used in the posting of the
|
<p>The posting said '<em>1st annual</em>', so in 1985 we held the <a href="/years.html#1985">2nd IOCCC contest</a>
|
||||||
<A HREF="http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=837%40nsc.UUCP&rnum=2&filter=0">1st
|
and the tradition continues as the longest running contest on the Internet.</p>
|
||||||
IOCCC winner</A>
|
|
||||||
posting was <B>I</B>nternational <B>O</B>bfuscated <B>C</B> <B>C</B>ode
|
|
||||||
<B>C</B>ontest or <B>IOCCC</B> for short.
|
|
||||||
|
|
||||||
<P>
|
<p>P.S. Part of the inspiration for making the IOCCC a contest goes to the
|
||||||
The posting said ''<I>1st annual</I>'',
|
<a href="http://www.bulwer-lytton.com/">Bulwer-Lytton fiction contest</a>.</p>
|
||||||
so in 1985 we held the
|
|
||||||
<A HREF="/years.html#1985">2nd IOCCC contest</A>
|
|
||||||
and the tradition continues as the longest running contest
|
|
||||||
on the Internet.
|
|
||||||
|
|
||||||
<P>
|
<p><P></p>
|
||||||
|
|
||||||
P.S. Part of the inspiration for making the IOCCC a contest goes to the
|
<p>P<sup>2</sup>.S. See the
|
||||||
<A HREF="http://www.bulwer-lytton.com/">Bulwer-Lytton fiction contest</A>.
|
<a href="/all/README">overall README</a>
|
||||||
|
for more details.</p>
|
||||||
|
|
||||||
<P>
|
<p><TABLE><TR>
|
||||||
|
|
||||||
P^2.S. See the
|
|
||||||
<A HREF="/all/README">overall README</A>
|
|
||||||
for more details.
|
|
||||||
|
|
||||||
</BLOCKQUOTE>
|
|
||||||
|
|
||||||
<HR>
|
|
||||||
|
|
||||||
<!-- Authored by: <A HREF="http://www.sfik.com">sc</A> -->
|
|
||||||
|
|
||||||
<TABLE><TR>
|
|
||||||
<TD><a rel="license" href="https://creativecommons.org/licenses/by-sa/3.0/"><img alt="Creative Commons License" style="border-width:0" src="/png/by-sa-3.0-88x31.png" /></a></TD>
|
<TD><a rel="license" href="https://creativecommons.org/licenses/by-sa/3.0/"><img alt="Creative Commons License" style="border-width:0" src="/png/by-sa-3.0-88x31.png" /></a></TD>
|
||||||
<TD><P>© Copyright 1984-2020,
|
<TD><P>© Copyright 1984-2020,
|
||||||
<A HREF="/judges.html">Leo Broukhis, Landon Curt Noll</A>
|
<a href="/judges.html">Leo Broukhis, Landon Curt Noll</a>
|
||||||
- All rights reserved<BR>
|
- All rights reserved<br>
|
||||||
This work is licensed under a <a rel="license" href="https://creativecommons.org/licenses/by-sa/3.0/">Creative Commons Attribution-ShareAlike 3.0 Unported License</a>.</P></TD>
|
This work is licensed under a <a rel="license" href="https://creativecommons.org/licenses/by-sa/3.0/">Creative Commons Attribution-ShareAlike 3.0 Unported License</a>.</P></TD>
|
||||||
<TD> <!--<a href="https://validator.w3.org/check?uri=referer"><img src="https://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01 Transitional" height="31" width="88"></a>--></TD>
|
<TD> <!--<a href="https://validator.w3.org/check?uri=referer"><img src="https://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01 Transitional" height="31" width="88"></a>--></TD>
|
||||||
</TR></TABLE>
|
</TR></TABLE></p>
|
||||||
|
|
||||||
|
|
||||||
</BODY>
|
|
||||||
</HTML>
|
|
||||||
@@ -0,0 +1,433 @@
|
|||||||
|
<HTML>
|
||||||
|
<BODY TEXT="#000000">
|
||||||
|
|
||||||
|
<center><img alt="IOCCC" SRC="png/ioccc.png"></center><br>
|
||||||
|
<center><font size="6"><I>The International Obfuscated C Code Contest </I></font></center><br>
|
||||||
|
<center><P>[ <A HREF="judges.html">The judges</A> |
|
||||||
|
<A HREF="main.html">IOCCC home page</A> |
|
||||||
|
<A HREF="main.html#enter">How to enter</A> |
|
||||||
|
<B>FAQ</B> |
|
||||||
|
<A HREF="contact.html">Contacting the IOCCC</A>
|
||||||
|
<br>
|
||||||
|
<A HREF="main.html#new">IOCCC news</A> |
|
||||||
|
<A HREF="winners.html">People who have won</A> |
|
||||||
|
<A HREF="years.html">Winning entries</A> ]</P></center>
|
||||||
|
<br>
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
# The IOCCC FAQ
|
||||||
|
|
||||||
|
## Q:</font> How many entries do you receive each year?
|
||||||
|
|
||||||
|
By tradition, we do not say.
|
||||||
|
|
||||||
|
## Q: How many judging rounds do you have?
|
||||||
|
Are you trying to trick us? We will not say that either.
|
||||||
|
|
||||||
|
## Q: I cannot get entry XYZZY from year 19xx to compile!
|
||||||
|
|
||||||
|
Some winners, particularly winners from long ago, no longer compile on more
|
||||||
|
modern systems because the C language has evolved (i.e. the modern C compilers
|
||||||
|
are much more strict in what they accept as a valid program), or the entry
|
||||||
|
depended on operation system and library features that where common back then
|
||||||
|
but are different/missing today.
|
||||||
|
|
||||||
|
E.g. it is highly unlikely that you'll be able to execute
|
||||||
|
[1984/mullender](years.html#1984/mullender) on a computer you're using to read
|
||||||
|
this FAQ.
|
||||||
|
|
||||||
|
## Q: I found a bug in a previous winner, what should I do?
|
||||||
|
|
||||||
|
We do not 'maintain' the contest winners. The code is made available on an 'AS
|
||||||
|
IS' basis. If you have a FIX for
|
||||||
|
a entry, we suggest that you try and email it to the authors and to CC:
|
||||||
|
us using the instructions on the
|
||||||
|
[contacting the IOCCC Judges](contact.hml) page.
|
||||||
|
|
||||||
|
IF you have a FIX, and IF the author does not object, and IF your fix
|
||||||
|
looks reasonable, we will add a web link to a copy of your email
|
||||||
|
for others to see.
|
||||||
|
|
||||||
|
## Q: Are there types of entries that are submitted so frequently that the judges get tired of them?
|
||||||
|
|
||||||
|
|
||||||
|
Yes, there are types of entries that show up over and over again.
|
||||||
|
|
||||||
|
The [guidelines](guidelines.html) say:
|
||||||
|
|
||||||
|
> _We tend to dislike programs that: are similar to previous winners_
|
||||||
|
|
||||||
|
We like variety. However too often we see (please look at the winning examples
|
||||||
|
given to be aware of the level of the competition):
|
||||||
|
|
||||||
|
### maze generator
|
||||||
|
- [1985/shapiro](years.html#1985_shapiro)
|
||||||
|
|
||||||
|
- [1991/buzzard](years.html#1991_buzzard)
|
||||||
|
|
||||||
|
- [1995/cdua](years.html#1995_cdua)
|
||||||
|
|
||||||
|
- [1995/dodsond2](years.html#1995_dodsond2)
|
||||||
|
|
||||||
|
- [1998/bas1](years.html#1998_bas1)
|
||||||
|
|
||||||
|
### tic-tac-toe game
|
||||||
|
|
||||||
|
- [1991/westley](years.html#1991_westley)
|
||||||
|
|
||||||
|
- [1996/jonth](years.html#1996_jonth)
|
||||||
|
|
||||||
|
- [2020/carlini](years.html#2020_carlini)
|
||||||
|
|
||||||
|
### solitaire/Othello game
|
||||||
|
|
||||||
|
- [1987/lievaart](years.html#1987_lievaart)
|
||||||
|
|
||||||
|
- [1994/dodsond1](years.html#1994_dodsond1)
|
||||||
|
|
||||||
|
|
||||||
|
### generating small primes (below is the list of all prime related winners)
|
||||||
|
|
||||||
|
- [1985/august](years.html#1985_august)
|
||||||
|
|
||||||
|
- [1988/applin](years.html#1988_applin)
|
||||||
|
|
||||||
|
- [1994/weisberg](years.html#1994_weisberg)
|
||||||
|
|
||||||
|
- [1995/makarios](years.html#1995_makarios)
|
||||||
|
|
||||||
|
- [1996/dalbec](years.html#1996_dalbec)
|
||||||
|
|
||||||
|
- [2000/bellard](years.html#2000_bellard)
|
||||||
|
|
||||||
|
_As you can see, just a list of primes (let alone small primes) does not cut it
|
||||||
|
anymore._
|
||||||
|
|
||||||
|
### self reproducing program
|
||||||
|
|
||||||
|
- [1990/scjones](years.html#1990_scjones)
|
||||||
|
|
||||||
|
- [1994/smr](years.html#1994_smr) - _do not claim your program is the smallest one without seeing it!
|
||||||
|
|
||||||
|
- [2000/dhyang](years.html#2000_dhyang) - _unless you beat this one, your chances are slim_
|
||||||
|
|
||||||
|
### entries that just print "Hello, world!"
|
||||||
|
|
||||||
|
- [1984/anonymous](years.html#1984_anonymous)
|
||||||
|
|
||||||
|
- [1985/applin](years.html#1985_applin)
|
||||||
|
|
||||||
|
- [1986/applin](years.html#1986_applin)
|
||||||
|
|
||||||
|
- [1986/holloway](years.html#1986_holloway)
|
||||||
|
|
||||||
|
- [1989/jar.1](years.html#1989_jar.1)
|
||||||
|
|
||||||
|
- [1992/lush](years.html#1992_lush)
|
||||||
|
|
||||||
|
- [2000/tomx](years.html#2000_tomx)
|
||||||
|
|
||||||
|
_**it's so 20th century...**_
|
||||||
|
|
||||||
|
### entries that use some complex state machine/table to print something
|
||||||
|
|
||||||
|
- [1988/isaak](years.html#1988_isaak)
|
||||||
|
|
||||||
|
- [1988/phillipps](years.html#1988_phillipps)
|
||||||
|
|
||||||
|
### rot13
|
||||||
|
|
||||||
|
- [1985/sicherman](years.html#1985_sicherman)
|
||||||
|
|
||||||
|
- [1989/westley](years.html#1989_westley)
|
||||||
|
|
||||||
|
- [1990/dg](years.html#1990_dg)
|
||||||
|
|
||||||
|
- [1991/fine](years.html#1991_fine)
|
||||||
|
|
||||||
|
### **pi** or **e** computation</font>
|
||||||
|
|
||||||
|
- [1986/august](years.html#1986_august)
|
||||||
|
|
||||||
|
- [1988/robison](years.html#1988_robison)
|
||||||
|
|
||||||
|
- [1988/westley](years.html#1988_westley)
|
||||||
|
|
||||||
|
- [1989/roemer](years.html#1989_roemer)
|
||||||
|
|
||||||
|
HINT: It is not fatal to send in those types of entries, it is just MUCH
|
||||||
|
HARDER to win. Such an entry would have to do something really unique and
|
||||||
|
interesting to even make it into the final judging rounds. Entries that
|
||||||
|
re-use these 'worn out' themes frequently lose to other entries that do
|
||||||
|
something different.
|
||||||
|
|
||||||
|
HINT: If you really MUST send in an entry based on an 'over-used theme',
|
||||||
|
be sure that it is obfuscated in several new and novel ways. Be sure to clearly
|
||||||
|
explain near the beginning of your remarks why you are submitting a entry
|
||||||
|
based on an 'over-used theme' and why the judges should not simply toss
|
||||||
|
it out as being boring.
|
||||||
|
|
||||||
|
## Q: What should I write in the 'remarks' (remarks.md) section of my entry, if anything at all?
|
||||||
|
|
||||||
|
As much or as little as you wish.
|
||||||
|
|
||||||
|
### What helps:
|
||||||
|
|
||||||
|
- explaining what your entry does
|
||||||
|
|
||||||
|
- how to entice it to do what it is supposed to do
|
||||||
|
|
||||||
|
- what obfuscations are used
|
||||||
|
|
||||||
|
- what are the limitations of your entry in respect of portability and/or input data
|
||||||
|
|
||||||
|
- how it works (if you are really condescending)
|
||||||
|
|
||||||
|
### What does not help:
|
||||||
|
|
||||||
|
- admitting that your entry is not very obfuscated (you see, the contest is
|
||||||
|
called <B>IOCCC</B>, not <B>INVOCCC</B>); but even if you do not admit it, not
|
||||||
|
very obfuscated entries have a minuscule chance to win (although
|
||||||
|
[2000/tomx](years.html#2000_tomx) is a notable counterexample)
|
||||||
|
|
||||||
|
- mentioning your name or any identifying information in the remark section (or
|
||||||
|
in the C code for that matter) - we like to be unbiased during the judging
|
||||||
|
rounds; we look at the author name only if an entry wins
|
||||||
|
|
||||||
|
- leaving the remark section empty
|
||||||
|
|
||||||
|
## Q: I am confused: what should I put to the 'build' section?
|
||||||
|
|
||||||
|
The 'build' section must contain UNIX shell-style commands to compile your C
|
||||||
|
language entry **in a file named prog.c** and produce an executable file. More than one command is allowed,
|
||||||
|
as far as the size rule is followed.
|
||||||
|
Usually one (or more) of these commands will be an invocation of
|
||||||
|
a C compiler (use **cc** or <B>gcc</B>), but there may be exceptions
|
||||||
|
(or not anymore, see [2000/tomx](years.html#2000_tomx)).
|
||||||
|
|
||||||
|
If your entry depends on a particular source file name during compilation or execution, you will have to put a line
|
||||||
|
|
||||||
|
cp prog.c desired_name.c
|
||||||
|
|
||||||
|
before the compiler invocation line.
|
||||||
|
|
||||||
|
If in doubt, put
|
||||||
|
|
||||||
|
cc -o prog prog.c
|
||||||
|
|
||||||
|
in the 'build' section.
|
||||||
|
|
||||||
|
Note however that with the [mkiocccentry
|
||||||
|
tool](https://github.com/ioccc-src/mkiocccentry) we have an example Makefile
|
||||||
|
which you should update, using the instructions above if necessary.
|
||||||
|
|
||||||
|
|
||||||
|
## Q: What happened to the winners for 1997, 1999 2002, 2003, 2007 - 2010, 2016, 2017, 2021 and 2022 ?
|
||||||
|
|
||||||
|
There are none. There was no IOCCC in those years.
|
||||||
|
|
||||||
|
## Q: Why don't you publish non-winners?
|
||||||
|
|
||||||
|
Because the publication on the IOCCC site **_IS_**
|
||||||
|
the award! Anyone is free to put their IOCCC hopefuls, lookalikes and/or
|
||||||
|
non-winners on their web page for everyone to see.
|
||||||
|
|
||||||
|
## Q: How much time does it take to judge the contest?
|
||||||
|
|
||||||
|
It takes a fair amount of time to setup, run, answer email, process entries,
|
||||||
|
review entries, trim down the set entries to a set of winners, doing the
|
||||||
|
write-up of the winners, announcing the winners, reviewing final edits of the
|
||||||
|
winning entry set, posting the winners, being flamed :-), tell folks who send in
|
||||||
|
late entries to wait until the next contest, etc... It takes a few weekends and
|
||||||
|
a number nights of study and work ... which is hard given that we are busy with
|
||||||
|
many other activities as well.
|
||||||
|
|
||||||
|
Note that we do not contact the author if an entry does not compile or does not
|
||||||
|
work as advertised, we might attempt to fix obvious compilation problems or
|
||||||
|
incompatibilities, but no more than that - so be sure that your entry does work
|
||||||
|
on at least a couple different platforms, at least one of them being UNIX or
|
||||||
|
POSIX-conforming.
|
||||||
|
|
||||||
|
|
||||||
|
## Q: What platform should I assume for my entry?
|
||||||
|
|
||||||
|
Your entry must compile with GCC and run under at least one flavor of UNIX (e.g.
|
||||||
|
Linux or Solaris). To improve chances to win, it should work under both BSD and
|
||||||
|
SysV style UNIX (think <B>stty cbreak</B>), and should not depend on endianness.
|
||||||
|
If it can compile and run on Windows and/or Mac (see
|
||||||
|
[2000/thadgavin](/years.html#2000_thadgavin) for one example, amongst others), even better.
|
||||||
|
|
||||||
|
## Q: I would like to mirror the IOCCC web site. May I do so?
|
||||||
|
|
||||||
|
We are not accepting mirror requests at this time, sorry.
|
||||||
|
|
||||||
|
## Q: I want to publish some parts of the IOCCC in an article, or book, or newsletter, or use then in class/instructional notes, or quote from the IOCCC. May I do so?
|
||||||
|
|
||||||
|
Please ask the IOCCC judges first. Please send your request using the
|
||||||
|
instructions on the [contacting the IOCCC Judges](/contact.html) page.
|
||||||
|
|
||||||
|
## Q: What are the grand prize / Best of Show winners?
|
||||||
|
|
||||||
|
In 1984-1987, the grand prize winners are:
|
||||||
|
|
||||||
|
- [1984/mullender](years.html#1984_mullender)
|
||||||
|
|
||||||
|
- [1985/shapiro](years.html#1985_shapiro)
|
||||||
|
|
||||||
|
- [1986/wall](years.html#1986_wall)
|
||||||
|
|
||||||
|
- [1987/lievaart](years.html#1987_lievaart)
|
||||||
|
|
||||||
|
Starting from 1988, the entry we liked the most in that year is called
|
||||||
|
"Best of Show". Here are the "Best of Show" entries:
|
||||||
|
|
||||||
|
- [1988/applin](years.html#1988_applin)
|
||||||
|
|
||||||
|
- [1989/jar.2](years.html#1989_jar.2)
|
||||||
|
|
||||||
|
- [1990/theorem](years.html#1990_theorem)
|
||||||
|
|
||||||
|
- [1991/brnstnd](years.html#1991_brnstnd)
|
||||||
|
|
||||||
|
- [1992/vern](years.html#1992_vern)
|
||||||
|
|
||||||
|
- [1996/august](years.html#1996_august)
|
||||||
|
|
||||||
|
- [1998/banks](years.html#1998_banks)
|
||||||
|
|
||||||
|
- [2000/jarijyrki](years.html#2000_jarijyrki)
|
||||||
|
|
||||||
|
- [2020/carlini](years.html#2020_carlini)
|
||||||
|
|
||||||
|
|
||||||
|
In 1993, 1994 and 1995 the judges were unable to select a clear overall
|
||||||
|
winner. So to give a nod to the entry that had the highest approval ranking
|
||||||
|
from the judges, they used the following awards:
|
||||||
|
|
||||||
|
- [1993/rince](years.html#1993_rince) - Most Well Rounded
|
||||||
|
|
||||||
|
- [1994/shapiro](years.html#1994_shapiro) - Most Well Rounded
|
||||||
|
|
||||||
|
- [1995/leo](years.html#1995_leo) - Best Use of Obfuscation
|
||||||
|
|
||||||
|
These could be considered the 'best entry' for those years with 1 or
|
||||||
|
more other entries that came in close behind.
|
||||||
|
|
||||||
|
## Q: I managed to get entry XYZZY from year 19xx to compile; now it fails to run!
|
||||||
|
|
||||||
|
switch(19xx/XYZZY) {
|
||||||
|
|
||||||
|
- case [1984/mullender](years.html#1984_mullender): try
|
||||||
|
|
||||||
|
main(){int i=512;do write(1," :-)\b\b\b\b",9),usleep(i);while(--i);}
|
||||||
|
|
||||||
|
instead. Enable reverse wraparound in your xterm window for best results.
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
|
- case [1991/davidguy](years.html#1991_davidguy): disable access
|
||||||
|
control of your X server (**xhost +**). If it does not help (or if you
|
||||||
|
see black screen), restart the X server without access control and with visual
|
||||||
|
depth of 8 bits or less.
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
|
- default: Try enabling <TT>-fwritable-strings</TT> for GCC
|
||||||
|
or its equivalent for other compilers.
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
## Q: How did the IOCCC get started?
|
||||||
|
|
||||||
|
One day (23 March 1984 to be exact), Larry Bassel and I (Landon Curt
|
||||||
|
Noll) were working for National Semiconductor's Genix porting group, we
|
||||||
|
were both in our offices trying to fix some very broken code.
|
||||||
|
|
||||||
|
Larry had been trying to fix a bug in the classic Bourne shell (C code #defined
|
||||||
|
to death to sort of look like Algol) and I had been working on the finger
|
||||||
|
program from early BSD (a bug ridden finger implementation to be sure).
|
||||||
|
|
||||||
|
We happened to both wander (at the same time) out to the hallway
|
||||||
|
in Building 7C to clear our heads.
|
||||||
|
|
||||||
|
We began to compare notes: '_You won't believe the code I am trying to fix_'.
|
||||||
|
|
||||||
|
And: '_Well you cannot imagine the brain damage level of the code I'm trying to
|
||||||
|
fix'_.
|
||||||
|
|
||||||
|
As well as: '_It's more than bad code, the author really had to try to make it
|
||||||
|
this bad!_
|
||||||
|
|
||||||
|
After a few minutes we wandered back into my office where I posted a
|
||||||
|
[flame to to
|
||||||
|
net.lang.c](http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=789%40nsc.UUCP&rnum=3&filter=0")
|
||||||
|
inviting people to try and out obfuscate the UN\*X source code we had just been working on.
|
||||||
|
|
||||||
|
BTW: I (Landon Curt Noll) had to post this [typo
|
||||||
|
correction](http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=795%40nsc.UUCP&rnum=10&filter=0).
|
||||||
|
Thus began the tradition of putting typos in the contest rules and guidelines
|
||||||
|
... to make them more obfuscated of course! :-)
|
||||||
|
|
||||||
|
BTW: This posting was made back in the days when AT&T was the evil giant.
|
||||||
|
Now, Microsoft makes AT&T look mild and kind in comparison. :-( (IMHO) ).
|
||||||
|
|
||||||
|
BTW: See the story about the '[Bill Gates](/1993/mills/mills.hint)' award. :-)
|
||||||
|
|
||||||
|
|
||||||
|
OK, back to the story.
|
||||||
|
|
||||||
|
We (Larry and I) received a number of entries by email.
|
||||||
|
When we began to receive messages from outside of the US, Larry and I
|
||||||
|
decided to include International in the name.
|
||||||
|
|
||||||
|
The
|
||||||
|
[1st IOCCC winners](http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=837%40nsc.UUCP&rnum=2&filter=0)
|
||||||
|
were posted on 17 April 1984.
|
||||||
|
|
||||||
|
|
||||||
|
There were 4 winners in 1984:
|
||||||
|
|
||||||
|
1. [(dis)honorable mention](http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=842%40nsc.UUCP&rnum=8&filter=0)
|
||||||
|
2. [3rd place](http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=843%40nsc.UUCP&rnum=7&filter=0)
|
||||||
|
3. [2nd place](http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=844%40nsc.UUCP&rnum=6&filter=0)
|
||||||
|
4. [1st place](http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=845%40nsc.UUCP&rnum=5&filter=0)
|
||||||
|
|
||||||
|
BTW: The (dis)honorable mention wished to remain anonymous.
|
||||||
|
While many have asked who it was, we have continued to follow the
|
||||||
|
author's wish to remain anonymous.
|
||||||
|
|
||||||
|
A few years ago, we asked the author if they still wanted to remain anonymous.
|
||||||
|
They said: '_Yes, I want to keep my anonymity. But you can tell them that I am a well known for my connection to the
|
||||||
|
C language"_'. It was not until 2001 that another [anonymous
|
||||||
|
entry](/years.html#2001_anonymous) received an award.
|
||||||
|
|
||||||
|
BTW: The [1984 winner](/years.html#1984_mullender) remains one of my (Landon
|
||||||
|
Curt Noll) all time favorites.
|
||||||
|
|
||||||
|
|
||||||
|
The name used in the posting of the [1st IOCCC
|
||||||
|
winner](http://groups.google.com/groups?q=Obfuscated&hl=en&lr=&ie=UTF-8&as_drrb=b&as_mind=1&as_minm=1&as_miny=1983&as_maxd=18&as_maxm=4&as_maxy=1984&selm=837%40nsc.UUCP&rnum=2&filter=0)
|
||||||
|
posting was **I**nternational **O**bfuscated **C** **C**ode <B>C</B>ontest or
|
||||||
|
**IOCCC** for short.
|
||||||
|
|
||||||
|
The posting said '_1st annual_', so in 1985 we held the [2nd IOCCC contest](/years.html#1985)
|
||||||
|
and the tradition continues as the longest running contest on the Internet.
|
||||||
|
|
||||||
|
P.S. Part of the inspiration for making the IOCCC a contest goes to the
|
||||||
|
[Bulwer-Lytton fiction contest](http://www.bulwer-lytton.com/).
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
P^2.S. See the
|
||||||
|
[overall README](/all/README)
|
||||||
|
for more details.
|
||||||
|
|
||||||
|
<TABLE><TR>
|
||||||
|
<TD><a rel="license" href="https://creativecommons.org/licenses/by-sa/3.0/"><img alt="Creative Commons License" style="border-width:0" src="/png/by-sa-3.0-88x31.png" /></a></TD>
|
||||||
|
<TD><P>© Copyright 1984-2020,
|
||||||
|
[Leo Broukhis, Landon Curt Noll](/judges.html)
|
||||||
|
- All rights reserved<br>
|
||||||
|
This work is licensed under a <a rel="license" href="https://creativecommons.org/licenses/by-sa/3.0/">Creative Commons Attribution-ShareAlike 3.0 Unported License</a>.</P></TD>
|
||||||
|
<TD> <!--<a href="https://validator.w3.org/check?uri=referer"><img src="https://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01 Transitional" height="31" width="88"></a>--></TD>
|
||||||
|
</TR></TABLE>
|
||||||
Reference in new issue
Block a user