this post was submitted on 14 May 2026
781 points (98.2% liked)

Programmer Humor

31408 readers
1435 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 2 years ago
MODERATORS
 
top 50 comments
sorted by: hot top controversial new old
[–] WandowsVista@lemmy.world 10 points 14 hours ago

I can't explain but these birds have Toronto accents

[–] SatansDaughter@piefed.blahaj.zone 10 points 15 hours ago (3 children)

Can someone smarter than me explain what mov rax, rbx. Does it read keyboard input?

[–] Aganim@lemmy.world 36 points 15 hours ago (1 children)

It moves the value of register (a CPU memory cell) rbx to register rax. It's not that important though.

Basically the comic shows that the CPU is happily chugging along, executing instructions when suddenly the keyboard sends an interrupt telling the CPU it must stop all work and listen to whatever it has to say.

That was how keyboards worked before USB (back when they used PS/2 or DIN connectors). With USB it's the other way around: the device gets polled X times per second to check of it has any data to send.

[–] iocase@lemmy.zip 6 points 10 hours ago

Iirc the south bridge now aggregates masked interrupts and groups them together instead of pestering the CPU a whole bunch

[–] bequirtle@lemmy.world 11 points 15 hours ago* (last edited 15 hours ago) (1 children)

It's irrelevant to the humor, it's just an arbitrary x86 instruction. The point is that keyboard inputs (with a PS/2 keyboard) interrupt whatever the computer is doing

Though to answer your question, it moves the value from the rbx register to the rbx register

Oh ok, I didn't know keyboards used to do that

[–] firebarrage@lemmy.world 7 points 15 hours ago

These are some assembly instructions that the computer is happily running with no keyboard input. The keyboard input is then coming in as an interrupt demanding immediate processing which is silencing the poor background bird process.

[–] sunbeam60@feddit.uk 34 points 23 hours ago

This is legit the biggest lol. Yes I’m aware this is the PS/2 path only and today it’s actually polling on USB or Bluetooth keyboards but this really tickled me. The face of that CPU bird!

[–] MonkderVierte@lemmy.zip 8 points 19 hours ago (1 children)
[–] xav@programming.dev 2 points 8 hours ago

Because it was interrupted by an important message

[–] Cris_Citrus@piefed.zip 94 points 1 day ago* (last edited 1 day ago) (2 children)

This is so much better not being a programmer, and having no context. I just get to watch this get posted and people are enjoying whatever the fuck this is, and that makes me happy

[–] pedz@lemmy.ca 78 points 1 day ago (1 children)

TBF this is not really about programming. You have to be knowledgeable about how computers work and their history for this one.

[–] Mountainaire@lemmy.world 23 points 1 day ago (2 children)

Okay, so go on... I, too, am hardly a programmer yet hangs out here anyway and have no idea of what this is all about, haha.

[–] DaleGribble88@programming.dev 106 points 1 day ago (9 children)

The weird text the main bird is rattling off it something called "Assembly". Many programming languages don't really tell the computer what to do, they more or less outline the behavior they want, and then another program called a compiler turns that into 1s and 0s that a computer can actually understand. If you've ever heard of binary, that's what these 1s and 0s are. Assembly is one level of abstraction* above the 1s and 0s. It is a good way for humans to understand what a computer is actually doing without having to look at the original programming code, and without 1s and 0s. So the main bird represents a computer doing it's thing, running some program.

Then comes the crow with a "Hello It's me. The Keyboard! Someone pressed the letter e." The crow represents something called an interrupt, which is exactly what it sounds like. It interrupts the normal flow of a program to signal to a computer "Hey, you need to deal with this. Like, now."

The reason why he is a keyboard is because that is how old keyboards used to work. Before USB ruled the world, mice and keyboards used something called a PS2 port. If you ever saw an old mouse or keyboard with a green or purple plug on one end instead of a USB, then that's the old style we are talking about.

Modern USB keyboards are a little more polite and will wait in a line until the computer is ready to deal with whatever the human just typed, but old PS2 keyboards used interrupts to demand attention. This was really important for old slow computers that needed to respond to user input ASAP. Modern computers can handle that sort of thing a little bit better.

I think that is enough context to understand the meme.

*Not really: see ISA layer and micro-ops for more information

[–] Fmstrat@lemmy.world 5 points 18 hours ago (1 children)

I wonder how many people think this meme is about autocorrect for "mov".

[–] dmention7@midwest.social 2 points 12 hours ago

Tech-literate non-programmer who gets most of the jokes posted here... that's what I thought at first, but it seemed like a clunky joke.

