this post was submitted on 26 Nov 2023
711 points (89.4% liked)

Programmer Humor

19450 readers
509 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] 117 points 11 months ago (44 children)
[–] [email protected] 12 points 11 months ago (43 children)

Yeah, but unironic...

If your code needs comments, it's either because it's unnecessarily complex/convoluted, or because there's more thought in it (e.g. complex mathematic operations, or edge-cases etc.). Comments just often don't age well IME, and when people are "forced" to read the (hopefully readable) code, they will more likely understand what is really happening, and the relevant design decisions.

Good video I really recommend: https://www.youtube.com/watch?v=Bf7vDBBOBUA

[–] [email protected] 11 points 11 months ago* (last edited 11 months ago) (6 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] 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.

load more comments (4 replies)
load more comments (40 replies)
load more comments (40 replies)