I worked with a guy who was a pretty decent programmer, but his background was really heavy in Linux engineering. His variable names were horrible. He named everything as if it was going to be some CLI command. Even that wasn’t the worst. At one point he had var1 - var17. Having to maintain that code has not been fun. If re-write it if I didn’t know it was going to go away.
I tried talking to him about it many times while we were working together, but he just kept on doing what he was doing.
That just sounds to me like he hasn’t worked on large code bases with multiple teams. No way it would be considered acceptable once you’re interesting with enough other people.
I tried going the style guidelines route, but we didn’t have a good code review process to really enforce it. It basically would have ended up being me doing 100% of the reviews. At the time I was just happy to get them to actually use source control properly.
We’re getting there. Though I’m not sure what kind of rule in a CICD process could check to see if a variable name actually made sense. Using snake or camel case, sure, but how does it know if ‘dc_loc_5’ is good or not from the perspective of someone who needs to maintain the code?
This sadly sounds like one of the projects on my teamat the moment and it’s horrifying.
One guy working on it, I’m really the only reviewer. Code is all stuff like this. Variables named j1 through j20, dozens and dozens of nearly identical functions with tons of brute force, copy-pasted code, etc. Works well enough but it’s just horrifying to try to read and review.
Edit:. Just remembered, he had all these grouped functions passing (and sometimes returning) 60+ identical variables that didn’t need to be local because he refused to use class vars, etc.
He’s gotten a lot better about this stuff in the last year though
You know, as an amateur with massive impostor syndrome who’s probably going to be applying for jobs soon, this comment and those like it give me strength.
I work with a guy who is constantly patting himself on the back about how great he is, nitpicking everyone’s stuff based on his own ignorance, and bragging about his 20 years in the industry. He is primarily a Python dev and has never written a class. He thinks anyone who write anything in a language he doesn’t know is some kind of wizard. He’s constantly trying to answer people’s questions by posting half—ass answers from ChatGPT. And he will spend months battling for an ideal based of a quick search and 2 minutes of reading; it takes a hammer to the head to get him to back down and admit he’s wrong and didn’t have all the information when he started the fight. Most people just let him go, because they don’t have the energy for it.
I’ll take an amateur with imposter syndrome looking to learn every single day of the week, over a self-important, know it all, blow hard.
I found a variable named “t” Friday. I figured I must be looking at the minified version, but nope! Someone just decided to name something “t”, I have no idea why.
I worked with a guy who was a pretty decent programmer, but his background was really heavy in Linux engineering. His variable names were horrible. He named everything as if it was going to be some CLI command. Even that wasn’t the worst. At one point he had var1 - var17. Having to maintain that code has not been fun. If re-write it if I didn’t know it was going to go away.
I tried talking to him about it many times while we were working together, but he just kept on doing what he was doing.
That just sounds to me like he hasn’t worked on large code bases with multiple teams. No way it would be considered acceptable once you’re interesting with enough other people.
Or just worked on codebases long enough to forget them… the biggest bastard I’ve encountered has been past me
Solution: Code Style Guidelines doc that the team agrees on. A checkbox in the PR template that affirms that code is compliant with the guidelines.
This way it’s not personal, it’s a rule that everyone should follow as a shared standard.
I tried going the style guidelines route, but we didn’t have a good code review process to really enforce it. It basically would have ended up being me doing 100% of the reviews. At the time I was just happy to get them to actually use source control properly.
Use cicd tooling to enforce it not human eyes
We’re getting there. Though I’m not sure what kind of rule in a CICD process could check to see if a variable name actually made sense. Using snake or camel case, sure, but how does it know if ‘dc_loc_5’ is good or not from the perspective of someone who needs to maintain the code?
This sadly sounds like one of the projects on my teamat the moment and it’s horrifying.
One guy working on it, I’m really the only reviewer. Code is all stuff like this. Variables named j1 through j20, dozens and dozens of nearly identical functions with tons of brute force, copy-pasted code, etc. Works well enough but it’s just horrifying to try to read and review.
Edit:. Just remembered, he had all these grouped functions passing (and sometimes returning) 60+ identical variables that didn’t need to be local because he refused to use class vars, etc.
He’s gotten a lot better about this stuff in the last year though
You know, as an amateur with massive impostor syndrome who’s probably going to be applying for jobs soon, this comment and those like it give me strength.
I work with a guy who is constantly patting himself on the back about how great he is, nitpicking everyone’s stuff based on his own ignorance, and bragging about his 20 years in the industry. He is primarily a Python dev and has never written a class. He thinks anyone who write anything in a language he doesn’t know is some kind of wizard. He’s constantly trying to answer people’s questions by posting half—ass answers from ChatGPT. And he will spend months battling for an ideal based of a quick search and 2 minutes of reading; it takes a hammer to the head to get him to back down and admit he’s wrong and didn’t have all the information when he started the fight. Most people just let him go, because they don’t have the energy for it.
I’ll take an amateur with imposter syndrome looking to learn every single day of the week, over a self-important, know it all, blow hard.
Stop right there. This idea does not exist in a workplace setting
Is he perhaps a decompiler?
I found a variable named “t” Friday. I figured I must be looking at the minified version, but nope! Someone just decided to name something “t”, I have no idea why.
I pity the fool!