FAQ: Can you explain the Halloween/Christmas FAQ answer?

Can you explain the Halloween/Christmas FAQ answer?

Sigh… Computer programmers work in a number of different number bases, such as binary (base 2), octal (base 8), decimal (base 10) and hexadecimal (base 16). To avoid confusion, they often indicate which base they are working in by prefixing their numbers with the first three letters of the base name (bin, oct, dec, hex). The decimal number 25 is 31 in octal, so Oct 31 = Dec 25.

It's actually a rather clever joke, but it's pretty much ruined if you have to explain it.


  1. that's utter bolllocks I have NEVER worked in octal in over 20 years, and can code over 30 languages so whoever wrote it is a smug thick twiit who has no idea. also a comparator is not an assignment, even if the compiler says it is. for the record everyone knows the only unambiguous string format of a date is to have dates as Y-m-d h:i:s so it's ####-12-25 vs ####-10-31 which is clearly horseshiit

  2. I didn't say that a comparator is an assignment; I said that Turbo Basic was able to distinguish between the two, even though they were given the same symbol.

    I would also beg to differ that ‘the only unambiguous string format of a date is to have dates as Y-m-d h:i:s’ (even though I am a big fan of that format). For example:

    12-Mar-2014 18:00 (the date format I use for these comments) is a string, and is every bit as unambiguous as 2014-03-12 18:00. The latter format has the advantage that sorting dates in that format alphabetically also sorts them chronologically. But the former format is easier for most English-speaking, non-programmers to read—which is why I use that format on this website.

    I have also never used Octal. But certain weird people used to.

    As to this all being horseshiit (sic), if you check out the rest of this site, you'll realise that's pretty much the whole point.

  3. Conner ... get out more and give yourself a break from the screen ... it's just a bit of fun!

  4. I told my Dad I'd be home by Dec 15th in time for a bike race, but I actually came on Oct 17th. We're both programmers so we both found it funny.

  5. Knowing it is never too late to add value to Gruts, I need to say that I find the opening comment here deeply wrong (and consequently much of what follows it). The equals sign indicates equality, and has done since the 1500s. That some programming languages have recently chosen to adopt the symbol for other purposes (such as assignment operator) is dandy for them but seems irrelevant unless the punchline of a joke is a program, which it is not.

    Also, Conner spelled bollocks up there with three Ls. Sadly I don't think he's going to come back to explain why that's the right way to do it, despite, I am sure, his having many years of above-average experience of the word.

  6. So, connner can code in 30 languages, but none of them a variant of BASIC? Having coded in BASIC in usually a sign of MORE experience than 20 years, as we were writing it on toy computers in the 80s.
    Alllso, connner spellling with extra lettters might just mean he's Welsh.

  7. [Skipping all the conner stuff]

    Decades ago when I first came up with this joke question independently, I expressed the answer as:

    Because Dec 25 = Oct 31, that's CTRL-Y!

    (But that was back in the days when one *knew* ASCII codes with their decimal equivalents - because, as you will have figured out, I am now extremely old.)

Leave a comment

Your email address will not be published. Required fields are marked *