this post was submitted on 11 Apr 2025
1137 points (99.4% liked)

Programmer Humor

22354 readers
2918 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
[–] [email protected] 41 points 1 day ago (1 children)

This symbol isn't needed for spells this long, but it's considered best practice and other wizards will make fun of me for not including it, even though it isn't needed.

[–] [email protected] 27 points 2 days ago

Who is the artist?

[–] [email protected] 24 points 2 days ago* (last edited 1 day ago) (4 children)

If you’re adding code you don’t understand to a production system you should be fired

Edit: I assumed it was obvious from context that I’m referring to copy-pasting code from stack overflow or an LLM or whatever without knowing what it does but apparently that needs to be said explicitly.

[–] [email protected] 12 points 1 day ago (1 children)

Many times the code we work on is built in abstractions we don't know about from top to bottom.

[–] [email protected] 1 points 1 day ago

If you are submitting work, you should understand how the code you're submitting works. Sure, you don't have to know exactly how the code it calls works, but if you're submitting code and there's a block of code and you have no clue how that block works, that's a problem.

[–] [email protected] 7 points 1 day ago (1 children)

I really like to build from zero, but some things are better copied, no matter if you fully understand them or fall short. :)

For example, I'm not qualified to check if Hamilton and Euler were correct - I only do as they explained, and later double-check the output against input.

[–] [email protected] 4 points 1 day ago

I didn't say never copy and paste. I'm saying when you push a commit you should understand what all the LOC in that commit do (not counting vendored dependencies). If you don't understand how something works, like crypto (not sure what Hamilton or Euler refers to in this context), ideally you would use a library. If you can't, you should still understand the code sufficiently well to be able to explain how it implements the underlying algorithm. For example if you're writing a CRC function you should be able to explain how your function implements the CRC operations, even if you don't have a clue why those operations work.

[–] [email protected] 6 points 1 day ago (1 children)

Never use libraries you don’t contribute to in Production

[–] [email protected] 5 points 1 day ago

There's a huge difference between copy-pasting code you don't understand and using a library with the assumption that the library does what it says on the tin. At the very least there's a clear boundary between your code and not-your-code.

[–] [email protected] 8 points 1 day ago (6 children)

So you code everything in Assembly from scratch?

[–] [email protected] 7 points 1 day ago (1 children)

No I just read the stack overflow guy's explanation and the other small comments around and they explain it.

[–] [email protected] 4 points 1 day ago

Closed as duplicate

[–] [email protected] 3 points 1 day ago (1 children)

I don't understand Assembly. Straight up binary only for me.

[–] [email protected] 1 points 1 day ago (1 children)

Same here. Assembly is a little too high level for me. I don't like the assembler guessing what I meant. I like telling processors exactly what to do.

Honestly, modern CISC processors are also a little high level if you think about it. I don't want the processor guessing what I meant to tell it. I like telling them exactly what to do.

[–] [email protected] 3 points 1 day ago

The processor is just going to guess wrong and might occasionally waste a few cycles!

[–] [email protected] 1 points 1 day ago

In what world is assembly more readable or easier to understand?

load more comments (3 replies)
[–] [email protected] 103 points 2 days ago (2 children)

"Oh, dude, you gotta stop using TJ's Action Rune of Changed Files. That runebook has a backdoor to one of the hells now. Didn't you see the patch notes?"

[–] [email protected] 8 points 1 day ago

Ugh, look, I get it. I know TJ's Lesser Action Rune of Changed Files that the Greater version does now, but TJ's price structure is bullshit and I'm not paying for Greater just because he refuses to "support" us users of Lesser. I don't even have a damn Portal, much less a Summoning Circle! Why are you so worried about a backdoor to the hells? Unless I connect this sigil to the weave nothing is going to come in or out. This sigil is only for monitoring the moisture content of my garden by way of a spell scroll attached. As we both know, scrolls and sigils use two different elements to communicate. One is gold ink and the other is silver ink. I have to use TJ's Action Rune of Changed Files to see if the document has changed due to moisture. The scroll cannot directly talk to my watering golem's receiving crystal.

[–] [email protected] 67 points 2 days ago (1 children)

I never update my spell book and nothing bad has ever happened.

Help. Infernal imps somehow got inside my sanctum and used my scrying orb to send rude messages to the rest of the Circle.

[–] [email protected] 28 points 2 days ago

You got lucky. Somebody snuck a wyrm into my codex that got all of my thralls mining for coin bits.

[–] [email protected] 52 points 2 days ago (6 children)

shout out to the trickster mod which is basically "what if magic is a lisp"

[–] [email protected] 26 points 2 days ago (1 children)

My brother in Christ, why must you inform us of cool things and leave us with less free time? 🫠

[–] [email protected] 18 points 2 days ago
[–] [email protected] 2 points 1 day ago

Omfg I read all of this for far to long thinking you meant casting spells with a lithp lisp. Like you might cast similarly named spells randomly. "Must be Skyrim, cool. Click! Minecraft doesn't have spells, what?"

