Entering the IOCCC: the bare minimum you need to know
To submit your code to the IOCCC, you MUST follow these steps:
0. Verify that the IOCCC is pending or open for submissions
First, check the “current status of the IOCCC” page to see current contest status. You may only register for the IOCCC when the IOCCC is either pending or open.
You may only submit your entries to the IOCCC when the IOCCC is open.
See also the IOCCC news for more information.
1. Read the latest IOCCC rules and review the IOCCC guidelines
Please pay close attention to the official IOCCC rules.
You are also highly encouraged to review the official IOCCC guidelines as they contain important suggestions, useful hints, and IOCCC humor. :-)
2. Register for the IOCCC
IMPORTANT: You may only register for the IOCCC when the IOCCC is either pending or open. See “current status of the IOCCC” page for details.
If the contest is pending or open, then follow the directions on “how to register for the IOCCC”.
3. Wait for your submit server username and initial password
Once you have registered for the IOCCC, and once the contest is OPEN, one of the IOCCC judges will send via email within a few days, your IOCCC submit server Username and Initial password.
PLEASE NOTE: After registering, it could take up to a few days before an IOCCC judge sends the that email, so PLEASE be patient. This means that you should GIVE YOURSELF TIME before the contest closes!
IMPORTANT NOTE: Unless the contest is open, then you will NOT receive your Username and Initial password by email. For example, if the contest is pending, you will have to WAIT UNTIL THE CONTEST IS OPEN.
Please check the “current status of the IOCCC” page and visit the “how to register for the IOCCC” page for detailed instructions.
NOTE: If are having trouble receiving your Username and Initial password, and the CONTEST IS OPEN, and have you checked your spam folder, Contact the IOCCC for assistance.
4. Login to the submit server and change your password
Using the Username and Initial password you receive via email in step 3, you need to login to the IOCCC submit server.
IMPORTANT NOTE: You must change your password WITHIN 72 HOURS from when one of the IOCCC judges sent that email.
NOTE: The IOCCC submit server is only ready for submissions ONLY WHEN THE CONTEST IS open.
Please visit the “change your submit server initial password” page for detailed instructions.
5. Obtain and compile the latest mkiocccentry toolkit
Once the contest is open, download the most recent version of the mkiocccentry toolkit.
IMPORTANT NOTE: While the contest is pending, the mkiocccentry toolkit could change. Once the content is open, be sure you have the latest version installed.
To help you, please see the FAQ on “how to obtain the most recent mkiocccentry” and the FAQ on “compiling mkiocccentry toolkit”, for more details.
6. Run the mkiocccentry tool to form your submission tarball
For more details on mkiocccentry
, what it is, how to obtain it and how to use
it, see the
FAQ on “mkiocccentry”
(especially the
FAQ on “what mkiocccentry is in simple terms,
the
FAQ on”how to use mkiocccentry“)
and the mkiocccentry section in the
guidelines.
mkiocccentry work_dir prog.c Makefile remarks.md [file ...]
where:
work_dir
directory where the entry directory and tarball are formed
prog.c
path to the C source for your entry
Makefile
Makefile to build (make all) and cleanup (make clean & make clobber)
remarks.md
Remarks about your entry in markdown format: see the FAQ on “remarks.md” for more info.
[file …]
Optional extra data files to include with your entry
NOTE: Please see our IOCCC markdown guide for important information on using markdown in the IOCCC.
NOTE: It is NOT necessary to install the tools to use them as you can run
the tools from the top of the mkiocccentry
repo directory just fine, though
you’ll have to use the form of ./mkiocccentry
instead of just mkiocccentry
.
However, installing it will make it easier for you as you can run it from your
submission’s directory. See the
FAQ on “installing mkiocccentry”
at the mkiocccentry repo.
If the mkiocccentry
tool indicates that there is a problem with your entry,
especially if it identifies a Rule 2, or any other
rule, related problem, you are strongly encouraged to revise and correct
your entry and then re-run the mkiocccentry
tool.
If you choose to risk violating rules, be sure and explain your reason
for doing so in your remarks.md
file.
See also Rule 17!
7. Upload your submission to the IOCCC submit server
The screenshots on the “how to upload your submission to the IOCCC” page might be a helpful guide when using the IOCCC submit server.
NOTE: You may modify a previous uploaded submission, if the contest is open, by replacing the file in a slot. Please use the mkiocccentry tool to rebuild the compressed tarball as this will update the timestamps and the filename generated, as well as packaging any changes: making it clear to the IOCCC judges that you intend to replace the older upload.
IMPORTANT NOTE: The IOCCC submit server is only ready for submissions ONLY WHEN THE CONTEST IS open.
See the “current status of the IOCCC” page for details on the contest status.
IMPORTANT NOTE: When the contest is closed, the IOCCC submit server might be offline and unreachable as a website.
NOTE: if you do need to update a submission, you might find the FAQ on “how to not have to re-enter information more than once” useful.