Details
-
AboutI will find you - and you will never see me coming.
-
SkillsC, Go, JavaScript, torture, ArchLinux, Java, Rust
Joined devRant on 6/19/2017
Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
-
Most painful dev learning experience?
Learned that no matter hard you work, no matter how big the dragon you slain/slew, there are individuals out there waiting to tear you down. Not immediately, certainly not in front of you, and capable of going to extremes just to make themselves feel/look better.7 -
loop {
So I want to write a simple program in language X. Create a new project. Language X does not have this feature. Okay, Let me write a library that does that for language X. Create a new project. What was I doing again?!
}1 -
Ladies and gentlemen, prepare yourselves for a rant with a capital R, this is gonna be a long one.
Our story begins well over a year ago while I was still in university and things such as "professionalism" and "doing your job" are suggestions and not something you do to not get fired. We had multiple courses with large group projects that semester and the amount of reliable people I knew that weren't behind a year and in different courses was getting dangerously low. There were three of us who are friends (the other two henceforth known as Ms Reliable and the Enabler) and these projects were for five people minimum. The Enabler knew a couple of people who we could include, so we trusted her and we let them onto the multiple projects we had.
Oh boy, what a mistake that was. They were friends, a guy and a girl. The girl was a good dev, not someone I'd want to interact with out of work but she was fine, and a literal angel compared to the guy. Holy shit this guy. This guy, henceforth referred to as Mr DDTW, is a motherfucking embarrassment to devs everywhere. Lazy. Arrogant. Standards so low they're six feet under. Just to show you the sheer depth of this man's lack of fucks given, he would later reveal that he picked his thesis topic "because it's easy and I don't want to work too hard". I haven't even gotten into the meat of the rant yet and this dude is already raising my blood pressure.
I'll be focusing on one project in particular, a flying vehicle simulator, as this was the one that I was the most involved in and also the one where shit hit the fan hardest. It was a relatively simple-in-concept development project, but the workload was far too much for one person, meaning that we had to apply some rudimentary project management and coordination skills that we had learned to keep the project on track. I quickly became the de-facto PM as I had the best grasp on the project and was doing a lot of the heavy lifting.
The first incident happened while developing a navigation feature. Another teammate had done the basics, all he had to do was use the already-defined interfaces to check where the best place to land would be, taking into account if we had enough power to do so. Mr DDTW's code:
-Wasn't actually an algorithm, just 90 lines of if statements sandwiched between the other teammate's code.
-The if statements were so long that I had to horizontal scroll to see the end, approx 200 characters long per line.
-Could've probably been 20 normal-length lines MAX if he knew what a fucking for loop was.
-Checked about a third of the tiles that it should have because, once again, it's a series of concatenated if statements instead of an actual goddamn algorithm.
-IT DIDN'T FUCKING WORK!
My response was along the lines of "what the fuck is this?". This dipshit is in his final year and I've seen people write better code in their second semester. The rest of the team, his friend included, agreed that this was bad code and that it should be redone properly. The plan was for Mr DDTW to move his code into a new function and then fix it in another branch. Then we could merge it back when it was done. Well, he kept on saying it was done but:
-It still wasn't an algorithm.
-It was still 90 lines.
-They were still 200 characters wide.
-It still only checked a third of the tiles.
-IT STILL DIDN'T FUCKING WORK!
He also had one more task, an infinite loop detection system. He watched while Ms Reliable did the fucking work.
We hit our first of two deadlines successfully. We still didn't have a decent landing function but everything else was nice and polished, and we got graded incredibly well. The other projects had been going alright although the same issue of him not doing shit applied. Ms Reliable and I, seeing the shitstorm that would come if this dude didn't get his act together, lodged a complaint with the professor as a precautionary measure. Little did I know how much that advanced warning would save my ass later on.
Second sprint begins and I'm voted in as the actual PM this time. We have four main tasks, so we assign one person to each and me as a generalist who would take care of the minor tasks as well as help out whoever needed it. This ended up being a lot of reworking and re-abstracting, a lot of helping and, for reasons that nobody ever could have predicted, one of the main tasks.
These main tasks were new features that would need to be integrated, most of which had at least some mutual dependencies. Part of this project involved running our code, which would connect to the professor's test server and solve a server-side navigation problem. The more of these we solved, the better the grade, so understandably we needed an MVP to see if our shit worked on the basic problems and then fix whatever was causing the more advanced ones to fail. We decided to set an internal deadline for this MVP. Guess who didn't reach it?
Hitting the character limit, expect part 2 SOON7 -
To replace humans with robots, because human beings are complete shit at everything they do.
I am a chemist. My alignment is not lawful good. I've produced lots of drugs. Mostly just drugs against illnesses. Mostly.
But whatever my alignment or contribution to the world as a chemist... Human chemists are just fucking terrible at their job. Not for a lack of trying, biological beings just suck at it.
Suiting up for a biosafety level lab costs time. Meatbags fuck up very often, especially when tired. Humans whine when they get acid in their face, or when they have to pour and inhale carcinogenic substances. They also work imprecisely and inaccurately, even after thousands of hours of training and practice.
Weaklings! Robots are superior!
So I replaced my coworkers with expensive flow chemistry setups with probes and solenoid fluid valves. I replaced others with CUDA simulations.
First at a pharma production & research lab, then at a genetics lab, then at an Industrial R&D lab.
Many were even replaced by Raspberry Pi's with two servos and a PH meter attached, and I broke open second hand Fischer Sci spectrophotometers to attach arduinos with WiFi boards.
The issue was that after every little overzealous weekend project, I made myself less necessary as well.
So I jumped into the infinitely deep shitpool called webdev.
App & web development is kind of comfortable, there's always one more thing to do, but there's no pressure where failure leads to fatalities (I think? Wait... do I still care?).
Super chill, if it weren't for the delusion that making people do "frontend" and "fullstack" labor isn't a gross violation of the Geneva Convention.
Quickly recognizing that I actually don't want to be tortured and suffer from nerve damage caused by VueX or have my organs slowly liquefied by the radiation from some insane transpiling centrifuge, I did what any sane person would do.
Get as far away from the potential frontend blast radius as possible, hide in a concrete bunker.
So I became a data engineer / database admin.
That's where I'm quarantining now, safely hiding from humanity behind a desk, employed to write a MySQL migration or two, setting up Redis sorted sets, adding a field to an Elastic index. That takes care of generating cognac and LSD money.
But honestly.... I actually spend most of my time these days contributing to open source repositories, especially writing & maintaining Rust libraries.10 -
PM: Ok Android, i've reviewed the latest build, you are good to release. Waiting on iOS's build to test.
Me: ... are we not holding all builds until we hear back from backend about that bug?, as we likely have to change something on our side?
PM: Which bug?
Me: ... the only one we discussed yesterday in the team meeting.
PM: How many customers is it affecting?
Me: that we know of, one ... the CEO of our company
PM: oh that one, yeah were not doing that anymore.
Me: WHAT? i've been waiting all day / night to hear back. Why are we not doing this?
PM: ¯\_(ツ)_/¯ ... Everything is too messy at the minute anyway, the release plan is changing every day. Need to keep it back in line.
Me: ... the plan has changed exactly once. We had a plan at the start of last week for the last release, we changed it YESTERDAY to include 2 critical bug fixes. The only issue with the plan changing is nobody telling us these aren't bugs anymore
PM: We can discuss tomorrow in the team meeting.
CEO: oh hey guys, yeah we pulled that bug fix. Its not really a bug, more like a missing feature. No way it will get done before xmas. Going to live with the way it works for now and fix it properly next year.
Me: Ok, fair enough, but we really need to be told these decisions.
CEO: sure, sorry, didn't think anyone was blocked by this. What was the blocker?
Me: ..... you asked me yesterday to get this bug fix in the build ... you asked for the final build to be made today so we can go through the app store review. As we all discussed yesterday, today is kind of the last day we can really do this.
CEO: ok, its late, we can discuss this tomorrow in the team meeting.
Me: ..... ..... ..... ..... sure7 -
Code Review is one fucking awesome stunt.
- Take a long sommersault flip.
- Land on your face or your ass, it doesn't matter.
TBH, lot of learning insights during the review. -
Look, I don't know why, but after sitting around doing nothing, I think he wants to kill me.
Send help.
I mean just look at him, staring right into your soul.8 -
1 am, wide awake,
I want to go code but cannot take,
for time is not my friend,
If I go now, it will not end.
Rest is needed, sleep must be,
or tomorrow I will pay the fee,
concentration will be sparse,
and boss will surely kick my arse.2 -
It's getting close to that time of year when we are all encouraged to think of others and spread joy around the world. I've decided to go against my usual snarky/anti-social nature, and do something to help others this year.
I'm announcing the practiseSafeHex charitable fund, to give back and help others.
This fund will invest in cutting edge medical research to detect the genetic abnormality in humans that results in project managers not being able to comprehend the simplest of concepts.
Together we can find the reason why the concept "more meetings = less work" is uncomprehendible.
Together we can discover why we can't use an automated bot to generate reports, instead of spending hours in excel spreadsheets.
And together we will find a reason why the answer to the question "can we please just try it?" is always "No".
We do this not for ourselves for short term gains, we do this for the greater good. Together we can find the cause and build a test to filter these people out. So that never again will stressed out developers have to deal with these petty ridiculous issues.
Together, we will solve this!
Thanks,
practiseSafeHex, CEO and managing director of the practiseSafeHex charitable fund for the betterment of developer sanity10 -
I.
FUCKING.
*HATE*.
THIS.
KIND.
OF.
PEOPLE!!
I KNOW that you don't understand what you're doing or saying, THAT'S WHY I JUST TOLD YOU A VERY SHORT, SIMPLE, AND CLEAR SENTENCE TO SAY WORD-FOR-WORD TO THE OTHER GUY WHO, IF HE'S AT LEAST HALF-COMPETENT SHOULD IMMEDIATELY UNDERSTAND AND RESPOND WITH *FOUR* *WORD* *ANSWER* and instead of that you blabber on for 5 minutes how you don't know what to say to him and how to explain what we need (FUCKIN ADMIN LOGIN YOU BOTH WINEFLY-BRAINED MORONS!), and he blabbers for 5 minutes back something something bullshit someone else and then REMOTES INTO THE COMPUTER, AND DOES A SYSTEM REINSTALL OR REMOVES DUDE'S USER ACCOUNT OR SOME SHIT LIKE THAT BECAUSE MY SKYPE CALL WITH THE DUDE DROPS AND NEXT TIME DUDE IS CALLING ME HE'S CONFUSED ABOUT SYSTEM SETUP SCREENS!!!!!!
WHAT!!!!
THE!!!!!
SHIIIIIITTT!!!!
told him sorry but call the fucker who fucked it up for you, i'm not wasting two hours of my time just because some school "IT admin" thinks the best solution for user not knowing his admin login is to remotely trigger a reinstall or someshit on the machine.5 -
Oh you'll love this. A master password to access any user.
Something like:
const masterpassword = <dayABCyearXYZ>
if (password == dbpassword || password == masterpassword) { // allow access }
The best part is this code is available to our clients. They can literally see how this "master password" is generated. And they don't want me to remove it because it's being used by testers.7 -
!dev
To anyone suffering from chronic pain, especially lower back pain: Don't get fooled by shitty doctors. And don't expect doctors to magically heal you. If you want to stop your suffering, you need to be proactive.
What? But my herniated disc from 10 years ago... bla bla bla. So what? It's not going to get better when your only exercise is putting on your socks. Chances are 99% that your spine has shit to do with your pain. Go to a proper chronic pain therapy instead of downing opiods and getting sick notes.
Note to self: Do your sports every day you lazy bastard. Eat healthy, sleep regularly, don't stress out over every damn thing and don't forget to fucking relax!22 -
I was told back in the 80's I wouldn't have a calculator every where I go... well, guess what mother fuckers, I don't just have a calculator everywhere I go, but it's a full computer, a supercomputer by 1980's standards, and I literally make a living writing fucking software for it...
dicks.19 -
Dear external developer dumbass from hell.
We bought your company under the assumption you had a borderline functioning product and/or dev team. Ideally both
For future reference expect "file path" arguments can contain backslashes and perhaps even the '.' character. It ain't that hard. Maybe try using the damn built in path parsing capabilities every halfway decent programming environment has had since before you figured out how to smash your head against the keyboard hard enough for your shitty excuse of a compiler stops arguing and gives in.
I am fixing your shit by completely removing it with one line of code calling the framework and you better not reject this.
This is not a pull request ITS A GOD DAMN PULL COMMAND.
- Is what i would _like_ to say right now... you know if i wouldn't be promptly fired for doing so :p
How's you guys friday going?8 -
This is a public service announcement with a threat at the end of it:
"Do not, I repeat, do NOT attempt to write web applications, or any particular sort of application that works with a relational database (damn near more than half of applications) without a PROPER grasp and knowledge of SQL.
I do not want to see you reaching out for an ORM either, no, you need to learn to properly design a database or to properly interact with them AT most before you even attempt using an ORM OR designing an application from the beginning, shit will only hurt you in the long term I promise, learning SQL can go a looooong fucking way and most DBA's I know make way tf more than people think they make, it might even be an interesting career choice"
If you do not follow the above advise, and I see your ass reaching for building a web application without the above knowledge I will be under your bed at night, putting oil in my hairy body before I jump into bed to you and leave you confused for the rest of your life.
Build to learn, YES, but for the love of Chamberlain and Boyce PLEASE do not neglect SQL. I have seen such neglect REACH production and I am currently wishing I had these mfkers close to me.9 -
Debugging, an art of detecting a crime which you may have done back in time with an urge to puch your own face after discovery.7
-
Yeah. Kinda late to the WK 227 party.
Thing is: I've read a lot of rants and honestly, some of the rants were ... touchy.
Like that weird emotional thingy you don't like but that just kind of happens cause I'm human too.... And have that shitty emotional feature integrated, which feels most of the time like a heisenbug.
Me and my parents. Specifically mom. Are like ... Matter and antimatter.
You don't want them in a room. Bad things happen TM. My mom is responsible for ... Let's say severe psychological trauma starting with age 4 to age 17.
In 17 I moved out and lived on "my own" (truth: on heavy support, cause I wasn't what you'd called "psychologically stable" at that time).
I fucked up university and - as shared before - thanks to an math teacher who made my life an even more living hell and my parents, I'd started in IT mostly out of "resisting" certain assertations being made over my life.
The support I got from my family can be put together in one sentence:
"I survived, I tolerated - but will never forgive".
Thing is: Be it IT support or anything else. If your gut feeling tells you that family / coworkers / friends are not good for you.
Stay the fuck away from them till you've sorted yourself out.
I can tolerate my parents nowadays. Took > 10 years and a lot of hardships to "achieve" that.
It's not peachy. It's not loving. It's tolerance. (Yeah. That bit is muey importante to me).
The thing is: I cannot deny the fact that my parents tried to support me by money. That's what they still do _nowadays_ even though my income is like 60 % of the income my father and mother has combined... It's a bothersome detail.
There's a certain thing in this rant that I would like "to pass on": Emotional support matters.
When you let someone feel like an empty shell, you cannot fix it with money.
It will - severely - destroy the person.
TLDR: We all have rough edges, can be hard to deal with and be a pain in the arse, but all of us need emotional support sometimes. That's what matters the most. ;)1 -
Don't you love it when you take a look at a company frontend React code and GraphQL queries and they say you are hacking them? 🤔🤦🏻♂🤣12
-
Dear Product owners / Company Owners / Whoever requesting a feature:
Devs like to know they are adding value to whatever product they are working on. Every time you request a stupid no value added request, you kick the dev's soul.
After several hits the developer will stop caring about the software and eventually will get the job done, but oh boy, the amount of tech debt/trash code the dev is gonna leave behind will be horrendous.
Then the next developer, not only takes the hit from another stupid request, he/she will see the crappy code the past sad developer left and will take a double hit. Of course all of them start proactive and try to fix previous blood trails but sadness will catch them eventually.
If you want you're apps/products/reports to be good in a long run don't make stupid requests.
BAs, Stop being Expensive Email Forwarders and challenge a request, understand the process and then hand it to the developer.
Us developers are sensible cute ponies. Treat us well or expect poor quality projects8 -
My olfactory hallucinations really made things complicated. Not only whatever I eat that is not raw iceberg salad smells like rotten flesh, I also can’t choose a deodorant.
I got nivea one and threw it away.
I got old spice one and threw it away.
Now I got chanel one and I like it and I DONT FUCKING KNOW if I like it because it smells good to me or because I’m actually hyperconsumerist no matter how hard I deny it. Does being a hyoerconsumerist make me bad? What is bad in that context? Is a kind of reasoning bad only because if everyone follows that reasoning the world will be fucked? Are there good reasonings then, but not like zen, the ones that actually lead to scientific progress. Is scientific progress a good criteria to judge?23 -
Stop! Changing! The requiremeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeents!
Hadouuuuken!
Shoryuken!
Tiger punch!3 -
CAN FORUMS THAT REQUIRE YOU TO MAKE AN ACCOUNT TO USE THEIR SEARCH FEATURE FUCK THE HELL OFF ALREADY?!?!7
-
How can you know my mood? Check my git commands. Am I using `git push -u origin SQUAD-feature-branch --force-with-lease` or `git push -f`?4
-
Were you afraid of the dark as a kid? Obviously you were afraid because you were a racist. Now go relearn all the words surrounding systems too complex for me to figure out you racist bastards.12