Replies: 3 comments 20 replies
-
|
Did not know where to upload this, so I started this discussion for stuff. |
Beta Was this translation helpful? Give feedback.
-
|
Oh how wrong they are in the mkiocccentry part ... there is so much more than your tool. And with it it's a lot easier than before. I remember (and I'm sure you do too) having to upload file after file one at a time. I still had to have a directory structure (like now) as otherwise I would have to navigate to various places. I was always afraid I was missing a file and always took a lot of time too. You had to (as you know) put in all your details again. You had to upload the required files to specific slots. None of that is necessary now. It takes mere seconds to update a submission once you form your answers file and it takes mere seconds to upload whereas before it took several minutes. I wonder if this person has ever submitted before because it's a lot easier now, even if you don't use the tools (which is a big risk). At least now you can just upload a single file. Not saying they don't have a right to not like it of course but it used to be much more involved as you know. |
Beta Was this translation helpful? Give feedback.
-
Looking 👀 towards IOCCC29TL;DR IOCCC28 to IOCCC29We can REFINE the rules, guidelines and FAQ for IOCCC29. Such a refinement won't be such a dramatic change to the content as we saw with IOCCC28, but rather will build on the important work that made IOCCC28 possible. We anticipate improvements to how the guidelines are organized as well as some new content to help someone new to the IOCCC get started, among other things. We ask for your feedback, suggestions and ideas 💡, even while IOCCC28 is open. The detailsThe rules and guidelines had a radical number of changes for IOCCC28. The amount of change required was necessary, expected, and was a result of the registration, mkiocccentry toolkit, submit server, and improved internal processes of the IOCCC. Internal IOCCC process improvementsThe changes make to the internal processes of the IOCCC over the last 4 years were EXTREMELY SIGNIFICANT and were VERY IMPORTANT. Among other things, these new internal processes will mean that when the winners of IOCCC28 are announced, there won't be a long delay between the announcement and the source becoming available as there was during the first 40 years of the contest. The winners will be announced by a push of a new During the previous 40 years of the contest, improvements to the winners were confined to communication amongst the winners of the contest and the IOCCC judges. All this happened while the public waited for the results. NOW the new internal processes will mean that winners of the IOCCC28, along with the public, will be able to use the GitHub / git mechanism to correct, bug fix, and enhance how the winning entries of IOCCC28 are presented, compiled and run. The internal procedures over the past 40 years of the contest had a number of manual and semi manual steps that were both error prone and time-consuming. About half of the 4 year delay between IOCCC27 and IOCCC28 was simply devoted to correcting the problems of how the previous contest winners were presented. You might say that half of the delay was due to a "technical debt" (as the expression goes) that had to be paid in order to move the IOCCC forward. With the Great Fork Merge we paid that "technical debt". We owe a collection of significant volunteers a great deal of gratitude for their hard work (thousands of hours of detailed work) in achieving the Great Fork Merge. Probably about a quarter of the 4 year delay between IOCCC27 and IOCCC28 involved building tools that automate and maintain a coherent Official IOCCC website. You can see some this work in the bin tools of the IOCCC winner repo, the submit tools that power the IOCCC submit server, and involve "some other stuff" that "only the IOCCC judges" know about 🕵️ 😉. Of that other stuff that "only the IOCCC judges" know about, a significant portion of the effort between IOCCC27 and IOCCC28 went into changes designed to avoid "single points of failure" (as the expression goes) in tasks that an IOCCC judge had to do. Over the past 40 years, the contest suffered from periods where a super busy (or sometimes a procrastinating) IOCCC judge could stall a critical path and delay the contest. Over the 40 years of the IOCCC, gaps in the contest years were due to a critical path task being delayed because a judge failed to move the contest forward until after a significant amount of time had passed. That's why in the 40 years of the contest we've had only 28 contests. So a number of changes to internal procedures have been designed so that it is extremely likely that we will have a new contest each year This is why we anticipate that while IOCCC28 started at the end of 2024, we remain confident that IOCCC29 will start somewhere near the end of 2025. 🎉 Anticipated changes for IOCCC29We anticipate that the number of change marks in the rules and guidelines for IOCCC29 will be more than "an order magnitude less" (as the expression goes) than they were for IOCCC28. There are a some suggested enhancements for the mkiocccentry toolkit for IOCCC29 that will cause some slight changes in the rules guidelines and more likely FAQ. A number of these will be, we believe, welcome improvements by all. Where there might be room for significant improvement is in how the guidelines are organized. Such a reorganization won't necessarily change the overall content of the guidelines, but rather how they are organized, how they relate to the rules and FAQ. Where there might be room for more significant improvement is in helping someone new to the IOCCC come up to speed and engage with IOCCC29. We started doing this with this page: Entering the IOCCC: the bare minimum you need to know We could've further improved on the concept of that page, however, that would have resulted in another delay in the opening of IOCCC28. So we went with the rules, guidelines, and FAQ as they were for IOCCC28 with the idea that they could be REFINED for IOCCC29. Feedback welcomeAs we look forward to IOCCC29, we request and would value your feedback on the rules, guidelines, FAQ, and related content that we developed for IOCCC28. After every contest, and particularly while the judges are judging submissions, we begin to develop the next contest rules and guidelines. This tradition of refinement by the Judges during the judging period goes back 40 years. With the new IOCCC discord server, and the GitHub feedback mechanism, we invite you to participate in this process as well: even before IOCCC28 is completed. Comments, corrections and suggestions are VERY WELCOME 🙏. UPDATE 0We have opened a discussion thread on the IOCCC Discord server with the above content as part of our "Feedback welcome" initiative. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
@lcn2 From Discord comments here's a cleaned up summary document for review:
(expanding the .md file for easier viewing)
Entering the IOCCC: The Good Parts Version
The Good
The Rules & Guidelines have been always pretty straight forward. In particular:
Rule 1 An entry must be working C program.
Rule 2 A program's maximum gross size 4993 (2a) and net size 2503 (2b). See the
iocccsizetool.Rule 4 Can we call
you Bruceyour programprog.c?Rule 5 A program must not cause harm
or through inaction allow harmto the System.Rule 7 You wrote it, you own it, and its an original work. See Rule 18.
Rule 10 Look Dad! No hands! Automated build using
bash,gmake,gcc,clang, under a SUS environment.Rule 11 Your program does not require special privileges. See Rule 5.
Rule 18 You're happy to share your program for the greater good.
Many of the other Rules cover restrictions and administrative concerns. They should be reviewed in detail at some point before your submit your first entry in any given contest, since the R&G can change between contests.
The Bad
Packaging summary, assuming a simple layout:
You have a project directory, probably a git repository.
In it you have a
Makefile,prog.c,remarks.md, anddemo0.txt(or other input samples).Edit your
Makefileto supply the minimum set of targets:all,clean,clobber, andtry. See theMakefile.sampleEdit your
remarks.md: any special build notes, documentation, any special requests for rule allowances (other than Rule 2a & 2b), some commentary as to what the program does and why its special, limitations such as known bugs and ignored cases. DO NOT reveal your identity in theremarks.mdnor other included material.Your program might need some input to work with, like a demonstration example. The Judges will likely create their own test input to play & push the edges. Example input is not required, but doesn't hurt to show how to "turn the knobs". You might need more than one demo, which is fine.
Each contest you must register and get back your UUID user ID by email. The Judges DO NOT want to know who you are until after they pick the winners, so for now you are a number, just not Number 6 or Number 1.
git clone https://github.com/ioccc-src/mkiocccentry.gitthe tools. You don't necessarily need them, you can do much of the work by hand, but its a lot fuss, plus the tools come withiocccsizethat helps measure Rule 2b conformance as you develop. Make and install the tools some place.Use
mkiocccentryto build you submission tarball. There are 10 slots for ten entries numbered [0..9]. Most people submit one entry. Follow the instructions and answer the questions.Upload the tarball to https://submit.ioccc.org/ during the contest submission window; check the dates on the web site, though the submission server will refuse you when the contest is closed. You can fix your submission and resubmit updates to the submission server as many times as you like during the contest open period.
That's pretty much it in a nut shell. If you start to do more clever complex submissions, then the
mkiocccentrysteps might get more involved, but typically a clear directory structure helps (dot-files and dot-dircetories are ignored and cannot be part of a submission). See Rule 17 and Guidelines concerningmkiocccentry.The Ugly
Beta Was this translation helpful? Give feedback.
All reactions