Details
-
AboutJust love learning and stuffs related to coding! it's always fun! :)
Joined devRant on 5/16/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
-
*Now that's what I call a Hacker*
MOTHER OF ALL AUTOMATIONS
This seems a long post. but you will definitely +1 the post after reading this.
xxx: OK, so, our build engineer has left for another company. The dude was literally living inside the terminal. You know, that type of a guy who loves Vim, creates diagrams in Dot and writes wiki-posts in Markdown... If something - anything - requires more than 90 seconds of his time, he writes a script to automate that.
xxx: So we're sitting here, looking through his, uhm, "legacy"
xxx: You're gonna love this
xxx: smack-my-bitch-up.sh - sends a text message "late at work" to his wife (apparently). Automatically picks reasons from an array of strings, randomly. Runs inside a cron-job. The job fires if there are active SSH-sessions on the server after 9pm with his login.
xxx: kumar-asshole.sh - scans the inbox for emails from "Kumar" (a DBA at our clients). Looks for keywords like "help", "trouble", "sorry" etc. If keywords are found - the script SSHes into the clients server and rolls back the staging database to the latest backup. Then sends a reply "no worries mate, be careful next time".
xxx: hangover.sh - another cron-job that is set to specific dates. Sends automated emails like "not feeling well/gonna work from home" etc. Adds a random "reason" from another predefined array of strings. Fires if there are no interactive sessions on the server at 8:45am.
xxx: (and the oscar goes to) fuckingcoffee.sh - this one waits exactly 17 seconds (!), then opens an SSH session to our coffee-machine (we had no frikin idea the coffee machine is on the network, runs linux and has SSHD up and running) and sends some weird gibberish to it. Looks binary. Turns out this thing starts brewing a mid-sized half-caf latte and waits another 24 (!) seconds before pouring it into a cup. The timing is exactly how long it takes to walk to the machine from the dudes desk.
xxx: holy sh*t I'm keeping those
Credit: http://bit.ly/1jcTuTT
The bash scripts weren't bogus, you can find his scripts on the this github URL:
https://github.com/narkoz/...53 -
Oh you're a frontend guy? Good, we need one of those.
Oh you're a backend guy too? Good, we need one of those.
Oh you're a security guy too? Good, we need one of those.
Oh you're a devops guy too? Good, we need one of those.
Oh you're a QA guy too? Good, we need one of those.
Oh you're an SEO guy too? Good, we need one of those.
"Well, sorry to say fullStackCraft, but we found your cloud architecture skills just a little too lacking for this position. We really need someone who can do frontend, backend, security audits, QA assessments, SEO, AND build scaling cloud architecture. Oh and while you're at it, can you turn fucking water into gold? We need that at our company too. You didn't get the position, but it'd be great if you could refer us to someone who is very advanced in fucking alchemy. Thanks!"
Absolutely toxic the way software people are treated I swear. The money may be the only good thing that is left.19 -
> make a change
> PR gets rejected
> IHATEFORALIVING! YOUR CHANGE IS NOT WORKING! EVERYTHING BREAKS!
> 3 hours long debugging session
> We find out a whole bunch of bugs
> Suddenly, everything works
> None of the bugs had ANYTHING to do with my change. In the instances where the app broke, my code wasn't even being called at all.
> My change was literally the one and only working thing
I wish life was like in The Office, when you just stop what you're doing and you drop the Jim stare at some camera3 -
And then one day you wake up and discover that your first boss,
the one who hired you when you had no experience
who believed in you when nobody else did
and also paid you a full decent payment when the rest of the world tried to pay you less than half the amount
who taught you a lot about the business and even when you disagreed, it was impossible to get angry because he was calm and gentle always
and treated you so many lunches and dinners
…was beaten and killed by a former colleague…
I have no words…
Sayonara 👋 boss
I will miss you so much on this Earth 😢3 -
I once had to make a shitty canvas game as part of a marketing campaign when I worked for an agency, for fuck only knows what. You dragged a shopping trolley back and forth in an aisle, and got points for catching items that fell from the top.
The initial round of feedback had the complaint that sometimes players weren't receiving points for items. I spent a night playing this senseless game over and over, but I never failed to get the points for an item. I was pretty confident that it worked, it wasn't like the logic was complex, so I sent it over.
Second round of feedback had the same complaint. They were getting quite annoyed by it, said that it was a bad user experience. Again, I could not reproduce it at all: the game was an equally tedious waste of life on every device I tried it on.
In exasperation, I asked the sales guy whose pitch it had been to get me a video or a more detailed report. The client was quite arsey, as they saw it, at having to do bug-fixing for us, but they did agree.
Anyway, it transpired that they were angry that players were not receiving the points for the items they *failed* to catch. The way they saw it, the game wouldn't be fun if you were punished for not catching items - so they wanted the player to get ten points for every item on screen, regardless or not of whether they caught it in their trolley. Of course, I thought. Silly me.
I was actually quite impressed at how a marketing department could accidentally undermine the very notion of a game whilst seeking to make one more fun.8 -
Devs: Feature A is done! Faster than planned even.
Manager: Hmm... what about feature A+B?
Devs: That requires feature B, and you said that feature B was not as important as feature A during our last meeting, remember? So we planned to do A, B, and then A+B. It's there in the meeting minutes.
Manager: But feature A does not make sense without feature A+B. Let's not release feature A just yet until we have feature A+B.
Then why didn't you say so during our last meeting?!9 -
!dev
Last week I watched a DIY video where at the end the guy dumped detergent water on the grass. I kindly commented it's a €150 fine. Their response was on the lines of "Oh yeah, Mr Proper? And what would you say if I told you I spray my whole garden with soap to get rid of weeds, huh?".
Well, you dumb fuck, I don't care what you do, I wasn't attacking you, I was being *nice* and warned you about the fucking fine that you're going to fucking pay because your channel name is your first and last name and your video shows the street and the house number but whatever.
Today I couldn't log into my YouTube account. Why was that, you might ask? Well, because the dumb fuck paid the fucking fine and assumed I was the one that ratted, so he made a video about it and his dumb fuck audience falsely reported all of my videos for child abuse and promoting terrorism.
I only upload unboxing videos that debunk scummy "deals". 🤦♂️11 -
I had a prospective employer be late to every single interview we had scheduled. I tried to give them the benefit of the doubt, but they simply didn’t value my time.
I was in the process of moving and a recruiter called me to tell me a job I had been submitted for wanted to do a phone interview that day. Even though I was driving across the country in a box truck, I agreed to the interview. We arranged for the employer to call me at 2 PM. I figured it would give me a break from driving in the middle of the day anyway.
I pulled over at 1:45 and waited. At 2:15 I called the recruiter to verify the time. He said he would get in contact with the employer and call me back. At 2:45 I called the recruiter and told him I needed to get back on the road and we’d have to reschedule.
We rescheduled the call for a few days later at 1 pm. This time I got the phone number of the employer, so at 1:15 I called him. He apologized and said he lost track of time. Whatever, let’s just get this interview going.
He liked me on the phone, so he wanted to meet in person the next day. I was a bit irritated by the situation, but I was trying to give them the benefit of the doubt.
I showed up for my in person interview 15 minutes early and checked in with the receptionist. 30 minutes later I asked the receptionist when they were going to be with me as my interview was supposed to start 15 minutes ago. I was finally seen 5 minutes after that.
The interview was supposed to be a several hour affair where they were going to have me sign an NDA and show me some of the issues they were having to see if I could solve them. I had cleared my scheduled meetings for the afternoon so I could attend this lengthy interview.
After about 45 minutes of interviewing, the manager suddenly said that they needed to cut the interview short because he had just realized they needed to get something done that afternoon. He asked me if I would come back the next day to finish the interview.
I shook his hand and left, shaking my head the entire time. When I called my recruiter after I had calmed down, I let him know that I would under no terms be interested in a job with them. If they refused to acknowledge my time was worth something as a candidate, they would never respect it as an employee.
They still offered me the job and couldn’t fathom why I was upset about the situation. I’m very glad I didn’t take that job.4 -
Me: Hey, I'm going to refill my water bottle. You need some as well?
Coworker: Yeah, thanks let me just drink the remaining bits
*starts chugging down 3/4 full bottle*
Me: PFFFFT, you don't need a refill please, for the love of god, staph3 -
I got fired.
Worst job I ever had, they extended my probation period, called me "over maintenance", said my work was good but not good enough for the effort, If I take a lot of care doing my work then it's "over preparation", if not good enough then it's "not detailed enough", I don't ask enough questions? I must be unmotivated, I ask too many? I take up too much of other people's time.
Fuck them all. I hope they get a taste of their own medicine.10 -
I’m going to fucking kill my boss.
He’s known about how I’ve been writing this fucking ticket (screwdriver followup) for four fucking weeks, and on the last fucking day (yesterday) he tells me it’s not the correct fucking architecture and to rewrite basically all of it using <unknown bullshit> instead, and that i must have it done by today — by this fucking morning — so it can make the release.
WHY THE FUCK DIDN’T YOU TELL ME ABOUT THIS AT ANY POINT IN THE LAST FUCKING MONTH WHILE YOU WERE BUSY NITPICKING MY FUCKING CODE YOU FUCKING CUNT?!30 -
Sometime it feels like I'm surrounded with idiots.
Got a Ticket:
Support: Please delete installation ABC from Server D.
Me: Checks everything. Installation is on Server E. Asks if this is correct?
Support: Just follow the instructions!
Me: Okey dokey. If you want me to be a hammer the installation is a nail... Drop database, Remove all files. nuke K8s resources
Support: Why did you delete the installation ABC? You should delete XYZ!
Me: Cause the ticket told to delete ABC on Server D and YOU told me to follow your instructions!
Support: Yeah but we just reused an old ticket. We wanted XYZ deleted!
It's not a big deal I can restore the shit but I hate it if a day starts with this kind of shit!18 -
Not Dev
My passport appointment date was 26/03/2021 and i saw only 26.
Travelled 100 kms for this mistake yesterday. 😭😭3 -
Finding a memory leak is the very definition of the journey where you start with "I hate everything" and end up with "I am GOD"3
-
I have a college that never seems to answer anything fully, just the bare minimum to make it seem like he did.
Regular conversations with him goes like this:
Me: “hey, I have a problem with this feature you added, I’m getting an error *insert error*”
Him: “yeah theres a script for that...”
Me: *wait for the script he mentioned*
Me: “whats the script?”
Him: “it’s FixIssues.sh”
Me: *looks for the script in the project*
Me: “hey, I can’t find it, where is it?”
Him: “here it is” *pastes a script into chat*
Me: “Oh, where can i find that in the project?”
Him: “you can’t”
Me: “???”
Him: “I have it in my OneDrive”
WHY CAN’T YOU JUST SAY THAT IN THE FIRST PLACE? Why this song and dance every time I ask something? This conversation could have been over in 1 minute but instead we both have to waste 15 minutes of our time to get this far.6 -
IT Manager: What kind if attachment did you send me in that email?
Me: A .zip?
IT Manager: ...?
Me: A zip file? Zipped Folder?
IT Manger: ...?
Me: Umm... the data file you needed has to be sent in a zip folder because 6 different file types combine to make it? Just download the .zip and extract?
IT Manager: I don't know how to extract the files?
Me: ...14 -
When I was in 7th grade, my neighbor (a DoD programmer) challenged me to write a sorting algorithm for a hypothetical super limited environment (he said a satellite). It didn’t have any built-in sorting methods, had very limited memory, slow processor, etc. so I needed to be clever about it.
It took me a few nights before i found a solution he liked. The method I came up with counted the number of occurrences of each number in the array and put them in the appropriate spots in a new array. This way it only required O(2n) running time and 2n memory.
I just learned today that this is called the “counting sort” 😄
I’m proud of little 11 year old me.20 -
HR sent around updated contracts asking everyone to sign them since the company changed its name, fair enough.
In the contract it stated "Your normal place of work will be X" - only X was many miles away, and I'd never worked there, never planned too. Assumed it was a mistake, sent it back. HR refused to change it, stating that the "normal place of work does not need to be the place where you normally work."
A lot of back and forth entailed, I refused to sign, I was reprimanded for not doing so, I was asked what my problem was as it made no material difference, and then I eventually replied with:
"Angela, I'm refusing to sign this as it's factually incorrect. No further explanation is required. I'll maybe consider signing this if you sign a piece of paper declaring you believe the moon is made of cheese, and you're the cow the milk came from to make it."
A very strongly worded email came back about how this was going on my record, I needed to offer a formal apology, etc. - all cc'd to my manager. I replied back, again copying my manager in, stating that this was ok, as I couldn't remain at a company who forced employees to sign dodgy contracts anyway.
Problem was (for them), I was a *massive* single point of failure for them at this point owing to some others leaving with no handover - hence I knew I wasn't going to be the casualty here. My manager flipped the lid at HR, got the CEO involved on threat of *him* leaving, and the whole thing massively blew up. Happy ending in that the HR person in question was fired, everyone else's contracts also had to be redone (I assumed everyone else just signed without looking which is worrying), and I actually got a pay rise out of it when higher ups realised the massive single point of failure I was.
But damn, I would've walked over crap like that. Walked pretty soon after anyway!13 -
Me: Optimize a sort & match method in backend because users complain it's a bit slow.
Coworker: These algorithms are both O(n), so they're identical *closes PR*
Me: *start zoom call* "Heeeeeeeeeey Iiiiiiiiiii wouuuuuuuld liiiiiiiiike toooooo diiiiiisscuuuuus thaaaaaaaat puuuuuuulllll reeeeeequuuueeest yooooouuuuu cloooooossseeeed"
Coworker: "wtf are you doing, why are you talking so slow"
Me: "No matter whether I talk fast or slow, the information still reaches you in O(n) time, so why are you complaining"
I fucking hate it when people misunderstand the purpose of (or abuse) big O notation. It's an estimate of how an algorithm SCALES once the set increases in size, in which case you leave out both less significant terms and constant factors.
But those terms and factors are important when you're talking about the DIRECT PERFORMANCE of the algorithm on fixed-size sets, instead of SCALING to larger sets.
1n and 10n are both O(n), but 10x performance on a job that used to take 10 minutes is still significant.19 -
It feels so good actually doing something that saves the company a buttload of money.
Just optimized some ML models. Now it costs a tenth of the money to run them :P2