this post was submitted on 31 Oct 2023
816 points (96.4% liked)

Programmer Humor

32443 readers
629 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 

toot by @nixCraft@mastodon.social

top 29 comments
sorted by: hot top controversial new old
[–] cia@lemm.ee 117 points 1 year ago (1 children)

This joke is so old, time since epoch was negative when it was made

[–] billwashere@lemmy.world 31 points 1 year ago (2 children)

My birthday was the epoch so I resemble this comment.

[–] friek@sh.itjust.works 7 points 1 year ago

Hello, fellow oldhead :)

[–] S0UPernova@lemmy.world 1 points 11 months ago

So you were born at the dawn of time... nice.

[–] glibg10b@lemmy.ml 63 points 1 year ago (2 children)

Explanation:

In decimal (DEC), we count to 9 before adding a new digit. For example, the number after 9 is 10, and the number after 19 is 20.

In octal (OCT), we count to 7 before adding a new digit. The number after 7 is 10 and the number after 17 is 20.

DEC OCT
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 10
9 11
10 12
11 13
12 14
13 15
14 16
15 17
16 20
17 21
18 22
19 23
20 24
21 25
22 26
23 27
24 30
25 31
[–] Balthazar@sopuli.xyz 9 points 1 year ago

Thanks! I didn't get it at first xD

[–] kylostillreigns@lemmy.world 6 points 1 year ago* (last edited 1 year ago) (2 children)

TLDR: In octal system, the weight of the digit in a position is an exponent of 8. So 31 = (3×8¹ + 1×8⁰) = (3×8 + 1×1) = 24 + 1 = 25.

[–] glibg10b@lemmy.ml 15 points 1 year ago (1 children)

I think you might be stretching the definition of TLDR a bit lol

[–] siipale@sopuli.xyz 9 points 1 year ago (1 children)

Well, it's certainly shorter than the table in the parent comment.

[–] glibg10b@lemmy.ml 5 points 1 year ago

Sure, it's shorter, but is it really a summary of my comment, or just a more technical explanation?

My comment tries to teach via example, while theirs tries to teach using math. I chose my method because it's the most accessible to people who aren't math-inclined, but also because it takes the least cognitive effort to understand, which is an important quality for a social media comment to have nowadays.

Besides, you obviously don't have to read the whole table (you already know how to count to 25). Just scan the right column to see what it's doing differently.

[–] MaryTzu@aussie.zone 2 points 1 year ago

It's the same for every base, including base 10.

[–] Even_Adder@lemmy.dbzer0.com 61 points 1 year ago (4 children)

I just wanted a short explanation.

Is this even right?

[–] MrRazamataz@lemmy.razbot.xyz 43 points 1 year ago (1 children)

In the language man I wonder what the language is

[–] Even_Adder@lemmy.dbzer0.com 9 points 1 year ago (1 children)

I bet I lost that part of the explanation when I asked for layman's terms.

[–] Masimatutu@lemm.ee 19 points 1 year ago (1 children)

Nah, pretty sure that is just a (very mild) hallucination because it couldn't find an actual good example

[–] Knusper@feddit.de 5 points 1 year ago

Yeah, problem is that I'm not aware of anyone who actually writes octal numbers as "OCT123" nor decimal numbers as "DEC123". It's basically a made-up syntax, supposed to look plausible for both date notation and number system notation. It's part of the joke, which LLMs won't understand.

[–] Masimatutu@lemm.ee 27 points 1 year ago (1 children)
[–] Even_Adder@lemmy.dbzer0.com 6 points 1 year ago

Cool, the plausible answers are always the most dangerous.

[–] driving_crooner@lemmy.eco.br 5 points 1 year ago* (last edited 1 year ago) (1 children)

Except for the part about using OCT or DEC to talk about octal and decimal numbers is ok.

From wikipedia:

In programming languages, octal literals are typically identified with a variety of prefixes, including the digit 0, the letters o or q, the digit–letter combination 0o, or the symbol &[12] or $. In Motorola convention, octal numbers are prefixed with @, whereas a small (or capital[13]) letter o[13] or q[13] is added as a postfix following the Intel convention.[14][15] In Concurrent DOS, Multiuser DOS and REAL/32 as well as in DOS Plus and DR-DOS various environment variables like $CLS, $ON, $OFF, $HEADER or $FOOTER support an \nnn octal number notation,[16][17][18] and DR-DOS DEBUG utilizes \ to prefix octal numbers as well.

For example, the literal 73 (base 8) might be represented as 073, o73, q73, 0o73, \73, @73, &73, $73 or 73o in various languages.

Newer languages have been abandoning the prefix 0, as decimal numbers are often represented with leading zeroes. The prefix q was introduced to avoid the prefix o being mistaken for a zero, while the prefix 0o was introduced to avoid starting a numerical literal with an alphabetic character (like o or q), since these might cause the literal to be confused with a variable name. The prefix 0o also follows the model set by the prefix 0x used for hexadecimal literals in the C language; it is supported by Haskell,[19] OCaml,[20] Python as of version 3.0,[21] Raku,[22] Ruby,[23] Tcl as of version 9,[24] PHP as of version 8.1,[25] Rust[26] and it is intended to be supported by ECMAScript 6[27] (the prefix 0 originally stood for base 8 in JavaScript but could cause confusion,[28] therefore it has been discouraged in ECMAScript 3 and dropped in ECMAScript 5[29]).

I think 0o31 would be the "correctish" way a programmer/computer scientist would talk about it.

[–] ChaoticNeutralCzech@feddit.de 8 points 1 year ago

Advanced calculators (both physical ans virtual) have DEC/BIN/OCT/HEX buttons so there is some truth to this abbreviation.

[–] Mac@mander.xyz 1 points 1 year ago

Is anyone else bothered by how often things are reiterated in this reply?

[–] Masimatutu@lemm.ee 17 points 1 year ago

hint for those who don't get it= HEX19

[–] redcalcium@lemmy.institute 16 points 1 year ago (2 children)

Who use octal numbers in their program? If you do, why?

[–] synae@lemmy.sdf.org 5 points 1 year ago

Only for representing permissions bits

[–] Hephoh2@feddit.de 4 points 1 year ago

Aircraft SSR codes are octal

[–] bjoern_tantau@swg-empire.de 14 points 1 year ago

Just put on A Nightmare Before Christmas and you're good to go.

[–] darcy@sh.itjust.works 13 points 1 year ago

i love how well this joke works

[–] Luft@lemm.ee 4 points 1 year ago

Halloween is the time for hexes!

[–] cawsllyffant@lemm.ee 3 points 1 year ago

I remember it being graffitti’d at Wean Hall at Carngie Mellon circa 1990. (about half way down architect’s leap for fellow CMU-nies, around fifth floor maybe?).