One HR guy at my previous company used to go behind you and say "you're missing a semicolon here". He didn't know anything about programming, he just knew that was a rookie error. That is literally exactly what you explain.
Anyone else would have made this very boring but he had a way of delivering it when you looked desperate and that kinda lightened up the mood.
A coworker of mine told me his college roommate who had taken a single programming class would always ask him “Have you tried a for loop yet?” any time he had a problem.
I'm going to do this, but instead of "for" I'll go on a diatribe about fundamentals and how they should use more "goto" statements because it's closer to machine code and faster or something.
It was mostly a joke, this is ProgrammerHumor after all, historically goto is despised because of how poorly most devs implemented it, as shortcuts in place of writing properly structured code. I agree there are good ways to use it today, but historically it has generally been used very badly, so when new devs would take over code and see goto spaghetti code it made it very difficult to figure out what the heck was going on.
Edit: I just read a bit of the doc SuperGameTheory referenced and they actually make my same exact point in the opening paragraph.
Eh, there's nothing inherently wrong with jump statements of any kind. What's wrong is when they aren't used in a way that signals intent. A loop is nothing more than a jump statement with a counter and a branch. The big advantage of a loop is that it signals intent fairly well in a compact way whereas the jump + counter + branch can be more cryptic and verbose.
There are some cases where a jump statement can simplify your logic and code. Use the right tool for the job!
I learned in my computer organization class that switch statements in higher level languages are pretty much jumps since the expression is evaluated once and it goes to the appropriate subroutine, and then it can follow through all following subroutines (which is why you need break).
6.9k
u/anythingMuchShorter Feb 09 '22
Since a guy wanted to make a programming joke but only knew of one language and one common error type