From b62dc414789a10f4034660a79784ff7531169994 Mon Sep 17 00:00:00 2001 From: Cody Boone Ferguson <53008573+xexyl@users.noreply.github.com> Date: Fri, 18 Oct 2024 12:04:35 -0700 Subject: [PATCH 1/3] Reorder FAQ table of contents, adding new sections New sections were added. Not all anchors work yet. The questions/answers are not yet in the right order. That is the next step. Instead of relying on having to manually add numbers use ordered lists. The sections are in unordered lists so we have control over the number. The downside with this is with the long file it is harder to find the section one is in but as each question/answer has a jump to the top that should be worth the gain of not having to manually edit every question (in the table of contents as well as the question/answers) every time a question is moved to another place (or a new one is added) above others. Another downside is minor: it does not allow for 0 as html lists do not start with 0 but 1. Another thing that has to be done is to make sure that the html lint is correct. That can be done once this is merged. Any thing that needs to be fixed can then be fixed. --- faq.html | 865 +++++++++++++++++++++++++++++++++++++++++-------------- faq.md | 739 +++++++++++++++++++++++++++++------------------ 2 files changed, 1112 insertions(+), 492 deletions(-) diff --git a/faq.html b/faq.html index 4d0c1ec84..438363caf 100644 --- a/faq.html +++ b/faq.html @@ -388,140 +388,376 @@ -

FAQ Table of Contents

-

This is FAQ version 28.0.7 2024-10-17.

-

Section 0 - Entering the IOCCC: the bare minimum you need to know

+

IOCCC FAQ Table of Contents

+

This is FAQ version 28.0.8 2024-10-18.

+ -

Section 1 - IOCCC Judging process

- -

Section 2 - The mkiocccentry toolkit: finer details

- -

Section 3 - Compiling and running IOCCC entries

- -

Section 4 - Changes made to IOCCC entries

- -

Section 4 - Helping the IOCCC

- -

Section 5 - Miscellaneous IOCCC

- -

Section 6 - History of the IOCCC

-

Jump to: top

The IOCCC FAQ

+ +

Jump to: top

+ + +
-

Jump to: top

