this post was submitted on 17 Aug 2024
613 points (93.0% liked)

Programmer Humor

32380 readers
1402 users here now

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

Rules:

founded 5 years ago
MODERATORS
 
top 49 comments
sorted by: hot top controversial new old
[–] [email protected] 55 points 2 months ago (2 children)

moneymoneymoneymoneymoneymoneymoney moneymoneymoneymoneymoneymoneymoney moneymoneymoneymoneymoneymoneymoney moneymoneymoneymoneymoneymoneymoney

[–] [email protected] 21 points 2 months ago

Error: undefined reference 'money'

[–] [email protected] 0 points 2 months ago

Syntax Error, line 1: ‘moneymoneymoneymoneymoneymoneymoney moneymoneymoneymoneymoneymoneymoney moneymoneymoneymoneymoneymoneymoney moneymoneymoneymoneymoneymoneymoney’ is not defined

[–] [email protected] 54 points 2 months ago (2 children)

"I'm writing a recursive method with threads to optimize the CPU usage in a 0.02%" THIS IS A NONSENSICAL STATEMENT MADE BY DERANGED PEOPLE

I mean this is correct though

[–] [email protected] 13 points 2 months ago (2 children)

Recursion makes it cheaper to run in the dev's mind, but more expensive to run on the computer. Subroutines are always slower than a simple jump.

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

Recursion makes it cheaper to run in the dev's mind, but more expensive to run on the computer.

Maybe for a Haskell programmer, divide-and-conquer algorithms, or walking trees. But for everything else, I'm skeptical of it being easier to understand than a stack data structure and a loop.

[–] [email protected] 4 points 2 months ago

Dynamic programming: Heyyy...

[–] [email protected] 7 points 2 months ago

Yeah, you have to be pretty deranged to mix multithreading and recursion together.

[–] [email protected] 34 points 2 months ago (1 children)

while (true) { print money; }

Someone’s never heard of Bitcoin

[–] [email protected] 0 points 2 months ago* (last edited 2 months ago)

if print-money == false then mine-bitcoin;

[–] [email protected] 17 points 2 months ago (1 children)

Did the person writing this have a stroke?

[–] [email protected] 8 points 2 months ago

They certainly do like to use the word "in" a lot.

[–] [email protected] 17 points 2 months ago (3 children)

Optimizing CPU usage by 0.02% is something only the truly deranged do

[–] [email protected] 11 points 2 months ago

I saw an article last week about a one-liner they were adding to the Linux kernel that would reduce the startup time by .03 seconds, and let me tell you, I was relieved.

[–] [email protected] 11 points 2 months ago (1 children)

Not necessarily. It depends on what you're optimizing, the impact of the optimizations, the code complexity tradeoffs, and what your goal is.

Optimizing many tiny pieces of a compiler by 0.02% each? It adds up.

Optimizing a function called in an O(n^2^) algorithm by 0.02%? That will be a lot more beneficial than optimizing a function called only once.

Optimizing some high-level function by dropping into hand-written assembly? No. Just no.

[–] [email protected] 4 points 2 months ago (1 children)

0.02% means you’re saving a fraction of a second for every hour of runtime. A lot of adding up is required to make it significant enough for anyone to notice.

Better to spend that time and effort on things that actually bring value. These kind of micro optimizations can also make the code unnecessarily complicated and difficult to work with, which is a hindrance for the optimizations that truly matter.

[–] [email protected] 4 points 2 months ago* (last edited 2 months ago)

In a single one-off program or something that's already fast enough to not take more than a few seconds—yeah, the time is spent better elsewhere.

I did mention for a compiler, specifically, though. They're CPU bottlenecked with a huge number of people or CI build agents waiting for it to run, which makes it a good candidate for squeezing extra performance out in places where it doesn't impact maintainability. 0.02% here, 0.15% there, etc etc, and even a 1% total improvement is still a couple extra seconds of not sitting around and waiting per Jenkins build.

Also keep in mind that adding features or making large changes to a compiler is likely bottlenecked by bureaucracy and committee, so there's not much else to do.

[–] [email protected] 3 points 2 months ago
[–] [email protected] 13 points 2 months ago (1 children)

I'm a senior dev and I'll be honest: I'm not sure what I do.

[–] [email protected] 25 points 2 months ago (1 children)

You enchant rocks engraved with runes

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

Computer programmers are the wizards of the present.

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

There was a series of books in the '80s where a systems programmer gets pulled through a portal into your typical magical world, good vs evil, etc.

They subsequently look at the magical spells in use and realise they can apply Good Systems Programming Practices™ to them. And thus, with their knowledge of subroutines and parallel processing, they amplify their tiny innate magical abilities up to become a Pretty Good Magician™. So while all the rest of the magicians basically have to construct their spells to execute in a linear fashion, they're making magical subroutines and utility functions and spawning recursive spells without halting checks and generally causing havoc.

It's quite a good allegory for modern times, where a select few build all the magic and the rest just have useful artefacts they use on a day to day basis with no idea how they work

[–] [email protected] 4 points 2 months ago

That sounds very interesting, do you remember the name or the author?

[–] [email protected] 8 points 2 months ago (1 children)

I take offense to the teapot joke. Leave the teapots out of it.

[–] [email protected] 3 points 2 months ago

Tell that to Don Norman.

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

This is a butchered rip off of an actual joke.

[–] [email protected] 40 points 2 months ago (2 children)

I mean, that's what a meme template is, yes.

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

It's your claim this was produced with an image macro??

[–] [email protected] 7 points 2 months ago

Jokes on you, the Fed has been running that bottom program for years.

[–] [email protected] 7 points 2 months ago

The angle between my chin and my lip corner has increased. Thank you.

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

I think I had enough Internet for today.

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

What scares me, is that this can really not be a joke

[–] [email protected] 3 points 2 months ago

Except the teapot. The teapot is highly valuable.

[–] [email protected] 5 points 2 months ago (1 children)

OK. I guess it's time to go start my rutabaga farm now.

[–] [email protected] 5 points 2 months ago* (last edited 2 months ago) (1 children)

Oh is that kinda like a raspberry or orange pi farm?

Sounds kinda RISCy in this economy...

[–] [email protected] 4 points 2 months ago

Yeah, better use something that isn't ARM

(In germany, arm means poor)

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

What's the teapot a reference to?

[–] [email protected] 10 points 2 months ago
[–] [email protected] 10 points 2 months ago (1 children)
[–] [email protected] 5 points 2 months ago

I was aware of status code 418. The whole thing being a huge April Fools joke is amazing.

[–] [email protected] 3 points 2 months ago

But we had to program the computer for it to be able to do math in the first place?

[–] [email protected] 3 points 2 months ago

I can't not read this in Ron Swanson's voice.

[–] [email protected] 2 points 2 months ago

All this computer stuff is a complete useless scam for sure.

[–] [email protected] 2 points 2 months ago

Why is it that 5 minutes before bed time when I'm really tired do I have the urge to fire up a C tutorial?