My favourite is always;
Lemme quickly write this test, it passes great, if I make this little change it’ll fail. It’s still passing, damn.
The worst is when you expect an existing test to fail, but it passes, and it turns out the test wasn’t actually properly testing the code. Fixing the test finds a bunch of broken edge cases.
Then you ask questions about what the past person could possibly have been thinking. You wonder what logic path brought them to create the code this way. You check git blame. It was you.
Debugging. It’s a whodunnit where the victim, murderer, and investigator are all you.^(apologies to Filipe Fortes)
It’s always scary when it compiles without errors the first time. Then you just know there’s a logic bug or corner case in there somewhere.
It’s always a logic bug that you will find the day after you forgot about how the code works.
Congratulations your code will now be in production for the next hundred years.
Nothing is temporary. Every script, patch, application, and duct tape MacGyver/Scotty inspired fix I’ve ever written will run for eternity….
The first “temporary hack” I ever wrote for my current job (~January 2014) is still in the codebase.
if you didn’t intend for it to work and it’s working then it’s not working as intended
Corollary, what moron wrote this…oh, i did.
Of course I know him: he’s me!
One time I stayed up late trying to fix a really complicated problem that I couldn’t figure out. I was drinking. I got really drunk and fixed the problem. In the morning I couldn’t figure out my own code. I had no idea what I wrote, or how it worked, but it did work. I just left it since it was apparently above my ability to fix.
“You know that temp shitty load balancer you wrote on your second month to get things up again. We still use it to this day.” My boss last week.
Better ship it. It works after all.
Still no usable code tho, because usable code is maintainable.
This stops being shocking as you gain more experience.
Something’s broken, Something’s failing, rotting!
MFW I hook up a Factorio spaghetti section to inputs and it works the first time.
Remember, every temporary solution is a permanent one! It’s always spooky when it works the first time.
It works as intended because you haven’t integrated yet
Break it, confirm it’s broken, fix it back. Makes me feel better every time.
lol - isn’t that the truth