[–] [email protected] 1 points 1 day ago (1 children)

How does it compare to hex Casting? I Tried getting into it but it seemed a Bit weird

[–] [email protected] 1 points 1 day ago (1 children)

hex casting is stack-based and has lots of different blocks for doing different things. trickster is fully functional and has very few blocks, but isn't as well balanced for use with other mods. at least i think that's the case.

[–] [email protected] 1 points 1 day ago (1 children)

So does that mean trickster is easier to get into?

[–] [email protected] 1 points 1 day ago

depends. it's still an entire programming language.

[–] [email protected] 6 points 2 days ago (5 children)

Interesting. Does this provide any game balance whatsoever?

I spent an embarrassing amount of time trying to design magic systems when I was a teenager, but they always ended up being either way too powerful or not "rich" enough to be interesting. It's just really hard to design a simple mechanical system that stays within arbitrary human boundaries.

Hmm, I feel myself getting drawn back in. That's almost like a zero-knowledge proof, and there's lots of weird ways to implement cryptographic primitives.

[–] [email protected] 6 points 2 days ago

no, it does not. there is a rune that consumes amethyst but it's just for flavour, so you can give your spell a cost if you want.

load more comments (4 replies)
load more comments (2 replies)
[–] [email protected] 24 points 2 days ago (1 children)

The manga (soon to be anime) Witch Hat Atelier's magic is kinda like this. Also it rocks so I definitely recommend it.

[–] [email protected] 6 points 2 days ago (1 children)

So happy its getting an anime, such a gorgeous manga

load more comments (1 replies)
[–] [email protected] 31 points 2 days ago (2 children)

Syntax error: Mismatched △
FATAL ERROR! DRAIN ARCANE ENTRY IMMEDIATELY!
ARCANE ENERGY COULD NOT BE DRAINED AND WILL BE DISPERSED WHEN PROCESS IS TERMINATED.
Kernel panic: Syntax error in interpreted kernel code. Spell OS 0.2.437 will now terminate.

*Firery explosion

“And that’s the most efficient way we’ve found of casting fireball. We’re still working on getting round to finding a more elegant solution.”

[–] [email protected] 12 points 2 days ago

"Thank you for playing Wing Commander"

load more comments (1 replies)
[–] [email protected] 27 points 2 days ago (5 children)

I've often wondered about who discovered arcane symbols/rituals.

Like, did some prehistoric guy just sit there drawing in the dirt until something happened?

[–] [email protected] 20 points 2 days ago

My head canon is that creatures such as ghosts, demons, djinns, ... enter our mortal realm willingly from time to time and sometimes form a connection with a person, who they then teach how to summon them in times of need. This knowledge is then passed down.

So effectively otherworldly creatures are tourists who gave a local their number and now they get bothered by their greatgreatgreatgreatgrandkids.

load more comments (4 replies)
[–] [email protected] 15 points 2 days ago* (last edited 2 days ago)

Pretty much most chem students doing labs.

[–] [email protected] 16 points 2 days ago* (last edited 2 days ago) (1 children)

🎵 Kier, chosen one, Kier.

Kier, brilliant one, Kier.

Brings the bounty to the plain through the torment, through the rains,

Progress, knowledge show no fear,

Kier, chosen one, Kier. 🎵

[–] [email protected] 5 points 2 days ago

Was looking for that comment

[–] [email protected] 16 points 2 days ago* (last edited 2 days ago)

Normally I could do this ritual with a single symbol but there is no support for primordial glyphs in this arcane framework unless you rewrite the whole thing in Elder Speech.

[–] [email protected] 6 points 2 days ago (2 children)

Man this is just another great example of why I think software is essentially magic.

At the root of it, the hardware, it's magic smoke. It's all based on magic from that point up - because the layer below the one you are using "works because it does."

[–] [email protected] 2 points 1 day ago

I think it depends a lot on a person's individual knowledge. If you keep studying far enough away from your main area of expertise, there'll still be some point where you stop and have to blindly accept that something "just works", but it will no longer feel like that's what your main field is based upon.

Imagine a chef. You can be an OK chef just by memorizing facts and getting a "feel" for how recipes work. Many chefs study chemistry to better understand how various cooking/baking processes work. A few might even get into the physics underlying the chemical reactions just to satisfy curiosity. But you don't need to keep going into subatomic particles to have lost the feeling that cooking is based on mysterious unknowns.

For my personal interest, I've learned about compilers, machine code, microcode and CPU design, down to transistor-based logic. Most of this isn't directly applicable to modern programming, and my knowledge still ends at a certain point, but programming itself no longer feels like it's built on a mystery..

I don't recommend that every programmer go to this extreme, but we don't have to feel that our work is based on "magic smoke" if we really don't want to.

[–] [email protected] 8 points 2 days ago (4 children)

If writing software makes you some sort of magician then writing in assembly should surely mean you are a cleric or warlock.

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