Let him play in the legacy code. You can just hose him off later before letting him back into the office so he doesn’t track it everywhere.
Unfortunately if you let Junior play in legacy code once, it’ll learn some nasty habits and make more of it from scratch, usually when you’re trying to sleep.
deleted by creator
I don’t want that shit all over me though. That’s why I hired junior!
That’s what the line represents. So they can pull you if you do something nasty.
deleted by creator
If you are creating an alternative implementation and leaving the old one in place, you are not fixing a problem, you are just creating a new one (and a third one because you have duplication of logic).
Either refactor the old function so that it transparently calls the new logic or delete the old function and replace all the existing usage with usage of the new one. It does not need to happen as a single commit. You can check in the new function, tell everyone to use it, and clean up usage of the old one. If anyone tries to use the old implementation, call them out in a code review.
If removing or replacing the old implementation is not possible, at least mark it as deprecated so that anyone using it gets a warning.
deleted by creator
I’m sure that ring buffer started out as a “temporary solution”.
God, I would love that so much
deleted by creator
me when first starting out at a job commenting everything I can
VS
me a couple years in completely lost because I never updated the comments and now none of them make any sense whatsoeverYeah well now we have git copilot where your comments include AI suggestions.
Now I have TONS more comments
The leash is good unit testing.
Oh, he’ll just change the unit test if it fails.
Unit tests are there to get an @ignore annotation!
There’s also that long time senior dev who’s overly confident in their abilities and force pushes production breaking code directly to master.
Not for long there isn’t.
Nah, they’re the one who’s contributing most to the project. Mostly because their code is so garbage no one else can work with it. But that’s not a thing the managers take into account.
Yeet that shit into main. Who needs unit tests, it works on my computer?
If it works in my mind it’s ready for production
Top kek
YOLOdev is the best way to dev
This shit happened the other week for me. Senior dev pushed the shittiest JS code without testing the day of a production install and it caused us to have to roll back the install after it very predictably caused a bunch of crashes for pages on our public site. Worst part is, the entirety of what he wrote could’ve been implemented as a CSS media query
Look, it’s me.
Just let me rewrite ONE report from scratch so it doesn’t check a specific unindexed table that it doesn’t actually need to check and causes the report to be killed by MSQL because it takes too long to run.
Please just one rewrite. Please.
Just one little crystal report.
Just one little crystal report.
Ugh 🤮
I mean I agree with the vibe of that image but holy niche.
Make him unit test it all and then they can do changes that don’t break.
Often enough, the old code is so badly intertwined that it’s impossible to actually test. Those are the moments where all you can do is nuke it from orbit.
Well I was going for that… They will surrender before they do any changes.