this post was submitted on 24 Jan 2024
993 points (98.2% liked)

Programmer Humor

19512 readers
355 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 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] Blackmist@feddit.uk 58 points 9 months ago (7 children)

Yeah, but sometimes it works.

[–] Aceticon@lemmy.world 20 points 9 months ago (1 children)

It's even worse then: that means it's probably a race condition and do you really want to run the risk of having it randomly fail in Production or during an important presentation? Also race conditions generally are way harder to figure out and fix that the more "reliable" kind of bug.

[–] dev_null@lemmy.ml 1 points 9 months ago

Or it was an issue with code generation, or something in the environment changed.

[–] CanadaPlus@futurology.today 9 points 9 months ago

Mmm, race conditions, just like mama used to make.

[–] noddy@beehaw.org 9 points 9 months ago

Good luck figuring out why it sometimes doesn't work 🙃

[–] Octopus1348@lemy.lol 7 points 9 months ago* (last edited 9 months ago)

There was that kind of bug in Linux and a person restarted it idk how much (iirc around 2k times) just to debug it.

[–] crushyerbones@lemmy.world 6 points 9 months ago

This is 100% valid when dealing with code generation sometimes and I hate it

[–] KairuByte@lemmy.dbzer0.com 2 points 9 months ago (1 children)

Legit happens without a race condition if you’ve improperly linked libraries that need to be built in a specific order. I’ve seen more than one solution that needed to be run multiple times, or built project by project, in order to work.

[–] abraxas@sh.itjust.works 2 points 9 months ago* (last edited 9 months ago) (1 children)

Isn't that the definition of a race condition, though? In this case, the builds are racing and your success is tied to the builds happening to happen at the right times.

Or do you mean "builds 1 and 2 kick off at the same time, but build 1 fails unless build 2 is done. If you run it twice, build 2 does "no change" and you're fine"?

Then that's legit.

[–] KairuByte@lemmy.dbzer0.com 1 points 9 months ago

Yup, it’s that second one. 0% chance of success until all dependencies are built, then the final run has a 100% chance to work.