In most cases the word was changed to 'obfuscation' as it was about
obfuscation, not deobfuscation. In some cases like 1995/leo since the
file was (in 1995/leo) about a secret switch it was changed to
'secret.md' (and 'secret.html') but there were others like that as well.
One entry had the words 'spoiling the size rule' but this had been
changed to 'deobfuscating the size rule' which was obviously wrong.
In the latter YYYY/README.md files the judges had written after some
entries (brief summaries) '...
...We'll stop spouting spoilers now. Have fun exploring all the
entries!
but that was changed to:
...We'll stop spouting deobfuscation information now. Have fun
exploring all the entries!
which wasn't really about deobfuscation but just a brief summary of what
the entries did.
And in the most problematic case (at least for me :-), 2018/ferguson) I
had put a joke in:
... but it's the only Easter egg I won't spoil
but it was changed to 'won't deobfuscate' which not only is not what it
is but it spoilt the joke.
In some cases the word was changed back to 'SPOILER' (or similar) but in
most cases not. I believe it should be better now. There are some
caveats, however, as below.
Although make find_missing_links is okay I do not remember if this will
catch links that refer to '%%REPO_URL%%' or other pandoc tokens. This
means I might have to go back to some earlier years to verify links are
okay. That should not take that much time I hope.
It might also be that some wording can still be improved some but it is
hoped this will be discovered when checking links and looking over the
manifest (which obviously changed).
The new FAQ is about how to report bugs in mkiocccentry tools. The rules
and guidelines link to this FAQ.
The rules and guidelines have been corrected and clarified in a number
of ways.
This is more for those who are interested in how they can run each step
of the mkiocccentry tool as well as how to make it easier to edit a
submission tarball.
Although it looks okay (the rendered html) a more thorough review will
have to be done, tomorrow if possible.
A typo that was missed because I did not look at that part of the file
was 'quidelines' instead of 'guidelines'. This has been fixed in inc/
and next/.
The guidelines had many fixes and where necessary updates (about new
tools for instance) plus some fun for people to discover.
The FAQ was slightly updated as well for the guidelines.
The documentation template is for a missing documentation file or
problem with documentation. This MIGHT be classified under a website
issue but it is kind of a topic on its own and as an issue for this was
recently opened (with the documentation label) this seems like a worthy
thing to have.
The bug issue template now properly adds the 'bug' label.
The other issue templates have lower case labels.
This is in particular for bug reports of a tool. This is useful rarely
but there have been a number of times it has been useful (like right now
as I am aware of another bug) so it is good to have it.
As the file is not actually code and does not give deobfuscated code but
rather shows how I obfuscated it (indirectly and directly) a better
name, if spoilers will not work, is obfuscation. Thus obfuscation.md and
obfuscation.html are the new names.
Manifest updated; regenerated .entry.json, index.html and other html
files that link to the html file.
In a heading/section (in obfuscation.html) I linked to two files that
are named.
Part of the edit to the Makefile was in error - a yank paste error on my
part that I fixed in a commit that came after but the restoration of the
change put the problem back in.
Unless one is mentioned one will not get a push notification so one
should refresh the IOCCC mastodon feed every so often. This is at the
top of the file, though, and seemingly part of a file in inc/ so this
might have to be done differently than how this change was done.
.. though this certainly can be improved some still, the entire wording
of the sentence. That will be considered later.
Thank you to @SirWumpus for indirectly making me aware of this: I know
he hates templates so I feel like I should thank him specially :-)
There were numerous things that had to be fixed and there will likely
have to be some discussion as well.
Some formatting fixes and additional links were also added.
This commit involves some updates to the FAQ and while I was at it I
fixed some references of 'entry'/'entries' to 'submission'/'submissions'
(those that should not be 'entry' or 'entries').
In 1991 the code blocks in the html files should look better with
smaller screens. In one entry, rince, an image was added as the
formatting is too complicated to get right. The text was changed from
two columns to one column and then a screenshot was taken so that it's a
bit easier to see with smaller widths. This looks fairly good on mobile
phones too. The only downside, of course, is if the web pages ever
change to have a different background or code colour it won't match but
it did not look right with mobile phones. This required a manifest
update.
In 1992 one entry's html file defeated me for now so I had to stop. This
can be looked at later. The last entry I am committing changes to is
1991/buzzard.1. It was buzzard.2/buzzard.2.design.md that is a big
problem and will have to be done another time.
There is a back and forth dialogue between Landon and the author that
should have been quotes but was code and this commit changes them to
blockquotes. This was one of the tests for commit
95db577489.
It is very hard to find a shade of green that works well in all cases
against the white background and as already established blue and purple
cannot work (and some of those would be hard to work with especially
purple unless very dark maybe). Many possibilities were proposed but
they all seem to be a problem so instead of changing the text to green
there is a border on all sides now (forming a box or if you wish a
'block') and the text colour is black. The box / border is dark green.
The text style is still italic but it is unclear if this is wise. On the
one hand quotes are often in italics but with italics in quotes it means
that any quote with italics will not have those italics stand out.
Tested this change in two different forms: a blockquote where there are
blank lines in between the other lines (it's a dialogue) and a back and
forth dialogue broken up between text that is not a blockquote and it
looks good both in macOS Safari and Safari with an iPhone. This test
involves an entry from 1984 (anonymous) that should have been using
quotes instead of code (and now does but will be committed next) and it
does mean that a quick look over the earlier years for code versus
quotes has to be made but that should not take much effort or time.
At the request of Landon (after I brought it up as a possibility) I have
reworded the Gold/Silver/Bronze Award titles in 2012 so that the
precious metal is first so it flows a bit better.
Why did I suggest this? Because Precious told me to!
There are many fixes made but a few questions remain so when I reach
those years I will address those then. Unfortunately, due to
infrastructure work right now, this is all I can say even though there
are a number of things I'd like to say.
Although 'Email' is sometimes used it feels more out of place in the
middle of a sentence. There might be other files where this could be
done but at the same time there are files that this should not be done -
like source code.
Added testing procedure (markdown, html: testing-procedure.{md,html}).
Updated the recode.{md,html} and README.md for this as well.
Updated the hidden message file (enigma.html) for a bit more fun.
Updated manifest, rebuilt index.html and .entry.json.
The list of expressions in the judges' remarks has been changed so that
it fits nicer on smaller screens (it is no longer a code block but a
list and each operator is surrounded by backticks).
The grammar provided by the author (not the code that explains it but
the grammar) now also fits on smaller screens in a nicer way by breaking
it into multiple lines.
There were several places where a code block was used for text that is
more like a quote (and in one case it is a quote) and these have been
converted to a blockquote.
A few links were added instead of having the link in a code block.
In a case where a paragraph was split with blank lines in between each
line (with the '|' marker at each line) I added a <br> to it so that it
looked more natural.
With the recent changes to this file and the rules file more checks have
to be made as well.
The '{', '}' and other chars that are referred to are now in code blocks
(surrounded by single quotes) to help make them stand out better. The
single quotes are there as depending on the person's perception (or if
they're tired or ...) the colour difference might not be enough (in fact
it's barely enough for me at this point and others are more colour blind
than I am). The block quote colour is being experimented with still,
too, so that is another reason to have the 's.
Added make gen_next rule to Makefile which builds next/index.html from
next/README.md, next/rules.html from next/rules.md and
next/guidelines.html from next/guidelines.md. The make help rule was
updated for this.
There is no need to have 'blockquote' in one place and then later on in
the file '.content blockquote p'. This brings the two rules together so
one does not need to go back and forth in the file.
There were tabs in the part of the file (copy pasted in fact) that was
regenerated each time and I converted them to spaces. Doing a git add -u
and then trying to rebuild bugs.html did not seem to update the file and
since it had in the past I hope this solves the problem.
This took some careful editing but it now looks nice on an iPhone 14 Pro
Max and it also looks nice on a laptop (16"). In Safari responsive mode
at 500 x 100 it also looks okay which I think is pretty good. For some
macros the function line had to be split up and it might look like the
formatting is wrong in a few cases but this took trial and error to get
it to align right (or very close if not completely).
That is to say in the bugs file it will look something like:
STATUS: INABIAF - please DO NOT fix
but as a html file it is already bold as a heading. This means there is
no need in the index.html file to have the explicit **DO NOT** as it's
in a code block and it is not consistent in what is in bugs.html. For
instance 1984/mullender had:
STATUS: INABIAF - please **DO NOT** fix
but this meant the index.html file had the '**'s surrounding the DO NOT
which is not consistent with bugs.html.
Although blockquote already is set to italic now blockquote p explicitly
sets it. The colour is dark green and the rationale is explained in the
comments as thus:
/* This rule makes sure that text in <blockquote><p>..</p></blockquote> is
* coloured right. Note that this MUST BE HERE and not earlier where the
* 'blockquote' rule is as otherwise the above '.content p' rule would
* override it.
*
* The following rationale with the blockquote rule above (in particular
* with italics) and the dark green selection, so that this is understood
* better:
*
* 0. Purple should NOT be used as this is being used for visited links.
* 1. Blue should NOT be used as this is being used for non-visited links.
*
* Now with context this might be okay but links can also be in blockquotes
* so this alone is reason not to: even if there are underlines in most
* links. Additionally:
*
* 2. Bold seems to be too strong, especially when used for with a bright
* colour.
*
* Bold is used in headings (h1, h2, ..). A bold heading is not too much
* text (as headings tend to be short single lines): one does not become
* too tired looking at TOO MANY SHOUTING BOLD LETTERS. It seems preferable
* to reserve bold for those headings.
*
* Conclusions: dark blue seems to be slightly better but unfortunately the
* headings (h1, h2, ...) is too similar so we use dark green with italics
* as the choice.
*/
I believe now that it is in good order except for a strange indentation
issue in the index.html file in some code blocks that presumably has to
be fixed with CSS.
The bugs file was also slightly updated.
The whereami.c file should not have been left in as the scripts added
take care of the problem.
The Makefile now links whereami to westley and whereami.alt to
westley.alt. Running make clobber will remove the links.
The index.html had some mistakes from the time where the C file was
useful. There might still be some mistakes but that will have to be
checked another time.
The manifest has been updated locally but the .entry.json file and the
index.html file have not yet been corrected. This will happen soon after
the rest of the changes of 1992 are committed.
The problem was that later in the stylesheet there is '.content p' and
since the <blockquote><p>..</p></blockquote> is in the content class the
colour was being overridden. Thus there is now:
.content blockquote p {
color: blue;
}
which fixes the problem.
The play.sh script entry_text refers to snake-colours.sh so
snake-colours.sh comes first. Also since it's a key part of the entry
they come before the html files.
To help the fact it's a quote stand out better the vertical bar is a bit
thicker (4px instead of 2px) and the colour is a bit darker (darkgrey
instead of #e6e6e6). Also the font style is italic (as quotes often are
shown) and the font weight is bold to help it stand out even more (that
might be worth changing). Finally the colour of the text is blue (which
looks nice with bold so it might also be changed if the weight is not
bold).
A point worth noting is that in CSS (tested on my apache server and also
W3Schools) having:
blockquote {
color: blue;
}
does not work (for <blockquote><p>...</p></blockquote>) as in the colour
stays what was left for <p>...</p. which earlier in the stylesheet is
set to black. On W3Schools what does work is:
blockquote p {
color: blue;
}
but on the server for some reason it does not quite work. The rest of
the change to blockquote do work but not the colour of the text. I am
not sure if this is a cache or similar problem or not but clearing the
cache and also history (of the past hour) does not seem to solve the
problem at least at this time. Thus it is entirely possible that this
has to be fixed too.
To put this another way this change might need some tweaking still but
the blockquotes now stand out much better.
My original fix no longer worked, at least with clang in some systems,
because of more strictness in the compiler wrt implicit ints. As the
code does not use the Makefile but rather 'cc' (and in an unusual way)
'main()' now has an explicit int.
Also, what was previously documented as a bug to be fixed has been
changed to INABIAF as it was documented already. Thus it should not be
fixed. In fact the judges originally noted that if one specifies the
triggering input they should expect an infinite loop and compilation
failure.
The problem is the DATA variable in the Makefile had a file that no
longer exists.
The warning in the Makefile has been corrected too: it should compile
but it won't likely work in modern systems (it is the original but fixed
so that it at least compiles). The isaak.c is the fixed version that
works with both macOS and linux.
Make link to entries and award titles bold like the other files that
have links to entries with the award title. This is done by modifying
the bin/gen-authors.sh script.
Make it consistent with my improvement to bin/gen-years.sh: the entry
awards in the links (to each entry) are now in bold and so are the link
names. This helps them stand out a bit more.
The html files in 1986 (including 1986/marshall/compilers.html) look and
feel good. Format change (slight) in 1986/marshall/index.html.
The manifest update includes a fix for 1986/hague and this same change
in entry_text applies to files in a few other years as well.
The link to 'stack' was for abstract data type which not only has no
article but should be call stack. This has been corrected.
Also with this commit the index.html files of 1984 look good. This
includes the 1984/index.html file itself. There is a change in 1986 that
might come before 1985 but this is to be determined later.
In the case of this entry, it is so screwy that having the CFLAGS
conflicts with the -traditional-cpp option in some systems. Thus the alt
rule has ONLY the -traditional-cpp option. The thanks file notes this
oddity and how to view the diff between the original and the alternate
code.
Also the bugs file was changed to be worded like the README.md file.
The index.html file was improved for the fix to the Makefile (for the
alt build) and it also links to the specific lines in the code on GitHub
(see the index.html file how it talks about specific lines in the
judges' remarks).
To avoid problems the script now runs make find_missing_links at the
end. It does it in such a way, though, as to make sure everything is
fine before that. It runs the rule after everything is fine but if it
fails it tells them they do not have to run the script all over again
but they do need to fix the links and then run the appropriate make
rules in order to fix the html file(s). It does note that if you're in
doubt running 'make www' will be the safest bet.
There are two reasons the script does not run make www: first is that it
uses verbosity not used in the make rule and second is it offers to run
the quick-readme2index.sh script to go quicker if one knows that only
a few README.md files were modified. The script now warns that this will
only work if the README.md files have been changed (or timestamp
updated).
Since less information is shown on an entry's index.html page than in
the past a short FAQ entry about how to find the information seems like
a good idea to have.
Many entry_text fields have been changed, some to make it more
consistent with others (though most likely some slipped through) and
others to make it more correct.
The recent commits which changed filenames are in this update but the
rest of the process will be done soon as part of the same pull request.
As the others files do not specify macOS but are still screenshots of
macOS I have removed the '_on_macosx' from the filename. Thus
2013/cable3/screenshot_win3_on_macosx.png is now screenshot_win3.png.
Makefile updated for this.
All the authors now have either a null URL, a valid URL or one on the
Internet Wayback Machine.
Where it seemed likely (say because the domain no longer exists) emails
were set to null also.
Now unless a bug is found in the script this really should finish the
checks of authors.html.
40 of authors which previously had an 'unknown location' were found in
the archive. Only five are left that are unknown.
Rebuilt location.html and authors.html.
Although I did not check every link in these pages I have checked many
and since both files are generated by a script it is probably safe
(enough) to say that these files can be marked as verified to look okay
and have valid links. This means that unless I have missed something,
the top level html files have all been checked except for bugs.html and
faq.html but these have to be done after the entries as they are likely
to be updated as the entries are being looked at.
The index.html file (from index.md) now links to the no JavaScript menu
for those who either wish to use a plaintext menu or for those who the
menu does not work (like I discovered with my iPhone 8 Plus - iOS 16
Safari, a bug that was fixed in iOS 17). It also links to a new FAQ
about the menus: how they work and also what to do if they don't work.
By 'how they work' this refers to on desktop/laptops, on mobile devices:
without JavaScript enabled and also on mobile phones and tablets in
portrait and also landscape mode plus on mobile devices wider than 1024
pixels and also the browser bug I referred to above.
This includes three new png files, screenshots of how it looks on an
iPhone 14 Pro Max (which should be like other mobile phones), one which
shows the iOS 16 Safari bug and one which shows desktops. These are of
course used in the FAQ.
Although not every html file has a link to the plaintext (i.e. the menu
for those with JavaScript disabled), it is hoped that these two changes
will help people navigate if they have a problem with the menus.
The script set the URL for the tarball of all entries in the year to:
$YYYY/$YYYY.tar.bz2 but the link is relative so for 1984, for example,
it would link to 1984/1984/1984.tar.bz2 which obviously is a 404.
I also changed the formatting and wording of the link. It now is all
bold and it says instead (for example with 1984): 'Download all winning
entries from 1984'. Before it still referred to 'entry source' but it is
all entries and more than just the source.
This commit does not mean that the YYYY/index.html files have been
checked (though it's likely that all should be okay at this point) but
the manifest of entries and the tarball of all entries of the year
should at least be good.
The (same two) authors of 1995/heathbar and 1995/makarios had invalid
information, in one case email as well as in both the url and location.
The location was previously set to unknown (ZZ) but I knew from the
archive (which used to be what the README.md files which were the hint
files had until I was asked to remove that information which was done
November 2023) that it was US.
I also noticed, however, that the url was invalid and in one case the
email was invalid (it referred to the same domain).
With these problems in mind the url was changed to refer to the website
on the Internet Wayback Machine (in both), the email was set to null in
the one that had an email (now it's null in both) and the location_code
was set to US (in both).
I then did:
touch 1995/heathbar/README.md 1995/makarios/README.md
so that I could do:
make quick_www
as only two index.html files had to be updated. This also updated
authors.html and location.html, of course.
The FAQ was updated with more information on how to update author
information with the above two as an example and it now also says how to
validate json for those who want to make changes to author information
(or if anything else in the future is put in json).