this post was submitted on 25 Oct 2026
371 points (95.1% liked)

Programmer Humor

33823 readers
1948 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 3 years ago
MODERATORS
 

Mine is that the useState hook is an actual plague on the entire React ecosystem. Regardless of your opinions of React, if you wanna use something then use it right.

top 50 comments
sorted by: hot top controversial new old
[–] ragas@lemmy.ml 2 points 23 hours ago

You should definitely look at how your time related code works and not trust the libraries.

Because most of the time your assumptions about how your library works will be wrong. And the rest of the time your library will be riddled with bugs.

[–] Wirlocke@lemmy.blahaj.zone 12 points 1 day ago

If you don't prematurely optimize your code you'll never optimize your code.

I know people are advised against premature optimization because it risks you wasting time on something that ends up unused.

But let's be honest, once you get something into a working state will you ever be afforded the time to go back to it? Even if you are, are you really gonna choose to uproot code and do a refactor on it and potentially everything relying on it?

Rather than waiting until your hacks and workarounds run out and you absolutely have to do a refactor, I would prefer spending more time upfront to make sure it is efficient and flexible before moving on.

[–] JackbyDev@programming.dev 18 points 2 days ago (2 children)

I've talked about it before, but I really hate PDFs. Specifically the things PDFs are used for. If you aren't planning to print something and will only ever look at it on a screen, HTML is better. It's so frustrating when you're going to a website, you know, a thing that serves content in HTML, and then some piece of information is in a PDF.

load more comments (2 replies)
[–] noahm@lemmy.world 9 points 1 day ago (1 children)

The unless keyword is an abomination

[–] historicaldocuments@lemmy.world 4 points 1 day ago (1 children)
x = "I disagree."
y = false
puts x unless y

I miss it when writing python.

[–] noahm@lemmy.world 3 points 1 day ago (1 children)

Specifically I hate it as a prefix. It's even worse when else clauses become involved!

x = "this is great"
y = "this is awful"
z = false

unless(z)
  puts(y)
else
  puts(x)
end
[–] historicaldocuments@lemmy.world 1 points 16 hours ago

Despite this being the perfect spot for one, I'm not a fan of ternary operators but syntax isn't supposed to matter...

Since we're going for unpopular opinions or hills to die on: if syntax didn't matter we'd all be using Ada.

[–] PokerChips@programming.dev 16 points 2 days ago (1 children)

Linux should be forked at a pre-ai date.

[–] explodicle@sh.itjust.works 6 points 2 days ago (1 children)

I've got good news for you!

[–] PokerChips@programming.dev 6 points 1 day ago

Ha! Well, by a solid group of committed lead devs I guess is my point.

Who's coming with me!?

[–] mlg@lemmy.world 40 points 2 days ago (2 children)

The entire modern web tech stack should be thrown in a dumpster, ignited with gasoline, and blown up with a nuke for good measure.

[–] UFODivebomb@programming.dev 6 points 2 days ago

100%

I want an entire separation between my view and the data. We strayed from the true path as soon as we let web sites enforce the CSS

[–] cobalt32@lemmy.blahaj.zone 4 points 1 day ago

I would love to see TCP/IP replaced by something more secure and uncentralizable like Reticulum.

[–] NocturnalMorning@lemmy.world 7 points 1 day ago* (last edited 1 day ago)

I just got out of an interview where they pretty much told me they will ask me to vibe coded the tool they're working on. LLMs do not make your code faster, and you are not more productive using it. I will never change my mind. We coded for 70+ years without it. You're gonna end up with some subtle hard to reproduce bugs that are intermittently reproducible, and code that is nearly unmaintainable, and nobody knows what it does or how it works.

Good luck with that.

[–] Scrogu@lemmy.zip 5 points 1 day ago (1 children)

Object oriented programming is dogshit.

[–] NotAnonymousAtAll@feddit.org 4 points 1 day ago (1 children)

How about overrated instead of dogshit?

[–] Tlaloc_Temporal@lemmy.ca 3 points 1 day ago

The overlap between those circles is not insignificant.

[–] marzhall@lemmy.world 3 points 1 day ago* (last edited 1 day ago)

Async/await turns the concepts from the [CSP] (https://en.wikipedia.org/wiki/Communicating_sequential_processes) that are useful into an overcomplicated mess in every language that implements it, and golang is a prime example of how clear and intuitive an implementation aligned with CSP can be without requiring arcane typing and language infrastructure that comes with async/await approaches.

[–] Sanctus@anarchist.nexus 4 points 1 day ago (1 children)

I like local LLMs. I got to try one recently and it felt different using open ones than corporate ones.

[–] Tlaloc_Temporal@lemmy.ca 2 points 1 day ago

This is the only way I would ever use one. Local, open, more ethically trained.

[–] HeHoXa@lemmy.zip 3 points 1 day ago

My masochistic tendencies brought me back to say:

One reason python is a great language is that most LLMs are particularly good with it

[–] BeardededSquidward@lemmy.blahaj.zone 43 points 2 days ago (3 children)

Cloud computing is the biggest breach of privacy out there that we've adopted whole hearted.

load more comments (3 replies)
[–] carotte@lemmy.blahaj.zone 83 points 3 days ago* (last edited 3 days ago) (5 children)

if you're making a user-facing program, you should always design with the possibility that it will be run on some truly dogshit hardware and you should make sure that they still have a good experience. good computer hardware is a luxury on the world scale, even before the rampocalypse

related, but the answer to the question "who still uses {x} these days?" is almost always way, wayyyy more people than you think

load more comments (5 replies)
[–] philipp_@discuss.tchncs.de 50 points 3 days ago (7 children)

systemd does a lot of things very right and a mayor reason that linux is in a way better place than 15 years ago. 27 unmaintained tools are not better than one that is professionally developed.

load more comments (7 replies)
[–] ColdWater@lemmy.ca 19 points 2 days ago* (last edited 2 days ago) (9 children)

Not a programmer, but I hate softwares that use python, why the fuck it requires 10 million dependencies to function?

load more comments (9 replies)
[–] randombullet@programming.dev 28 points 2 days ago (1 children)

I remember on Reddit several years ago I said that automatic bitlocker is the curse of installing W11 on a laptop.

I got down voted so hard. One comment even said you should be thankful because encrypting by default should be the norm.

But yet if I add any thunderbolt device to my windows before I boot it, it requires me to input my 25 character bitlocker key... that's hosted online within my Microsoft account.

Bitlocker enabling by default without user input is horrible. Hosting the keys online is also horrible. It could be so easy to socal engineer into your Microsoft account.

load more comments (1 replies)
[–] canaryWart@programming.dev 13 points 2 days ago (5 children)

HTML/TeX/etc are real programming languages that just happen to be declarative as opposed to imperative.

load more comments (5 replies)
[–] AeonFelis@lemmy.world 20 points 2 days ago (8 children)

Unit tests are overrated to the point of being harmful. They have their place, but that place is certainly not "the base of the testing pyramid". They are useful for a very specific type of "units" - and using them anywhere else just messes things up.

[–] ragas@lemmy.ml 1 points 23 hours ago

Gosh I totally aggree! The amount of discussions I had about this is staggering.

From both sides. Devs who didn't understand what a unit-test actually is and devs who thought if they have unittests that they must have perfect functionality.

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