I remember one GitHub project that implemented some algorithm (I think it was Dijkstra’s) but only used 4 or 5 single letter variables and just kept reusing them.
When I was in college, I had a guy that I was working on a project with that did this constantly. At one point I looked at one of his files and the variables were named a, b, c, aa, ab, ac, ba, bb, etc. That when I was like, bro, you gotta stop doing this.
“Inside you there are two wolves…” or something:
Option 1: Sit down with them and go line by line through it. Make him identify each variable’s purpose and then immediately find and replace to rename every instance with a more descriptive name.
Option 2: Small script to shuffle the variable names in his code around after each of his commits.
Only if they are well-known in the language you’re using or domain you’re writing for. x
and y
are fine for coordinates. i
and j
are fine for loop indices. But abbreviating things unnecessarily is bad IMO. s = GetSession()
is too terse, for example.
“result” is fine. That is the variable you will end up returning that you have to fill with stuff first.
“data” on the other hand…
As a person who victimizes coworkers like this, I apologize. Thank you for pointing it out, and I will stop doing it.
Be proud that it’s a step up from var x
Be scared that your coworkers are planning how to best apply the baseball bat to your knees anyway
Well obviously it’s the result of some algorithm that will happen.
I’ve had instances where I worked with an API so badly designed in a dynamic language that I had no idea what I might receive.
This, when I get something back that’s not what I expected, I just logged the type because I really don’t know what it is. It’s the result. Whatever that means.