this post was submitted on 21 Nov 2023
280 points (97.0% liked)

Programmer Humor

32555 readers
641 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 
all 17 comments
sorted by: hot top controversial new old
[–] Bishma@discuss.tchncs.de 32 points 1 year ago

I was going through some js code a few months ago and every function in a module had return; as its first line. And that module was imported into 4 or 5 scripts.

[–] Jupy@linux.community 20 points 1 year ago

You folks have clearly not met first year CS students. Screenshots code

[–] xmunk@sh.itjust.works 7 points 1 year ago (2 children)

If you're in a language that supports it, please don't use if (false) use if ($disallowAllUsers = false && $whateverTheRealConditionIs)

[–] PlexSheep@feddit.de 4 points 1 year ago (1 children)

Never seen this, what language or buildsystem is this?

[–] xmunk@sh.itjust.works 2 points 1 year ago* (last edited 1 year ago) (1 children)

That specific language is PHP, but the tip is applicable in any language that supports inline assignment.

[–] TheOctonaut@mander.xyz 6 points 1 year ago
if (true === $wantToCauseErrorsForFun) {
    badOldFunction();
} 
[–] kogasa@programming.dev 1 points 1 year ago

The assignment syntax is too close to comparison, which is what is more typical in that position. I would recommend

const bool _isFeatureEnabled = false;
if (_isFeatureEnabled && ...)

if not a proper feature flag (or just remove the code).

bonus points if you use a different variable every file so they have to go through and change every instance if they want to make changes

[–] Asudox@lemmy.world 4 points 1 year ago* (last edited 1 year ago) (2 children)

I don't see the need for an if block or renaming the function and leaving it there. It is extra unnecessary work for the compiler. Comments are probably the best way. Might also copy the current file, put the original in some folder like "old", and delete the old code inside the new copy.

[–] dmrzl@programming.dev 7 points 1 year ago* (last edited 1 year ago) (1 children)

Comments are the worst as they are ignored by refactoring. That's the reason if (false) is actually really good for temporarily disabled code.

[–] jormaig@programming.dev 1 points 1 year ago

I never thought of that. That's quite smart!

[–] frobeniusnorm@lemmy.world 3 points 1 year ago

On a modern computer dead code analysis with constant folding should be nearly unnoticeable when compiling a large project

[–] Bankenstein@feddit.de 2 points 1 year ago (1 children)
[–] FiskFisk33@startrek.website 2 points 1 year ago

what about relying on the persistent undo history in vim?

[–] Archpawn@lemmy.world 1 points 11 months ago

In Python you put it in a multiline string, since it has those but not multiline comments.