this post was submitted on 28 Aug 2024
710 points (99.6% liked)
Programmer Humor
32396 readers
686 users here now
Post funny things about programming here! (Or just rant about your favourite programming language.)
Rules:
- Posts must be relevant to programming, programmers, or computer science.
- No NSFW content.
- Jokes must be in good taste. No hate speech, bigotry, etc.
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I know it's a joke, but I do not enjoy being in the position with the stick.
Like, man, they'll sometimes check in some stupid stuff. Yesterday, I told two juniors to implement a unit test and they could use annotations like on another unit test, which I also explained.
Problem is, I had introduced that unit test a week ago and had given it an ignored-annotation, to document that that's currently broken.
And you guessed it, they copied that ignored-annotation, too, complete with the comment "//TODO currently broken". The test they implemented was not run, not even once.
And like, what the fuck do I do with that? Sure enough, it was a miscommunication, I'll try to be clearer next time.
But I'd also really like to explain to them whatever information they were missing, if they were missing any. Like, did they not know what the ignored-annotation does? Did they not think at all and just verbatim copied everything?
And then the problem is, this is kind of so dumb, that even just bringing it up is going to be embarassing for them. It's already me beating them with a stick.
I'd much rather praise them when they do something well, but this is so hard to spot when just reading over committed code. All the obstacles they cleared are not visible in there.
Completely understand the frustration here. Mistakes happen, even competent people sincerely trying to do a good job can overlook things, etc. But if it's a pattern of just copying and pasting code without really even trying to understand what it does, that's a big problem that needs to be addressed. And frankly they should feel embarrassed if it happens more than once or twice.
OTOH, delivering criticism in a way that winds up productive for all involved is difficult at best, and the outcome depends on the junior as much as it does the senior. What good is being right if it ultimately just alienates you from your team? Tough situation for sure, and one of the many reasons it's so important to hire carefully (which is itself a whole huge can of worms too!).
Can you simply ask them to walk through their submission line by line with you, explaining what it's doing? If you've never asked that before it might come across as a strange request, but if you phrase it well it's possible this causes them to notice their poor understanding without you ever seeming to point it out.
This. Code reviews, especially with junior devs, should always be done as a conversation. It's an opportunity to learn (from both sides), not just a a bunch of "bad implementation. rewrite" thrown in the PR.
Completely agree! It's SO much easier to lighten the mood and keep things upbeat and productive in an actual conversation vs. just text-based feedback. For example it makes it easy to throw in self-deprecating anecdotes of your own when discussing mistakes / needed changes, which can really help put juniors at ease. It's just worlds better in >90% of scenarios.