-## Section 0 - [Entering the IOCCC: the bare minimum you need to know](#enter_questions) -- How can I enter the IOCCC? -- What is the `mkiocccentry` tool and how do I use it? -- How do I compile `mkiocccentry` and its related tools? -- Is there a way to not have to re-enter the same information, when making a change to my submission? -- What platform should I assume for my submission? -- What should I put in my submission Makefile? -- What should I put in the remarks.md file of my submission? -- May I use a different source or compiled filename than prog.c or prog? -- What are the IOCCC best practices for using markdown? -- How do I report bugs in an `mkiocccentry` tool? + Jump to: [top](#) @@ -122,24 +183,26 @@ Jump to: [top](#) # The IOCCC FAQ - + + +
-Jump to: [top](#) - - - mkiocccentry -a answers.txt ... -``` - -Alternatively, if you wish to overwrite a file, you can use the `-A` -flag with the same option argument. Be **very careful** that you do not accidentally -overwrite your `prog.c` or some other important file! - -To make use of the answers file, use the `-i answers` option like: - -``` - mkiocccentry -i answers.txt ... -``` - -
  • -
    -### Q: What types of entries have been frequently submitted to the IOCCC? -
    - -There are types of entries that are frequently submitted to the IOCCC. -While we **do not wish to prevent** people from sending -a submission to the IOCCC on a frequently submitted theme, -we do wish to provide a **fair warning** to those who do. - - -#### Fair warnings on frequently submitted themes: - -**IMPORTANT HINT**: It is **not fatal** to send in those types of -entries, it is just **HARDER to win** with such a submission. A -submission on a frequently submitted theme will have to do something -in a **really unique AND interesting way** to even make it into the -final judging rounds. It will have to compete with previous IOCCC -winners based on the same theme. - -**IMPORTANT HINT**: If you really wish send in a submission on a -frequently submitted theme, be sure that it is obfuscated in several -new and novel ways. - -**IMPORTANT HINT**: Be sure to **clearly explain** near the beginning -of your `remarks.md` file, see the -FAQ on "[remarks.md](#remarks_md)", -**why you are submitting an entry based on a frequently -submitted theme** and **how compares with previous IOCCC winners** -of the same theme. - - -#### Examples of frequently submitted themes - - -##### Maze generator - -- [1985/shapiro](1985/shapiro/index.html) -- [1991/buzzard](1991/buzzard/index.html) -- [1995/cdua](1995/cdua/index.html) -- [1995/dodsond2](1995/dodsond2/index.html) -- [1998/bas1](1998/bas1/index.html) - - -##### Tic-Tac-Toe/Noughts and Crosses/Xs and Os game - -- [1991/westley](1991/westley/index.html) -- [1996/jonth](1996/jonth/index.html) -- [2020/carlini](2020/carlini/index.html) - - -##### Solitaire/Othello game - -- [1987/lievaart](1987/lievaart/index.html) -- [1994/dodsond1](1994/dodsond1/index.html) - - -##### Generating small primes (below is the list of all prime related winning entries) - -- [1985/august](1985/august/index.html) -- [1988/applin](1988/applin/index.html) -- [1994/weisberg](1994/weisberg/index.html) -- [1995/makarios](1995/makarios/index.html) -- [1996/dalbec](1996/dalbec/index.html) -- [2000/bellard](2000/bellard/index.html) - - -##### Self-reproducing program - -- [1990/scjones](1990/scjones/index.html) -- [1994/smr](1994/smr/index.html) - _do not claim your program is the smallest without seeing this entry_! -- [2000/dhyang](2000/dhyang/index.html) - _this entry set a high bar for entries of this theme_ - - -##### Entries that just print "Hello, world!" - -- [1984/anonymous](1984/anonymous/index.html) -- [1985/applin](1985/applin/index.html) -- [1986/applin](1986/applin/index.html) -- [1986/holloway](1986/holloway/index.html) -- [1989/jar.1](1989/jar.1/index.html) -- [1992/lush](1992/lush/index.html) -- [2000/tomx](2000/tomx/index.html) - - -##### Entries that use some complex state machine/table to print something - -- [1988/isaak](1988/isaak/index.html) -- [1988/phillipps](1988/phillipps/index.html) -- [2018/ciura](2018/ciura/index.html) -- [2018/giles](2018/giles/index.html) - - -##### ROT13 - -- [1985/sicherman](1985/sicherman/index.html) -- [1989/westley](1989/westley/index.html) -- [1990/dg](1990/dg/index.html) -- [1991/fine](1991/fine/index.html) - - -##### **pi** or **e** computation - -- [1986/august](1986/august/index.html) -- [1988/robison](1988/robison/index.html) -- [1988/westley](1988/westley/index.html) -- [1989/roemer](1989/roemer/index.html) - - -#### The above list of frequently submitted themes is not exhaustive - - -#### Some final thoughts on frequently used themes - -While it is possible to win a new IOCCC with one of these -**frequently submitted** types of entries, level of the competition from -previous IOCCC entries make it more challenging to be successful. - -It is also important to note that the [guidelines](next/guidelines.html) often -state something along the lines of: - -``` - We tend to dislike programs that: are similar to previous winning entries. -``` - -**FAIR WARNING**: Be sure to **clearly explain** near the beginning -of your `remarks.md` file, see the -FAQ on "[remarks.md](#remarks_md)", -**why you are submitting an entry based on a frequently -submitted theme** and **how compares with previous IOCCC winners** -of the same theme. - -Jump to: [top](#) - -
  • @@ -604,63 +444,7 @@ command that is compatible with GNU Make version 3.81. Jump to: [top](#)
  • -
  • -
    -### Q: May I use a different source or compiled filename than prog.c or prog? -
    -While your entry's source filename, as submitted, must be `prog.c`, your entry's `Makefile` -may copy `prog.c` to a different filename as part of the compiling/building process. For example: - -``` - # Makefile continues above ... - - all: desired_name - - desired_name: desired_name.c - rm -f $@ - cc desired_name.c -o $@ - - desired_name.c: prog.c - rm -f $@ - cp -f prog.c $@ - - clean: - rm -f desired_name.o - - clobber: clean - rm -f desired_name.c desired_name - - # Makefile continues below ... -``` - -We recommend that the `make clobber` rule remove files that your entry -creates as part of the compiling/building process. - -You may also copy the compiled `prog` into a different file as part of compiling process. -For example: - -``` - # Makefile continues above ... - - all: desired_name - - different_name: prog - rm -f $@ - cp -f prog $@ - - clean: - rm -f prog.o - - clobber: clean - rm -f desired_name - - # Makefile continues below ... -``` - -Jump to: [top](#) - -
  • @@ -767,48 +551,10 @@ FAQ on "[rules, guidelines, tools feedback](#feedback)". Jump to: [top](#) - -
    -
    -### - What are the IOCCC best practices for using markdown? -
    -
    - -The IOCCC makes extensive use of [markdown](https://daringfireball.net/projects/markdown/). -For example, we [submitting to the IOCCC](#submit), we have people -to submit remarks about entry in markdown format. Every -[winning IOCCC entry](years.html) uses a `README.md` markdown file -as the basis for forming the `index.html` web page for that entry. -All generated HTML pages on the [Official IOCCC website](https://www.ioccc.org/index.html) -start with some markdown content. - -**IMPORTANT**: Please read the [IOCCC markdown best practices](markdown.html) guide -as it lists things you **should not use** in markdown files. - -See the [markdown syntax](https://www.markdownguide.org/basic-syntax) guide. -See also [CommonMark Spec](https://spec.commonmark.org/current/). - -Jump to: [top](#) -
  • -
  • -
    -### Q: How do I report bugs in an `mkiocccentry` tool? -
    -As the [mkiocccentry toolkit](https://github.com/ioccc-src/mkiocccentry) is -crucial in the contest, both for submitters and the judges, if you find a bug -(or you think you find a bug) we would be grateful if you were to report it at -the [mkiocccentry issues -page](https://github.com/ioccc-src/mkiocccentry/issues). -Please see the -FAQ on "[reporting bugs and other issues in the mkiocccentry repo](https://github.com/ioccc-src/mkiocccentry/blob/master/FAQ.md#bugs)" -in the [mkiocccentry repo](https://github.com/ioccc-src/mkiocccentry). -Jump to: [top](#) - -
  • ### Q: What is a `.auth.json` file? @@ -1644,14 +1390,144 @@ Jump to: [top](#)
    ## Section 1: Entering the IOCCC: more help and details
    +Jump to: [top](#) +
  • +
    +### Q: Is there a way to not have to re-enter the same information, when making a change to my submission? +
    +Yes! The `mkiocccentry(1)` tool has some options to help write _OR_ read from an +answers file so you do not have to input the author(s) or the submission +details (like the abstract, summary etc.), just to change a file. +To write to `answers.txt` try: +``` + mkiocccentry -a answers.txt ... +``` + +Alternatively, if you wish to overwrite a file, you can use the `-A` +flag with the same option argument. Be **very careful** that you do not accidentally +overwrite your `prog.c` or some other important file! + +To make use of the answers file, use the `-i answers` option like: + +``` + mkiocccentry -i answers.txt ... +``` + +Jump to: [top](#) + +
  • + +
  • +
    +### Q: May I use a different source or compiled filename than prog.c or prog? +
    + +While your entry's source filename, as submitted, must be `prog.c`, your entry's `Makefile` +may copy `prog.c` to a different filename as part of the compiling/building process. For example: + +``` + # Makefile continues above ... + + all: desired_name + + desired_name: desired_name.c + rm -f $@ + cc desired_name.c -o $@ + + desired_name.c: prog.c + rm -f $@ + cp -f prog.c $@ + + clean: + rm -f desired_name.o + + clobber: clean + rm -f desired_name.c desired_name + + # Makefile continues below ... +``` + +We recommend that the `make clobber` rule remove files that your entry +creates as part of the compiling/building process. + +You may also copy the compiled `prog` into a different file as part of compiling process. +For example: + +``` + # Makefile continues above ... + + all: desired_name + + different_name: prog + rm -f $@ + cp -f prog $@ + + clean: + rm -f prog.o + + clobber: clean + rm -f desired_name + + # Makefile continues below ... +``` + +Jump to: [top](#) + +
  • + +
  • +
    +
    +### Q: What are the IOCCC best practices for using markdown? +
    +
    + +The IOCCC makes extensive use of [markdown](https://daringfireball.net/projects/markdown/). +For example, we [submitting to the IOCCC](#submit), we have people +to submit remarks about entry in markdown format. Every +[winning IOCCC entry](years.html) uses a `README.md` markdown file +as the basis for forming the `index.html` web page for that entry. +All generated HTML pages on the [Official IOCCC website](https://www.ioccc.org/index.html) +start with some markdown content. + +**IMPORTANT**: Please read the [IOCCC markdown best practices](markdown.html) guide +as it lists things you **should not use** in markdown files. + +See the [markdown syntax](https://www.markdownguide.org/basic-syntax) guide. +See also [CommonMark Spec](https://spec.commonmark.org/current/). + +Jump to: [top](#) + +
  • + +
  • +
    +### Q: How do I report bugs in an `mkiocccentry` tool? +
    + +As the [mkiocccentry toolkit](https://github.com/ioccc-src/mkiocccentry) is +crucial in the contest, both for submitters and the judges, if you find a bug +(or you think you find a bug) we would be grateful if you were to report it at +the [mkiocccentry issues +page](https://github.com/ioccc-src/mkiocccentry/issues). + +Please see the +FAQ on "[reporting bugs and other issues in the mkiocccentry repo](https://github.com/ioccc-src/mkiocccentry/blob/master/FAQ.md#bugs)" +in the [mkiocccentry repo](https://github.com/ioccc-src/mkiocccentry). + +Jump to: [top](#) + +
  • + +