this post was submitted on 17 Jan 2025
740 points (98.9% liked)

Programmer Humor

20215 readers
1534 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] 109 points 2 weeks ago (2 children)
[–] [email protected] 76 points 2 weeks ago (4 children)
try {
    operation();
} catch {
    // nice weather, eh?
}
[–] [email protected] 16 points 2 weeks ago* (last edited 2 weeks ago) (2 children)

Starting with Java 21 (I think), they've introduced ignored variables, so you can now actually do this:

try {
    operation();
} catch (Exception _) {
    // nice weather, eh?
}

Edit: forgot that this is about JS lel

[–] jubilationtcornpone 8 points 2 weeks ago (1 children)

So basically the same as a discard in C#?

[–] [email protected] 2 points 1 week ago* (last edited 1 week ago)

Yeah, Python has it as well. I think the only real use of it is code readability since you declare that this variable will never be used.

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

If your joking yes, if your not Java and Java Script are seperate things.

[–] dajoho 2 points 2 weeks ago

His joking?

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

Actually made this mistake in front of 20 people the other day. Guy at my job mentioned coding in java and I asked if he was doing web dev 🤦

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

Plenty of java back end web development, so maybe not as embarrassing as you felt?

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

He said "I've been closing in C# and Java for 2 years" and I asked, in front of everyone, "are you doing web dev?" And he just coldly said no

See this could have been fine if I didn't double down and go "then what are you using java for... OH WAIT"

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

☑️ PR Approved

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

Thanks. I hate it.

[–] [email protected] 3 points 1 week ago
with contextlib.suppress(BaseException):
    do_thing()
[–] [email protected] 18 points 2 weeks ago (2 children)

On Error Resume Next

Visual Basic is a beautiful language

[–] [email protected] 5 points 2 weeks ago
On error goto 0 

Was always syntacticly confusing for me.

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

I legitimately use this line in one of my scripts because range.find returns an error of the value is not found. The use case is taking a 2d matrix saved as an array, with data collected from multiple excel tabs and rearranging it for a CSV upload into Salesforce. The initial array contains values that the rest of the data does not have, so when I search for a non existent value, I can skip the error.

Of course vba COULD just implement try/catch statements and that'd be so much cleaner, but alas.

[–] [email protected] 64 points 2 weeks ago

If I can't see it, is it really there?

[–] [email protected] 55 points 2 weeks ago
[–] [email protected] 53 points 2 weeks ago

If it wanted to get my attention it should have been an error

[–] [email protected] 47 points 2 weeks ago (4 children)
[–] [email protected] 30 points 2 weeks ago

I would add: until it doesn't.

[–] [email protected] 23 points 2 weeks ago

This is why:

"It ain't stupid if it works."

is fundamentally incorrect.

[–] [email protected] 9 points 2 weeks ago

Sometimes it’s better to hope while closing eyes

[–] ayyy 2 points 2 weeks ago* (last edited 2 weeks ago)

1 week later… why is this codebase always broken? We’ll have to throw it away and do a rewrite.

[–] [email protected] 38 points 2 weeks ago

Warnings are for ignorings :3

[–] [email protected] 37 points 2 weeks ago (3 children)

Eh it's Javascript. Anything goes

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

Yeah, array.length is mutable in javascript. I'm surprised it caught on.

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

If i can just suppress the warnings which need to be fixed till morning in my buggy code, anything goes!

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

Warnings? We’ll come back and address those later. Maybe once we’re feature complete. Or maybe shortly after that.

[–] jubilationtcornpone 9 points 2 weeks ago

Don't worry. We'll totally fix all of them soon. Promise. Hand to God. They definitely will not be here five years from now.

[–] [email protected] 23 points 2 weeks ago (1 children)

Meanwhile in another universe one of my biggest win was to introduce this line in our PR validation pipeline.

eslint . --max-warnings 0
[–] [email protected] 3 points 1 week ago (1 children)

Works so well, and soothes the warning annoyance brain, and keeps warnings from eventually becoming errors.

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

In a codebase with a lot of warnings is even better for me to add a disable comments for all the existing warning and then not allow any new one in.

And then each time a part of the code needs to be touched the existing warning there should be solved too.

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

Several times I've set the max warnings to whatever the current warning count is, and then decreased that over time.

[–] [email protected] 20 points 1 week ago (1 children)

Actually fixing warnings is for noobs

[–] [email protected] 31 points 1 week ago (1 children)

if they mattered they'd be errors I'm sure

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

That's when you do CTRL+C, CTRL+V

[–] Classy 18 points 1 week ago (1 children)

I, too, place 2> /dev/null after every line

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

Yes, but 2>&1 > /dev/null is the real hero.

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

No, > /dev/null 2>&1 is. If try your example but with file instead null, stderr content not in file.

Because x>y not redirect x to y, but duplicate y and set x to y-duplicate. See bash manpage REDIRECTION (your example in that section for what not work).

As i understand, your example set 2 to what 1 is, then set 1 to null. Now 2 not null, but what 1 before.

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

So, the joke is that it should hide all output.

[–] [email protected] 1 points 1 week ago* (last edited 1 week ago)

Yes it do, your example do too. But if test thing and replace null with file, suddenly stderr missing. Happen to me, 5h debug session. Hope to help prevent that for other people.

[–] [email protected] 10 points 1 week ago

edit: works better when used together with StackOverflow.comment.enabled = false;

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

-ErrorActionPreference SilentlyContinue

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

I don't get it. This isn't funny. I wouldn't approve it in merge request. Most wouldn't.

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

Trying to hide problems and incompetence is the joke. A lot of people don't want problems solved, they just don't want to see them, and will take the easy route. If you just want that, this is the easy route.

Incompetent? Absolutely, that's the joke.