The moment I clicked into the comments and saw someone mention interrupts, the joke made so much more sense!

[–] nightwatch_admin@lemmy.world 28 points 1 day ago (2 children)

This is a great explanation!

But I do have to say, you darn kids with your fancy newfangled PS/2 input.. in my days we had proper serial or DIN ports!

[–] leftzero@lemmy.dbzer0.com 18 points 1 day ago (3 children)

I saw a computer with a parallel port at work the other day.

No idea why it had it, it also had a couple blue USB3 ports. Also VGA and HDMI, and a bicolour PS/2. Damn weird mainboard.

Zoomer intern was wondering what it was and I got to tell him about parallel and serial and all that. Made me feel nostalgic. And old.

"Work" computers will often have legacy ports because maybe you need it to connect to some old printer.

There are a lot of places still using old-style dot matrix printers or other weird old hardware. Point-of-sale systems made to this day often come with a bunch of serial, or not quite serial, ports.

load more comments (2 replies)
load more comments (1 replies)
[–] m33@lemmy.zip 6 points 22 hours ago

I’m surprised no one interrupted you 🤔

load more comments (6 replies)
load more comments (1 replies)
load more comments (1 replies)
[–] Grass@sh.itjust.works 37 points 1 day ago* (last edited 1 day ago)

I used to game with a guy that swore by ps/2 keyboard for the interrupt supposedly making his inputs easier to perfectly time, but he got into a heated argument with my other gaming buddy over whether or not his mobo just had a usb ps/2 port that was basically a built in adapter and I never heard from either of them since.

I wish arch was a thing back then so I could have thrown in the standard line and have the last laugh.

[–] Heavybell@lemmy.world 24 points 1 day ago

This is funnier than it is. :)

[–] rizzothesmall@sh.itjust.works 85 points 1 day ago (6 children)
[–] PhobosAnomaly@feddit.uk 38 points 1 day ago (1 children)

"knock knock"

"Who's there"

"The interrupting cow"

"The interrupting cow wh.." "MOOOOOOO"

[–] rizzothesmall@sh.itjust.works 21 points 1 day ago* (last edited 1 day ago)

Immediately pushes FLAGS, CS, and IP onto the stack, clears IF, and jumps to the cow Service Routine at 0x0000:0x0040

I thought of a better version: Immediately stacks everything I'm carrying and jumps on the cow

[–] rockerface@lemmy.cafe 18 points 1 day ago

It's the CORVID-19

load more comments (4 replies)
[–] WagnasT@piefed.world 52 points 1 day ago (1 children)
[–] fulg@lemmy.world 9 points 19 hours ago (1 children)

The thing that bothers me the most here is that the meme is using 64bit assembly instructions, which did not exist at the time keyboards were using IRQs to communicate. 🤣

[–] boonhet@sopuli.xyz 6 points 18 hours ago (1 children)

Did they upgrade PS/2 to use something other than interrupts? Because my earliest 64-bit CPU was in a computer manufactured in the early 00s and I'm pretty sure that mobo still had actual PS/2 ports, not USB converters or something.

[–] circuitfarmer@lemmy.world 3 points 9 hours ago* (last edited 9 hours ago)

PS/2 did still use interrupts.

And the first x86-64 processors were the AMD Opteron (servers) and the Athlon 64 (consumer-grade), both of which came out in 2003. PS/2 was still around then, so...

Meme checks out.

Here's a specific example of a Socket 754 (Athlon 64) mobo with PS/2 ports.

[–] gravitas_deficiency@sh.itjust.works 50 points 1 day ago (1 children)
[–] ch00f@lemmy.world 59 points 1 day ago (2 children)
[–] Windex007@lemmy.world 14 points 1 day ago* (last edited 1 day ago) (1 children)

I viscerally recall, and don't think kids now will ever fully comprehend the one week where all 4 wheels fell off the meme bus and this was what people were literally posting. I'm legitimately triggered.

[–] embed_me@programming.dev 10 points 23 hours ago (1 children)

I remember laughing at this meme and now I turn my nose up at 6-7

[–] MousePotatoDoesStuff@piefed.social 6 points 22 hours ago (1 children)

Intergenerational humor time

E6-7

[–] dellish@lemmy.world 4 points 19 hours ago

You sank my battleship!

load more comments (1 replies)
[–] deadbeef79000@lemmy.nz 38 points 1 day ago (1 children)

USB keyboards yelling into the void in the background hoping to be noticed.

[–] SpaceNoodle@lemmy.world 21 points 1 day ago (7 children)

They ain't even, the host actually polls "interrupt" endpoints

load more comments (7 replies)
load more comments
view more: next ›