Fixed `#todo` link in `2024/macke/README.md`.
Improved markdown paragraph size of `inc/rules.*.hdr` files.
Fixed FAQ link generated by `bin/status2html.sh` for the pending state.
Improved the markdown written by `bin/status2html.sh` for various states.
Changed `bin/status2html.sh` VERSION to "2.0.2 2025-12-02".
Changed IOCCC Rules to version **29.15 2025-12-01**.
Changed IOCCC Guidelines to version **29.08 2025-12-02**.
Changed IOCCC FAQ to version **29.05 2025-12-02**..
Ran `make update` to perform the above.
Fixed broken links.
Restored text that was accidentally removed during the emergency
recovery of guidelines some days back.
Moved some text that was in the wrong place.
The formatting of the markdown files was changed for shorter lines (for
those viewing the markdown in a viewer rather than a web browser).
Added a <div id> to 2024/index.html so the guidelines (or maybe rules)
could link to the important note from the judges in IOCCC28.
Restore rewording of rule 2b done by @SirWumpus.
Fixed links between rules and guidelines.
Add guideline about "Rule 2 - Size restrictions" not changing soon.
Expand "Guidelines for Rule 13 - No carriage returns in prog.c".
Put the word, "restrictions" into "Rule 2 - Size restrictions".
While this is a **GOOD IDEA**, the concept needs to be rolled out
over all of the rules, not just "Rule 2 - Size restrictions".
Changed IOCCC Rules to version **29.13 2025-12-01**.
Changed IOCCC Guidelines to version **29.06 2025-12-01**.
Ran `make quick_www` to perform the above.
Added a number of change bars to the rules & guidelines.
Recommend recommend that all markdown files in your submission observe
[IOCCC markdown guidelines](../markdown.html).
Made use of "_..._" consistent in the rules & guidelines.
Updated some the fun guidelines.
Performed some whitespace cleanup in the rules & guidelines.
Changed IOCCC Rules to version **29.12 2025-12-01**.
Changed IOCCC Guidelines to version **29.04 2025-12-01**
Ran `make quick_www` to perform the above.
Improved Rule 1.
Added Guidelines for Rule 1.
Improved Rule 3.
Added missing Guidelines for Rule 3.
Reordered guidelines sections under the "General Guidelines".
Set level 2 for "General Guidelines" subsections.
Changed IOCCC Rules to version **29.11 2025-11-30**.
Changed IOCCC Guidelines to version **29.03 2025-11-30**.
Ran `make quick_www` to perform the above.
The links to rules should all be good. This includes in news.html,
quick-start.html, next/submit.html, 2024/index.html (it had been
modified to refer to next/rules.html instead of 2024/rules.html) as well
as the guidelines and rules themselves (under next/).
Various typo fixes. I'm afraid there are likely others but I must let
others deal with that as I am out of time.
Removed FAQ about mastodon push notifications. When I added the FAQ
about push notifications for mastodon I was incorrect. The web browser
interface suggests it but I never got a push notification even before
Apple broke them. There seems to be no way at this time to get them. I
note that there was a screenshot in the FAQ but this file still is in
the repo possibly.
I regenerated the html files but it's possible I forgot to do one at the
last minute.
This includes typos (including command lines, formatting and other
things), renaming some rules to be a bit more intuitive and other things
I noticed.
Please note that I have not yet checked all links: not in other files or
in this file. This will be done after a break, and it likely will
involve updates to the guidelines and possibly the FAQ too. In other
words this is a work in progress that should be completed later today.
This is a draft edit of the revised IOCCC guidelines for **IOCCC29**.
Due the above, `next/guidelines.md` has undergone a significant update.
The `next/rules.md` and `faq.md` files have been modified accordingly.
The `faq.md` version is now **29.01 2025-11-28**.
The `next/guidelines.md` version is now **29.00 2025-11-28**.
The `next/rules.md` version is now *29.08 2025-11-28**.
Draft **IOCCC29** dates have been added to `rules.md`.
Ran `make quick_www` to perform the above.
TODO: Continue to revise and improve the IOCCC guidelines.
TODO: Fix typos and minor nits in the `next/guidelines.md`.
TODO: Fix typos and minor nits in the `next/rules.md`.
Switched to "#" (hash) for headings in `rules.md`.
Added "-" (dash) after the rule number and before the
rule keyword.
Adjusted links rules elsewhere according to the above.
Ran `make quick_www` to perform the above.
Add an `#ruleX` anchor tag to each rule.
Fix `GNU Makefile syntax` in `Rule 15 Building`.
Remove redundant text in `Rule 17 Packaging` about
empty/blank files.
Ran `make quick_www` to perform the above.
This commit also removed some of the 'new marks' in the guidelines and
rules (as they're no longer new) and some that were in the FAQ (which
only happened when they were changed over to the FAQ).
Removed problematic FAQs (per discussion). This required renumbering.
Updated references of chkentry to chksubmit (only a few references to
chkentry remain now - advising contestants to not use it but simply
stating it is for the judges and it is what chksubmit uses).
Added note in guidelines about gotos becoming 'old' (as Landon told me
it is something Leo wanted in the next guidelines thanks to me). Just so
Landon does not forget my C sins. :-)
I have regenerated the html files but the guidelines.html and rules.html
files have not been link-checked as these files will be modified by the
judges a fair amount so there is no point yet. I believe I got
references to nuked FAQs out but it's possible some were missed.
The quick-start.md and next/submit.md (and their html files) were
updated as well to refer to chksubmit instead of chkentry.
It is quite possible some things were missed but this should help move
things closer to getting ready for IOCCC29 in December.
Congratulations to:
* 2024/anders - Prize in sound coding - layered music generator
* 2024/burton - Prize in pentagrammatology - wordle hard mode solver
* 2024/cable1 - Prize in bot talk - LLM inference engine
* 2024/cable2 - Prize in murky waters - salmon recipe
* 2024/carlini - Prize in perfect timing - Intel 4004 emulation
* 2024/codemeow - Prize in tray planting - bonsai generator
* 2024/endoh1 - Prize in patient pointillism - slow ray tracer in CPP
* 2024/endoh2 - Prize in solid body physics - rotating rigid body simulation
* 2024/ferguson1 - Prize in diabolical logistics - Oregon trail pact with the devil
* 2024/ferguson2 - Prize in yil-tas - Navajo code talker translator
* 2024/howe - Nice accent eh-ward - mini vi
* 2024/kramer - Prize in linguistic arithmetic - natural language numerical calculator
* 2024/kurdyukov1 - Prize in phased periodicity - phase of the Moon
* 2024/kurdyukov2 - Prize in art restoration - JPEG artifact removal
* 2024/kurdyukov3 - Prize in virtual quietus - gaming VM and doom
* 2024/kurdyukov4 - Prize in embiggening - encode without literals
* 2024/maffiodo - Prize in creative interpretation - Jav\*script interpreter
* 2024/mills - Prize in ℤ₃ - Infocom v3 story interpreter
* 2024/stedolan - Best one liner - icon from MD5
* 2024/straadt - Prize in imitative rebooting - OpenRISC CPU and Linux
* 2024/tmarrec - Prize in cyclonic coding - 3D tornado simulation
* 2024/tompng - Prize in quasi bijection - vortex encryptor decryptor
* 2024/weaver - Sur prize - rickroll
Ran `make update` to perform the above.
new file: 2024/burton/.entry.json
Prepare for the winners of **IOCCC28**.
> However these are not the 2024 droids you are looking for. :-)
The HTML menu (both JavaScript and non-JavaScript) has been updated.
The `Status -> Rules and guidelines' have been replaced with two
separate menus `Status -> IOCCC rules` and `Status -> IOCCC guidelines`.
Added a new top level `social.html` page: built from a new `social.md`.
Sorted rules for building specific web pages in the top level `Makefile`.
Added `make social` to make the `social.html` page from `social.md`.
The `bin/gen-top-html.sh` now is able to process a argument of **social**
to process the new top level `social.html` page.
Changed `bin/gen-top-html.sh` VERSION from "2.0.0 2025-03-13"
to "2.0.1 2025-07-25".
Below `About -> Home page` a new `About -> IOCCC social media` menu item
as added.
Because the menu change touched every HTML file, we changed the general
copyright date range for HTML files from "1984-2024" to "1984-2025"
due to the extensive changes made for **IOCCC28**.
Those markdown files that were modified in 2025 had their copyright date
range also changed from "1984-2024" to "1984-2025".
Rebuilt tarballs and sitemap due to the extensive HTML rebuilding.
Ran `make update` to perform the above.
Adjusted `bin/md2html.cfg` to allow for the creation of year level
archive of the rules and guidelines that were in effect when the given
year's content opened for submissions.
We improved `bin/gen-year-index.sh` so that if there exists
a `YYYY/rules.md` rules archive, then `YYYY/rules.html`
will be created.
We improved `bin/gen-year-index.sh` so that if there exists
a `YYYY/guidelines.md` rules archive, then `YYYY/guidelines.html`
will be created.
Changed `bin/gen-year-index.sh` VERSION from "2.0.0 2025-03-13"
to "2.1.0 2025-07-05".
Adjusted `next/rules.md` and `next/guidelines.md` so that when they are
copied as archived copies of rules and guidelines under a YYYY directory,
the internal links do not break. There are **NO** changes to the readable
contents of the rules and guidelines, only some changes to a few internal links.
Updated `1992/buzzard.2/index.html, `1993/rince/index.html`, and
`2012/omoikane/index.html that were modified by recent commits.
Rebuild sitemap due to the changes above.
Ran `make www` to test and perform the above.
Added processing of "%%REPO_TOP_URL%%" tokens to `bin/subst.default.sh`.
Updated `find-missing-links.sh` to not falsely report missing links
when a "%%REPO_TOP_URL%%" token is used.
Changed `bin/subst.default.sh` VERSION from "1.3.2 2024-08-05"
to "1.4.0 2025-04-16".
Changed `bin/find-missing-links.sh` VERSION from "1.1.1 2024-04-28"
to "1.2.0 2025-04-16".
Due to a `pandoc(1)` bug fix, `2011/fredriksson/index.html` and
`2012/kang/index.html` were modified. The bug fix removed extraneous
whitespace that was previously introduced into HTML under certain
situations. These 2 changes do **NOT** impact the way web browsers
render these pages, however.
Updated sitemap.
Updated tarballs based on entry mods since 2025 March 4
(commit 233e5e90a5 just prior
to the IOCCC28 open).
Tested the above via `make update` on macOS.
Renamed some FAQs (typos and/or other things).
Fix a number of typos in various files (including markdown format
errors).
Rules and guidelines should be relatively good although as there is a
lot to get through and not much time left maybe I missed something (I
also kind of cheated doing the final checks with the guidelines rather
than going through them all again).
The next/try.sh and next/try.alt.sh scripts have had updates as well and
the next/Makefile.example was modified too.
The index.html page now has an anchor for goals of the contest so that
the goals in the rules could simply link to it in index.html.
Although some text had to be added (and some corrected) a reasonable
amount of text was also removed as it was elsewhere or was extraneous in
some way.
The screenshots are more recent (including some new ones).
The welcome email images have not been updated as some things have to be
answered before that can be done.
The current files were renamed to be shorter as well.
In order simplify the write-up of the actual Rule 17
into a new FAQ 1.8. The somewhat shorted Rule 17 text
now refers to checks performed by tools, encourages
their use, discourages their misuse (overriding limits),
and is easier to read: we think.
The IOCCC28 will now open on **2025-03-05 23:19:17.131107 UTC**
and enter the judging state on **2025-06-05 04:03:02.010099 UTC**.
Updated sitemap, added news for 2025-02-12, and updated the status.
Performed `make www gen_status gen_sitemap timestamp` on macOS to complete the above.