this post was submitted on 26 Nov 2023
710 points (89.3% liked)

Programmer Humor

19480 readers
615 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
[–] [email protected] 11 points 11 months ago* (last edited 11 months ago) (2 children)

I’ve seen code that look like this:

int delay = 15 * 60; // 10 minutes

Even if the comment was on the same line someone forgot to update it. People just ignore comments.

Better solution is to write (in C#):

TimeSpan delay = TimeSpan.FromMinutes(15)

Much more obvious what the code actually means.

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

A better comment would be delay in seconds as that is the one thing not obvious from glancing at the code.

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

Or just name the variable delaySeconds if you really want to store it as an int. Bonus is that every use of the variable perfectly communicates what it is.

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

Is the better way is a runtime performance hit. Does the compiler optimize this?

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

It’s probably a little bit slower, but there are other things more worth to optimize than to shave off a few microseconds from a 15 minute delay.

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

Yeah, it adds up eventually when working with embedded platforms, but for PC stuff I agree.

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

If you’re working in embedded I guess you can probably make an inline function or a macro so it’s taken care of at compile time.