this post was submitted on 03 Oct 2023
500 points (96.0% liked)

Programmer Humor

19463 readers
30 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
[–] krey@sh.itjust.works 16 points 1 year ago (2 children)

The trick is to name everything in a way so you don't have to remember stuff. Like instead of class "Cronjob" method "process", name it "ImageCacheEraser" and "purgeByContentID". Same goes for variables. No need for short names. Nowadays, you can even write with short names at first, so typing is faster, then just use your IDE to rename them to full size afterwards.

[–] Speculater@lemmy.world 7 points 1 year ago (2 children)

Just not too short or you'll end up renaming a random variable you didn't mean to... I've heard.

[–] krey@sh.itjust.works 3 points 1 year ago

Some IDEs (like Netbeans, Intellij, PhpStorm) can rename only in the scope of the selected item. So if you used variable "a" in 2 methods, it would only rename in the selected method and it understands the variable is different from "ab" and won't replace the "a" part of that.

[–] hemko@lemmy.dbzer0.com 1 points 1 year ago

Agreed except for the variables. You can pry the iterators i, j, k, the pointers p and q, and the temporary buffer buf, from my cold, dead hands.

Short variable names increase code clarity, particularly when the functions employing them are concise and named appropriately. There’s not much worse than using something like sourcedata[databufferiterator] instead of src[i]. It reminds me of authors who think that big words make them sound more intelligent. Needing or advocating auto complete in IDEs is a symptom of this kind of code smell, IMO.

Code should be clear and concise; it’s also why I fight for 8 character indentation; if your code is creeping across the screen it’s a damn good indication that the function might be too complex and should be broken up.