Ironically, the worst thing I ever saw a coworker do was to change a function that accepted an Integer value between 0 and 32767 to one that accepted a Float between 0.0 and 1.0. Perfectly sensible change except that it resulted in a 120 mph knuckleball fired a foot above a 10 year old kid’s head, followed by a fist fight between the client and my boss.
Yes absolutely, the parameter even if not in a strongly typed language should be a specific number and the unit should be implied. Overload the method to support different units if necessary or provide a unit as an additional parameter instead of forcing the method to parse the string for any unit type hints that may or may not be there
WHY IS THE HEALTH INPUT PARAMETER A GODDAMN STRING???
Why are you passing ‘%’ inside said goddamn string?!?! Not to mention the static reference instead of the actual instance.
Shame on you
Also putting
sudo
in front of what looks like Java code not shell.OldMan.setHealth(“Robert’); DROP TABLE Students;–”)
Finally someone with some wisdom
I guess its just a reminder that getting a PhD is often more about dedication than it is about practical knowledge.
Because the meme wasn’t made by someone with a doctorate in CS or even a bachelor’s.
Smells like JavaScript.
It’s not his fault the world is made this way.
He just has to follow it or else that man dies.
Found the legacy support person
They use a look-up table with every value from 0% to 100%
Floating points included for thoroughness!
deleted by creator
The high level setter function should be made to handle both string and numeric values.
If it contains “%” it’s a percentage value.
If it’s a string without a “%” it’s an absolute value and needs to be normalized.
If it’s a numeric value, it’s an absolute value.
If it’s a numeric 100, it’s 100%.
If it’s a subunitary numeric value, it’s a percentage.
yeah I’m gonna go ahead and reject your PR, please change this function to accept a decimal value between 0 and 1
Ironically, the worst thing I ever saw a coworker do was to change a function that accepted an Integer value between 0 and 32767 to one that accepted a Float between 0.0 and 1.0. Perfectly sensible change except that it resulted in a 120 mph knuckleball fired a foot above a 10 year old kid’s head, followed by a fist fight between the client and my boss.
That sounds like something that should have been caught by QA, integration tests or unit tests long before it was launching balls at ten year olds.
Yes, testing the new Little League control module on a field full of Little Leaguers was not the best plan.
What is a little league control module?
You push a button and it makes Little Leaguers do whatever you tell them to do. Very potent, should never be misused.
The Big League Control Modules are called contracts.
yeah every engineer knows you gotta set KidHeadKnuckleballClearance waaay higher than that, it’s compsci 101
absolute lunacy
Absolute (cm)
adding one
0
:100%, automatically changes unit to %
(Word table properties)
"5%1 "
…ends with. And there are more ways to parse.
Honestly, if someone were to try to safe my life. And I find out he uses a string as a parameter to do so. Just let me die right there.
Yeah, in Ren’py games usually it’s character_health=100 or something.
Yes absolutely, the parameter even if not in a strongly typed language should be a specific number and the unit should be implied. Overload the method to support different units if necessary or provide a unit as an additional parameter instead of forcing the method to parse the string for any unit type hints that may or may not be there