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
Search - "investigate"
-
My "Coding Standards" for my dev team
1.) Every developer thinks or have thought their shit don't stink. If you think you have the best code, submit it to your peers for review. The results may surprise you.
2.) It doesn't matter if you've been working here for a day or ten years. Everyone's input is valuable. I don't care if you're the best damn programmer. If you ever pull rank or seniority on someone who is trying to help, even if it isn't necessarily valid or helpful, please have your resume ready to work elsewhere.
3.) Every language is great and every language sucks in their own ways. We don't have time for a measuring contest. The only time a language debate should arise is for the goal of finding the right one for the project at hand.
4.) Comment your code. We don't have time to investigate what the structure and purpose of your code is when we need to extend upon it.
5.) If you use someone else's work, give them the credit in your comments. Plagiarism will not be tolerated.
6.) If you use flash, you will be taken out back and shot. If you survive, you will be shot again.
7.) If you load jQuery for the sole purpose of writing a simple function, #6 applies.
8.) Unless it is an actual picture, there is little to no reason for not utilizing CSS. That's what it's there for.
9.) We don't support any version of Internet Explorer and Edge other than the latest versions, and only layout/alignment fixes will be bothered with.
10.) If you are struggling with a task, reach out. While you should be able to work independently, it doesn't make sense to waste your time and everyone else's to not seek assistance when needed.
11.) I'm serious about #6 and #7. Don't do it.48 -
So... A random morning moment:
(c - Cient, m - me)
C: Help!!! Our users are complaining that our website is not working as intended!!! This is crucial!!!!
M: What's the problem? What is not working?
C: EVERYTHING!!!! FIX IT!!!!
M: Could you be more specific...?
C: Look at the bugsnag - it has all the errrors!!!
M: *looks there - no errors* - But... It has no errors...
C: Okay, so client told me he's using Galaxy SII - does that ring a bell?
M: *thinks that I'm fucked* - Asks, which browser?
C: Why do you need it? It's a browser after all...
M: Yeah but not all browsers are the same and I need type and version to investigate...
C: It's Samsung default browser... Last updated 2012 January.
M: Well, tell that user to update the browser, the site is working fine on newer versions...
C: No, you update it.
M: Browser?!
C: Yes, what else?!
M: Of course, I'll fly 3000 kilometres to press UPDATE button on clients phone...
C: Well, he's not doing it himself - he's afraid!
M: Well, that is his problem. Site is working fine for other users with newer browsers.
C: But... He's a client
M: I get it but he's a client that uses 6 years old browser and tries to visit our website. Don't you remember that we ditched IE support on your behalf for the same reason?!
C: Oh... I see... Can you make something that it works with 2005 browsers?
M: Of course... *evil laugh starts* I'll make the website work on EVERY single device EVER - make it plain text.
C: Are you joking?
M: Are you?
----
And since then, we ditched the actual need for supporting users with old browsers that don't update to modern standards... Feels great!12 -
Prospective client: “I have a website through which I sell music, both physical copies and downloads, but am having all kinds of issues with it”.
Me: “Like what? Tell me more.”
Client: “Go to www... I’ll go through them with you”.
So I go, and client proceeds to rattle off a list of totally random shit for the next 26 and a half minutes without even stopping for breath, telling me what he’d prefer, talking through how easy other “similar” websites are and comparing his own website to them, as well as all the things that flat out just don’t work. He ended with the line “I just paid my developer who told me it was all good, but now he’s telling me he’s too busy to work on it”.
Meanwhile I’ve had a gander at “view source” and can see it’s been “built” with Wordpress, and with a fuck ton of plugins and shit to boot... you can only imagine the sense of euphoria I’m feeling at this point.
Me: “Did you have a contract with your developer?”
Client: “Nah”.
Me: “Do you have a budget in mind, either for just making right or for ongoing development?”
Client: “Yes, but minimal”.
Me: “So what do you want from me?”
Client: “I want to know how much it’s going to cost to fix!!!!” (apparently irritated by my question).
Me: “Oooook... Is there any way I can have access to your website to investigate, or clone it so I can recreate what’s going on?”
Client: “Yes” (gives me details of how to log in to his hosting, and WP admin).
Turns out, he had over 50 active plugins for literally EVERY. SINGLE. FUCKING. PIECE of functionality on his website. Furthermore, it was pretty clear that some plugin functionality overlapped, because... well, if you don’t know how to do something, install a plugin or seven to get it done, right?
Me: “So can I ask, what exactly is your budget? Just to give me ballpark as to how best move forward?”
Client: After going into how he’s already spent a lot of money on it already, “If we could we agree on below £200?”
Me: “...what, a month?”
Client: “No! In total. To make it right. Once it’s done it’s done, surely?!?!”
*a long silence*
Client: “So... what do you think?”
Me: “Burn it. Burn it all down”.8 -
Me: "Oh, this duplicate record in the database doesn't look important"
*Research. Check. Investigate
Me: "Looks fine to delete! :D"
*Live website goes down for half an hour4 -
It's maddening how few people working with the internet don't know anything about the protocols that make it work. Web work, especially, I spend far too much time explaining how status codes, methods, content-types etc work, how they're used and basic fundamental shit about how to do the job of someone building internet applications and consumable services.
The following has played out at more than one company:
App: "Hey api, I need some data"
API: "200 (plain text response message, content-type application/json, 'internal server error')"
App: *blows the fuck up
*msg service team*
Me: "Getting a 200 with a plaintext response containing an internal server exception"
Team: "Yeah, what's the problem?"
Me: "...200 means success, the message suggests 500. Either way, it should be one of the error codes. We use the status code to determine how the application processes the request. What do the logs say?"
Team: "Log says that the user wasn't signed in. Can you not read the response message and make a decision?"
Me: "That status for that is 401. And no, that would require us to know every message you have verbatim, in this case, it doesn't even deserialize and causes an exception because it's not actually json."
Team: "Why 401?"
Me: "It's the code for unauthorized. It tells us to redirect the user to the sign in experience"
Team: "We can't authorize until the user signs in"
Me: *angermatopoeia* "Just, trust me. If a user isn't logged in, return 401, if they don't have permissions you send 403"
Team: *googles SO* "Internet says we can use 500"
Me: "That's server error, it says something blew up with an unhandled exception on your end. You've already established it was an auth issue in the logs."
Team: "But there's an error, why doesn't that work?"
Me: "It's generic. It's like me messaging you and saying, "your service is broken". It doesn't give us any insight into what went wrong or *how* we should attempt to troubleshoot the error or where it occurred. You already know what's wrong, so just tell me with the status code."
Team: "But it's ok, right, 500? It's an error?"
Me: "It puts all the troubleshooting responsibility on your consumer to investigate the error at every level. A precise error code could potentially prevent us from bothering you at all."
Team: "How so?"
Me: "Send 401, we know that it's a login issue, 403, something is wrong with the request, 404 we're hitting an endpoint that doesn't exist, 503 we know that the service can't be reached for some reason, 504 means the service exists, but timed out at the gateway or service. In the worst case we're able to triage who needs to be involved to solve the issue, make sense?"
Team: "Oh, sounds cool, so how do we do that?"
Me: "That's down to your technology, your team will need to implement it. Most frameworks handle it out of the box for many cases."
Team: "Ah, ok. We'll send a 500, that sound easiest"
Me: *..l.. -__- ..l..* "Ok, let's get into the other 5 problems with this situation..."
Moral of the story: If this is you: learn the protocol you're utilizing, provide metadata, and stop treating your customers like shit.22 -
client: the math on this investment calculator you made is wrong.
me: ok, how is it wrong?
client: one of our salesmen sais it not calculating correctly.
me: that's fine. i just need an example, or the corrected formula to use.
client: on this other website we put in the same information and it comes out different.
me: ok, let me investigate... this other site adds a fee every month so the output is different. If i turn that off the calculations are the same. would you like to add a monthly fee field?
clients: no, the calculator is working how we want then.
repeat 5 times at 3 month intervals.
client: the interest calculator is broken again. didn't we just fix it?
me: it was never broken. your people just can't math.3 -
My team handles infrastructure deployment and automation in the cloud for our company, so we don't exactly develop applications ourselves, but we're responsible for building deployment pipelines, provisioning cloud resources, automating their deployments, etc.
I've ranted about this before, but it fits the weekly rant so I'll do it again.
Someone deployed an autoscaling application into our production AWS account, but they set the maximum instance count to 300. The account limit was less than that. So, of course, their application gets stuck and starts scaling out infinitely. Two hundred new servers spun up in an hour before hitting the limit and then throwing errors all over the place. They send me a ticket and I login to AWS to investigate. Not only have they broken their own application, but they've also made it impossible to deploy anything else into prod. Every other autoscaling group is now unable to scale out at all. We had to submit an emergency limit increase request to AWS, spent thousands of dollars on those stupidly-large instances, and yelled at the dev team responsible. Two weeks later, THEY INCREASED THE MAX COUNT TO 500 AND IT HAPPENED AGAIN!
And the whole thing happened because a database filled up the hard drive, so it would spin up a new server, whose hard drive would be full already and thus spin up a new server, and so on into infinity.
Thats probably the only WTF moment that resulted in me actually saying "WTF?!" out loud to the person responsible, but I've had others. One dev team had their code logging to a location they couldn't access, so we got daily requests for two weeks to download and email log files to them. Another dev team refused to believe their server was crashing due to their bad code even after we showed them the logs that demonstrated their application had a massive memory leak. Another team arbitrarily decided that they were going to deploy their code at 4 AM on a Saturday and they wanted a member of my team to be available in case something went wrong. We aren't 24/7 support. We aren't even weekend support. Or any support, technically. Another team told us we had one day to do three weeks' worth of work to deploy their application because they had set a hard deadline and then didn't tell us about it until the day before. We gave them a flat "No" for that request.
I could probably keep going, but you get the gist of it.4 -
People who say something isn't working and ask us to investigate.
Alright, it's not on our side, go ask support at {differentcompany}.
*presents actual proof*
Client replies: oh but I asked the other side and they send over this proof *shows proof saying that its not on our side but very technical so the client doesn't understand* so it's definitely on your side!!!!!!
This annoys the living fucking hell out of me, FUCKING FUCK.
😡9 -
Pointy Haired Boss: "There's an issue with this simple bit of that service, could you take a look?"
Me: "Sure, give me a minute to investigate"
*A minute later*
Me: "No wonder there's a problem, this code is horrendous! What idiot wrote this unmaintainable crap?"
PHB: "Doesn't matter, just fix it, test it and release it."
Me: "I just want to check who did it, so they never touch our code again."
*Checks SVN log*
Me: "Well, I guess I can never touch our code again."2 -
Today, I was told to investigate why the software doesn't work on "some" computers. I had no previous experience with that particular software but I just had to make some tests... easy, right? As soon as I ran the software, my computer crashed (I literally had to restart the pc). I asked my colleagues if I did something wrong but the set up seemed ok.
Later, in a random discussion about the software I found out it does "a little memory allocation". I opened the performance tab in task manager and ran the software again. In an instant, the RAM went from 1.3GB to 7.66GB (my pc has 8GB of RAM).
In an attempt to find how such a monstrosity was creater, I found out the developer that made the software had 16GB of RAM on his pc.
I have found something that eats RAM more than Chrome... brace yourselves.8 -
QA: When I open the app I get this strange error message that includes "No data connection could be established" near the start of it.
Me: I'll clean up how thats displayed, but the error means your phone doesn't have internet connection.
QA: No that can't be it, I do.
Me: You screenshot shows no WiFi or 3g / 4g symbols.
QA: No those are never there, please investigate.
Me: I have investigated and found that every other one of your screenshots had a WiFi or a 3g symbol. Example: <link>. Please check your connection and try again, i'll clean up the error display.
PM: Oh i've had an issue something like this before. We really need to show users an error screen. We can't just leave them on this screen with no error message at all.
Me: ... we have an error, thats what QA is complaining about, its not loading the text and displaying the error object.
Anyone else want to not pay attention and complain about something else that doesn't make sense? ... no? ... ok good, back to work then7 -
> Customer logs Jira ticket claiming app is not working
< I restart the app, investigate and explain tht their server has issues
ø Client closes the ticket as Resolved
-- a couple of days pass by ---
> Customer logs Jira ticket claiming app is not working
< I restart the app, investigate and explain tht their server has issues
ø Client closes the ticket as Resolved
-- a couple of days pass by ---
> Customer logs Jira ticket claiming app is not working
< I restart the app, investigate and explain tht their server has issues
ø Client closes the ticket as Resolved
-- a couple of days pass by ---
<...>
< I log a JIRA ticket explaining what and how is wrong with the server with suggestions how to fix the problem so the app will not crash any longer (client own the server, has his own sysadmins -- I don't even had permissions to open syslog.. had to hack dmesg on their PROD server to pin-point the issue)
> no reaction from customer for weeks. I ping the ticket
× app crashes again
> no reaction from customer for weeks. I ping the ticket
> customer leaves a comment that their sysadmins are looking at it trying to figure out what might be wrong (ignoring what I wrote in ticket's description??? srsly?)
× app crashes again
< I post detail investigation details: snips from logs, screenshots, everything with crystal clear explanations.
> no reaction for weeks
......
well that's fun..6 -
I was a midweight dev acting as a lead dev on the frontend development of a project. I had already built most of it, it was all vanilla JavaScript, had no jQuery, the code was simple, fast, and small. Then I went on holiday and the company put a senior lead on the project to carry out remaining work while I was away.
When I came back, there was a bug in the age gate page and I started to investigate. I then noticed that the asshole added jQuery to the code just to select the country and date of birth input fields. That idiot, a senior lead dev earning more than twice what I earned, didn’t know how to select some elements on a page! I nearly lost my temper when I saw the added bloat.7 -
My Typical Project
1. Identify common problem
2. Investigate options
3. Come up with clever solution
4. Implement backend solution
5. Get fed up with current frontend
6. Investigate other frontend
7. Realize perpetual chaos in Javascript landscape
8. Lie down in a corner
9. Cry myself to sleep4 -
If you ever completely want to waste your goddamn time, call Keolis (company behind Arriva I think) with a question regarding their app. They'll be able to provide you with no fucking usable help/information at all and will gladly guide you through the login process twenty-motherfucking-billion times again and have no single solution as to why its not working.
As a bonus, they'll ask for your details so they can investigate and call you back a little later to take you through the exact goddamn process you just did two-hundred-trillion times before with the exact same completely fucking useless result.11 -
Im going to fucking murder the QA team if they don't stop sender bullshit issues!
QA: hey dev, there is an error with attached files.
Me: okay what's the issue?
QA: it's just a random file that gets attached. Can you fix it by the end of the sprint(tomorrow)?
Me: I need to investigate it a bit before I can tell you how long it will take, how can I reproduce it?
QA: idk, it was just there.
*several hours of testing later*
Me: I've tried to cause the 'issue' on my local server, the test server and the live server. But I haven't seen it and I have no clue what could cause it.
*30min. before I go home*
QA: dev you have to fix it before you go home! Because we have some other important issues you have to fix tomorrow!
FUCK YOU AND YOUR IMAGINARY ISSUES I'M GOING HOME1 -
Had 2 days of vacation. Theoretically (plus weekend, plus 2 days) 6 days.
Worked today… At Saturday.
Some administrators forgot to properly check bandwidth limitations....
*rolls eyes*
We had a major version upgrade of some server software at Monday.
Guess why I got called...
Of course it MUST be the software upgrade.
It couldn't be the new hardware that was setup 2 weeks ago and on which a lot of "important" VMs were migrated.
*eyes roll inside till only white is visible*
The even more annoying thing is that it wasn't that hard to figure out.
Looking at monitoring, we had spikes on 20 Gbit/s (roughly 2.x Gigabyte/sec - Ethernet) connection of some server at roughly 1.9 plus Gigabyte/sec.
IO latency spikes that made the graph look like a heartbeat EKG with severe tachycardia...
*additionally to white eyes starts cursing in reverse latin*
Incompetent admin answer: Booboo that can only be your fault - the developers must investigate.
Me (just a tad more polite): Meep Meep mother fucker, get your shit together. If the software would eat that much, the network would be a niece chunk of charcoal. Plus the time (sending instead of links to monitoring pictures… guess the lazy fucktard who's brain is a vacuum didn't even bother to check it)...
NOTICE SOMETHING?!
Incompetent admin: It starts at the same time. Always.
After wasting roughly another hour of time discussing with him, I just hanged up the video call.
Called someone I knew from the admin department and turns out that - drumrolls please - the incompetent admin was someone who got recruited 3 months ago…
*turning into antichrist*
I then had a not so polite discussion about how the only competent people could take days off (all except incompetent admin were on vacation) and the seemingly incompetent fresh recruit - who by the way NEVER mentioned this - was the only one left of the admin department. Which would be bad alone, but no - he even got the 24/7 emergency support role for the whole weekend.
Sometimes this company and HR especially notoriously drive me insane...
Guess next week there will be some HR barbecue.
But yeah. After a lot of raging around we nailed it down to the traffic of backups and could fix it.
Roughly 4 hours of analysis, communication, raging and hatred.
Just one hour implementing shit.
*goozfraba*11 -
Out of all the bugs, the most annoying are the ones that come out and make me say "WTF?!?!? WHY THE FUCK HAS IT BEEN WORKING FOR THE LAST 2 YEARS??!!?!!??? THERE"S NO WAY IT COULD HAVE!"
When the bug surfaces, you investigate and see that it indeed IS a bug and there's no way it would ever work w/o a fix. But then SOMEHOW it's been working just fine for years....
It's like server elves went on strike and said "no more, it's enough covering that bug - it's time you fix it, lazy-ass idiot!"11 -
So I'm back from vacation! It's my first day back, and I'm feeling refreshed and chipper, and motivated to get a bunch of things done quickly so I can slack off a bit later. It's a great plan.
First up: I need to finish up tiny thing from my previous ticket -- I had overlooked it in the description before. (I couldn't test this feature [push notifications] locally so I left it to QA to test while I was gone.)
It amounted to changing how we pull a due date out of the DB; some merchants use X, a couple use Y. Instead of hardcoding them, it would use a setting that admins can update on the fly.
Several methods deep, the current due date gets pulled indirectly from another class, so it's non-trivial to update; I start working through it.
But wait, if we're displaying a due date that differs from the date we're actually using internally, that's legit bad. So I investigate if I need to update the internals, too.
After awhile, I start to make lunch. I ask my boss if it's display-only (best case) and... no response. More investigating.
I start to make a late lunch. A wild sickness appears! Rush to bathroom; lose two turns.
I come back and get distracted by more investigating. I start to make an early dinner... and end up making dinner for my monster instead.
Boss responds, tells me it's just for display (yay!) and that we should use <macro resource feature> instead.
I talk to Mr. Product about which macros I should add; he doesn't respond.
I go back to making lunch-turn-dinner for myself; monster comes back and he's still hungry (as he never asks for more), so I make him dinner.
I check Slack again; Mr. Product still hasn't responded. I go back to making dinner.
Most of the way through cooking, I get a notification! Product says he's talking it through with my boss, who will update me on it. Okay fine. I finish making dinner and go eat.
No response from boss; I start looking through my next ticket.
No response from boss. I ping him and ask for an update, and he says "What are you talking about?" Apparently product never talked to bossmang =/ I ask him about the resources, and he says there's no need to create any more as the one I need already exists! Yay!
So my feature went from a large, complex refactor all the way down to a -1+2 diff. That's freaking amazing, and it only took the entire day!
I run the related specs, which take forever, then commit and push.
Push rejected; pull first! Fair, I have been gone for two weeks. I pull, and git complains about my .gitignore and some local changes. fine, whatever. Except I forgot I had my .gitignore ignored (skipped worktree). Finally figure that out, clean up my tree, and merge.
Time to run the specs again! Gems are out of date. Okay, I go run `bundle install` and ... Ruby is no longer installed? Turns out one of the changes was an upgrade to Ruby 2.5.8.
Alright, I run `rvm use ruby-2.5.8` and.... rvm: command not found. What. I inspect the errors from before and... ah! Someone's brain fell out and they installed rbenv instead of the expected rvm on my mac. Fine, time to figure it out. `rbenv which ruby`; error. `rbenv install --list`; skyscraper-long list that contains bloody everything EXCEPT 2.5.8! Literally 2.5 through 2.5.7 and then 2.6.0-dev. asjdfklasdjf
Then I remember before I left people on Slack made a big deal about upgrading Ruby, so I go looking. Dummy me forgot about the search feature for a painful ten minutes. :( Search found the upgrade instructions right away, ofc. I follow them, and... each step takes freaking forever. Meanwhile my children are having a yelling duet in the immediate background, punctuated with screams and banging toys on furniture.
Eventually (seriously like twenty-five minutes later) I make it through the list. I cd into my project directory and... I get an error message and I'm not in the project directory? what. Oh, it's a zsh thing. k, I work around that, and try to run my specs. Fail.
I need to update my gems; k. `bundle install` and... twenty minutes later... all done.
I go to run my specs and... RubyMine reports I'm using 2.5.4 instead of 2.5.8? That can't be right. `ruby --version` reports 2.5.8; `rbenv version` reports 2.5.8? Fuck it, I've fought with this long enough. Restarting fixes everything, right? So I restart. when my mac comes back to life, I try again; same issue. After fighting for another ten minutes, I find a version toggle in RubyMine's settings, and update it to 2.5.8. It indexes for five minutes. ugh.
Also! After the restart, this company-installed surveillance "security" runs and lags my computer to hell. Highest spec MacBook Pro and it takes 2-5 seconds just to switch between desktops!
I run specs again. Hey look! Missing dependency: no execjs. I can't run the specs.
Fuck. This. I'll just push and let the CI run specs for me.
I just don't care anymore. It's now 8pm and I've spent the past 11 hours on a -1+2 diff!
What a great first day back! Everything is just the way I left it.rant just like always eep; 1 character left! first day back from vacation miscommunication is the norm endless problems ruby6 -
The first time I caused a massive error on production.
The good news was the site didn't go completely down. The bad news, however, was that it went down for 60% of our users, and because it's only partial, it got detected only after about two hours.
Everyone halted what they were doing to help investigate the issue. When it turned out that my latest commit caused the error, I was told to fix it... with the CTO and senior software architects watching.
It all happened because I deleted one too many line, an if statement, making the accompanying else statement a complete nonsense. It was a corner case code unforeseen by the QA guy.
The attached meme perfectly describes my feeling for the rest of the month following that accident.2 -
We've had a bunch of flaky tests in our repo for a while now that no one could be bothered to fix; we'd just re-run ci until it's green. Today I looked into it and I was inspired to make this meme, because I lived through it.
Adding logs to investigate just lowered the fail rate making investigation more difficult. I do have an idea of what it might be though so, we'll see tomorrow.3 -
Got it in WhatsApp...😃😂😂
I am sure you will have a laugh too
A wealthy manager was driving in his car when he saw two men along the roadside eating grass. Disturbed by the sight, he ordered his driver to stop and he got out to investigate. He asked one man "Why are you eating grass?"
"We don't have any money for food," the poor man replied. "We have to eat grass." "Well, then, you can come with me to my house and I'll feed you" the manager said.
"But sir, I have a wife and five children with me. They are over there, under that tree".
"Bring them along," the manager replied. Turning to the other poor man he stated, "You come with us also."
The second man, in a pitiful voice then said, "But sir, I also have a wife and seven children with me!"
"Bring them all, as well," the manager answered.
They all entered the car, which was no easy task, even for a car as large as it was.
One of the poor fellows turned to mr. Manager and said, "Sir, you are too kind. Thank you for taking all of us with you."
The manager replied, "Glad to do it. You'll really love my place; the grass is almost 1 meter high!"
Lesson: Never trust managers... They will take u to any extreme to finish their job.
And there is nothing like KIND MANAGERS 😜
Dedicated to all managers and upcoming managers 😂😂😂😂😂😂😂😂😂LOL😜😡😡6 -
MENTORS - MY STORY (Part I)
I've had several great mentors during my career. This is the story of the three most important.
1.- Professor E.
When I was on my first year (University - Computer Science), all my professors were 'normal' except for this one.
E. was the Programming I - Laboratory professor. And the most important thing he teached us was to think. To be independent, and to look for answers beyond simple solutions.
He was always pushing us beyond what was requested and to try new things, to try to improve our own solutions and to look at them as always improvable.
In a regular class, this would happen:
Student: Hey E. How can I do this X requirement?
E.: Use function xyz with A and B parameters.
S: Ok thanks...
...10 minutes later...
S: Hey E. that function doesn't work very good for my case.
E.: You have a book, you have internet connection. Don't waste 10 minutes trying to abide what I told you. Investigate, find a way or even a better way; use your resources.
Other example, in the first year all projects were requested to be delivered with text based interface (console projects).
What about E.?
"Well, you CAN deliver your project with a text based interface BUT you definitely SHOULD try to make a GUI, something simple but effective. Just so you learn more in the process"
Good E. He gave me strong foundations for this industry.2 -
I spent the last 3 months trying to hire new developers for my team. I found someone experienced who is great and a graduate, who is, well, a graduate.
For some reason he thinks he knows everything about our framework he has never used and seems to think he knows how everything works in our codebase which he has never seen.
That’s fine. I’ve had my share of cocky developers.
But what confuses me is that when I ask him what critical bugs are left, he reels off two significant ones. I ask what it will take to fix it. Of course he says he knows how to fix it. So I say great. Then fix it and let’s move on to a more fun part of our project.
Suddenly he didn’t know where he problem was and so I told him he had to investigate and come back with something concrete.
It’s just frustrating managing this developer who is deceitful.10 -
And this, ladies and gentlemen, is why you need properly tested backups!
TL;DR: user blocked on old gitlab instance cascade deleted all projects the user was set as owner.
So, at my customer, collegue "j" reviews gitlab users and groups, notices an user who left the organisation
"j" : ill block this user
> "j" blocks user
> minutes pass away, working, minding our own business
> a wild team devops leader "k" appears
k: where are all the git projects?
> waitwut?.jpg
> k: yeah all git projects where user was owner of, are deleted
> j.feeling.despair() ; me.feeling.despair();
> checks logs on server, notices it cascade deletes all projects to that user
> lmgt log line
> is a bugreport reported 3(!) years ago
> gitlab hasnt been updated since 3 years
> gitlab system owner is not present, backup contact doesnt know shit about it
> i investigate further, no daily backup cron tasks, no backup has been made whatsoever.
> only 'backups' are on file system level, trying to restore those
> gitlab requires restore of postgres db
> backup does not contain postgres since the backup product does not support that (wtf???)
> fubar.scene
> filesystem restore finished...
> backup product did not back up all files from git tree, like none of refs were stored since the product cannot handle such filenames .. Git repo's completely broken
Fuck my life6 -
I have this one chick on Twitter that she used to be a fellow classmate of mine while I was going for my Bachelors degree.
She would always bitch and complain about how the teachers we had were horrible at teaching. I had to interact with her because of one assignment and EVERYONE in the team was good and well with the items, we finished it rather quick (build a terminal emulator) and we were just thinking about ways to make it look cooler. It was challenging to be honest, but everyone was so interested in it and had all the materials requires plus a very nice instructor to go with that would be overly happy to answer questions and provide additional content, the instructor in question made no book requirement for the class and provided instead free resources, be it video content or his own code on the matter to make sure that everyone got it.
Dude was amazing (most of my university instructors were truly fascinating or people that had worked for very interesting projects) and so when she complain that the guy "had no idea how to teach" I decided to investigate a little.
You see, she had NEVER taken any consideration that maybe you should advance your studies in the field, particularly in programming, by doing your own fucking research. No, the professor is not supposed to hold your fucking hand while you are trying to understand how a fucking function IN FUCKING PYTHON works, dude gave a full length lecture and the only retard that did not understood the topic: was you. He went to you to help you and instead you gave the man an attitude because for some fucking reason he was accounted for your own fucking stupidity. Motherfucker was there for more than 30 minutes trying to explain to this dumb chick the nuances of def hello(): return "hey there" and for some fucking reason you were too daft to understand that.......
The chick complained to us in the team how because of work she had NO time whatsoever to dedicate to reading programming or general software engineering materials......yet her twitter was FULL of book reviews concerning novels and self help books and bullshit like that.
If you are like that, and blame it on your teachers: fuck-you.
To this day she still bitches about the teachers from time to time, I legit told her once that she had no business attending a C.S degree.
Do you think you can get into Julliard without ever touching a fucking instrument? no. Do you think you can tell some Terence Fletcher-throwing-a-chair-at-your motherfucker to show you how to position your hands on a drumstick or what keys to press on a piano? FUCK NO.
If you were being DAFT on a ProGraMmiNg101 for which they picked Python to be the language to use and blamed your fucking stupidity to a teacher then yet again: FUCK-YOU6 -
# PROD
* 10 app instances running
* 1 instance starts burning up 100% cpu
* we ask for a Thread Dump (stack traces)
* we get a TD taken after they manually restarted the instance
* they: "Please investigate. We need this fixed ASAP"
* .....
EVERY FUCKING TIME!!! Not once in recent years have they managed to take a TD correctly. What kind of a retarded monkey do you have to be for this to not sink in for YEARS!
Who tf put those idiot monkeys there in the first place...8 -
Me: We have a bug, we are not sure what's really happening yet. We have to look into it.
Project manager: what's happening
Me: We dont know yet
Project manager: How much time will it take to fix it
Me: We dont kn... actually *quick maths* unknown multiplied by "I dont know" divided by logic and addition of past experience - how many times we cant put time on bugs multiplied by we have been here before subtracted by the sqaure root of can we have time to investigate first?
Me: ....mhh an hour or so (then I remember Harry Potter wasnt my classmate) oh actually 2 hrs (in my head, safer)
Bug takes 2 days to solve 🙃
Project manager: you said 2hrs
Me to myself: I said it's a bug. A damn bug.6 -
WHAT THE FUCK.
I have to deal with a fucking bug that crashes my app only when I'm NOT looking for it.
I investigate another bug? Then BAM, here it is and crashes the app. And I have to start over again find the right conditions to not trigger it again.
I investigate that bug? Nope, everything runs as smooth as velvet.
It's like a Heisenbug, but the cat is dead in the box AND pissing all over the lab at the same time.3 -
My Sunday Morning until afternoon. FML. So I was experiencing nightly reboots of my home server for three days now. Always at 3:12am strange thing. Sunday morning (10am ca) I thought I'd investigate because the reboots affected my backups as well. All the logs and the security mails said was that some processes received signal 11. Strange. Checked the periodics tasks and executed every task manually. Nothing special. Strange. Checked smart status for all disks. Two disks where having CRC errors. Not many but a couple. Oh well. Changing sata cables again 🙄. But those CRC errors cannot be the reason for the reboots at precisely the same time each night. I noticed that all my zpools got scrubbed except my root-pool which hasn't been scrubbed since the error first occured. Well, let's do it by hand: zpool scrub zroot....Freeze. dafuq. Walked over to the server and resetted. Waited 10 minutes. System not up yet. Fuuu...that was when I first guessed that Sunday won't be that sunny after all. Connected monitor. Reset. Black screen?!?! Disconnected all disks aso. Reset. Black screen. Oh c'moooon! CMOS reset. Black screen. Sigh. CMOS reset with a 5 minute battery removal. And new sata cable just in cable. Yes, boots again. Mood lightened... Now the system segfaults when importing zroot. Good damnit. Pulled out the FreeBSD bootstick. zpool import -R /tmp zroot...segfault. reboot. Read-only zroot import. Manually triggering checksum test with the zdb command. "Invalid blckptr type". Deep breath now. Destroyed pool, recreated it. Zfs send/recv from backup. Some more config. Reboot. Boots yeah ... Doesn't find files??? Reboot. Other error? Undefined symbols???? Now I need another coffee. Maybe I did something wrong during recovery? Not very likely but let's do it again...recover-recover. different but same horrible errors. What in the name...? Pulled out a really old disk. Put it in, boots fine. So it must be the disks. Walked around the house and searched for some new disks for a new 2 disk zfs root mirror to replace the obviously broken disks. Found some new ones even. Recovery boot, minimal FreeBSD Install for bootloader aso. Deleted and recreated zroot, zfs send/recv from backup. Set bootfs attribute, reboot........
It works again. Fuckit, now it is 6pm, I still haven't showered. Put both disks through extensive tests and checked every single block. These disks aren't faulty. But for some reason they froze my system in a way so that I had to reset my BIOS and they had really low level data errors....? I Wonder if those disks have a firmware problem? So that was most of my Sunday. Nice, isn't it? But hey: calm sea won't make a good sailor, right?3 -
This isn't as much of a rant as the story of my worst abuse of computer knowledge.
This happened a couple years ago. When I was in high school, I had this friend/enemy relationship with this guy, lets call him Thomas. He loved to pull pranks on people. He had a similar firend/enemy relationship with my brother, and after one prank, my brother decided to get revenge. And by revenge, he meant asking me to make a virus.
I knew the guy, and I agreed. We thought about what type of virus we could make that would be funny, and not too damaging. We decided on a program that would play annoying sound effects every few minutes. Short enough to be noticable, long enough that Thomas would give up and not try to investigate.
I won't bore you with the details of the program. It was a very simple C app, very small, named "Counter-Strike-Global-Offence-Free-Download-Totally-Legit.exe". It was clearly visible in task manager, but since it was so small and barely used CPU or RAM it would stay near the bottom. I tried loading a custom sound effect, but it turned out the windows default "invalid sound effect" was much more annoying than any custom sound I could find.
The "Infecting" portion consisted of moving the .exe to the start menu startup folder while Thomas left his laptop unattended. My brother handled this part.
I unfortunaly left the country soon after and never actually saw the effect the program had on Thomas. I assumed my brothers laughing would give it away rather fast and he could simply remove it from his startup folder. However, my brother told me he still complained about it for months, before finally bringing the laptop to a repair center that found the totally legit CS:GO exe. My brother ended up telling him soon after, but this was still the best prank I ever pulled. -
"I want visibility in the sprint", "Information for everyone! When you do even a small refactoring, you should add a card to the sprint, clear?"
Those were the words of the product manager.
That sounds reasonable but when there is a bug to investigate, he just pops to the chat channel throw a request with a bit of information and asks to check/fix that.
So to keep my sanity, I asked him to create a ticket with relevant information and additional observations so we can have visibility as he was advocating for it ;)
It felt just good to see him going silent :D3 -
I'm currently developing an integration to an API and I found out a bug.
So I asked the contact person for the API if this feature was intentional. I did this on their forum for the API and I sent it as a private message to him.
I got a response telling me that they dont have the "sufficient details" to answer my question and that they would investigate the feature "comprehensivley".
5 minutes later I see a post on the forum in the developer section from the contact dude and it was my fucking question.
So now he's asking the users of the API if his and his companys own bug is intentional.
What the actual fuck?!
Is this how you investigate things "comprehensivley"? -
a quote of todays daily standup:
"<other guy>, did you had time to investigate that disastrous SQL query. I had no time, one of my horses was giving birth"4 -
> Hi xx team, we are getting 500 errors from your api. Here's http request and resp.
< hi, we are calling yy team's api http://yy.Com?/api/yyy and it does not respond in 3 minutes, so we treat this as an esockettimeout. Please reach out to yy team
> hi yy team, can you assist us?
< hi, please provide request, url and response you're getting from us
> yy, all this info is in this very mailtrail
< hi, I cannot see request nor response anywhere
> [screenshot w/ highlighted "http://yy.Com?/api/yyy" and "and it does not respond in 3 minutes". Please read through this email thread, it has all the info
< hi, I need request and response to investigate this issue. Esockettimeout is not our error
<wtf are you smoking???>7 -
I wrote an important test-case for this complicated/hard-to-understand program and i can proudly say "it doesn't work on my machine". On other machines it works as expected.
Should i really investigate this or focus on other tasks?12 -
That feeling when you about to leave at work and ready for the long holiday, and suddenly there's a 🔥. You need to investigate and fix the issue. What a day!2
-
Trying to investigate why the team of new Devs are reporting a particular set of modules is not properly maintainable, found this little gem at the root, written in 2014.4
-
I love when this happens to me.
1. Restarts manually the webserver.
2. 5 seconds later, i try to reach one of the websites and i am surprised of the 'the site is down' error and begin to investigate the reason.
3. 30 seconds later: "oh im stupid".4 -
Customer complains that the deployed desktop app is slow at site x.
I check it out with users at site x, and indeed, it does have a delay when trying to connect to a share on a server.
Checks with users at site y and z, no issues.
After a bit of digging, the resolve of a DNS record is most likely the culprit.
Send the ticket to the customer network team to investigate.
Get it back after an hour.
"We have pinged the DNS name, and it responds fine, there must be a bug in the application".
Oh and also, I wrote this rant at work, in my head, with a lot more cursewords involed.3 -
fck you visual studio!!! seriously what is wrong with you?!?
~me peacfully writing some code ~
ok let's see what we did
vs: I can't compile that. The key whateverKey in line 15 is not defined.
me: ok let's investigate...
nowhere in line 15 use whateverKey.... ok....
wait I didn't change that file at all.
~me clicking rebuild solution~
vs: can't build that because of whateverKey in line 15.
me : WTF?!?
checking git diff -> file not changed
me okkkkkkk......
closing visual studio and reopening solution.
Build succeeded.
What the actuall hell?!?
I'm spending way too much time trying to get that shity peace of software to do what it is supposed to do!6 -
Most painful code error you've made?
More than I probably care to count.
One in particular where I was asked to integrate our code and converted the wrong value..ex
The correct code was supposed to be ...
var serviceBusMessage = new Message() {ID = dto.InvoiceId ...}
but I wrote ..
var serviceBusMessage = new Message() {ID = dto.OrderId ...}
At the time of the message bus event, the dto.OrderId is zero (it's set after a successful credit card transaction in another process)
Because of a 'true up' job that occurs at EOD, the issue went unnoticed for weeks. One day the credit card system went down and thousands of invoices needed to be re-processed, but seemed to be 'stuck', and 'John' was tasked to investigate, found the issue, and traced back to the code changes.
John: "There is a bug in the event bus, looks like you used the wrong key and all the keys are zero."
Me: "Oh crap, I made that change weeks ago. No one noticed?"
John: "Nah, its not a big deal. The true-up job cleans up anything we missed and in the rare event the credit card system goes down, like now. No worries, I can fix the data and the code."
<about an hour later I'm called into a meeting>
Mgr1: "We're following up on the credit card outage earlier. You made the code changes that prevented the cards from reprocessing?"
Me: "Yes, it was my screw up."
Mgr1: "Why wasn't there a code review? It should have caught this mistake."
Mgr2: "All code that is deployed is reviewed. 'Tom' performed the review."
Mgr1: "Tom, why didn't you catch that mistake."
Tom: "I don't know, that code is over 5 years old written by someone else. I assumed it was correct."
Mgr1: "Aren't there unit tests? Integration tests?"
Tom: "Oh yea, and passed them all. In the scenario, the original developers probably never thought the wrong ID would be passed."
Mgr1: "What are you going to do so this never happens again?"
Tom: "Its an easy addition to the tests. Should only take 5 minutes."
Mgr1: "No, what are *you* going to do so this never happens again?"
Me: "It was my mistake, I need to do a better job in paying attention. I knew what value was supposed to passed, but I screwed up."
Mgr2: "No harm no foul. We didn't lose any money and no customer was negativity affected. Credit card system may go down once, or twice a year? Nothing to lose sleep over. Thanks guys."
A week later Mgr1 fires Tom.
I feel/felt like a total d-bag.
Talking to 'John' later about it, turns out Tom's attention to detail and 'passion' was lacking in other areas. Understandable since he has 2 kids + one with special-needs, and in the middle of a divorce, taking most/all of his vacation+sick time (which 'Mgr1' dislikes people taking more than a few days off, that's another story) and 'Mgr1' didn't like Tom's lack of work ethic (felt he needed to leave his problems at home). The outage and the 'lack of due diligence' was the last straw.1 -
Finally decided to investigate my phone's overheating issue.. And apparently I should uninstall Google services along with the temp measuring app lol1
-
developer makes a "missed-a-semicolon"-kind of mistake that brings your non-production infrastructure down.
manager goes crazy. rallies the whole team into a meeting to find "whom to hold accountable for this stupid mistake" ( read : whom should I blame? ).
spend 1-hour to investigate the problem. send out another developer to fix the problem.
... continue digging ...
( with every step in the software development lifecycle handbook; the only step missing was to pull the handbook itself out )
finds that the developer followed the development process well ( no hoops jumped ).
the error was missed during the code review because the reviewer didn't actually "review" the code, but reported that they had "reviewed and merged" the code
get asked why we're all spending time trying to fix a problem that occurred in a non-production environment. apparently, now it is about figuring out the root cause so that it doesn't happen in production.
we're ALL now staring at the SAME pull request. now the manager is suddenly more mad because the developer used brackets to indicate the pseudo-path where the change occurred.
"WHY WOULD YOU WASTE 30-SECONDS PUTTING ALL THOSE BRACES? YOU'RE ALREADY ON A BRANCH!"
PS : the reason I didn't quote any of the manager's words until the end was because they were screaming all along, so, I'd have to type in ALL CAPS-case. I'm a CAPS-case-hater by-default ( except for the singular use of "I" ( eye; indicating myself ) )
WTF? I mean, walk your temper off first ( I don't mean literally, right now; for now, consider it a figure of speech. I wish I could ask you to do it literally; but no, I'm not that much of a sadist just yet ). Then come back and decide what you actually want to be pissed about. Then think more; about whether you want to kill everyone else's productivity by rallying the entire team ( OK, I'm exaggerating, it's a small team of 4 people; excluding the manager ) to look at an issue that happened in a non-production environment.
At the end of the week, you're still going to come back and say we're behind schedule because we didn't get any work done.
Well, here's 4 hours of our time consumed away by you.
This manager also has a habit of saying, "getting on X's case". Even if it is a discussion ( and not a debate ). What is that supposed to mean? Did X commit such a grave crime that they need to be condemned to hell?
I miss my old organization where there was a strict no-blame policy. Their strategy was, "OK, we have an issue, let's fix it and move on."
I've gotten involved ( not caused it ) in even bigger issues ( like an almost-data-breach ) and nobody ever pointed a finger at another person.
Even though we all knew who caused the issue. Some even went beyond and defended the person. Like, "Them. No, that's not possible. They won't do such dumb mistakes. They're very thorough with their work."
No one even talked about the person behind their back either ( at least I wasn't involved in any such conversation ). Even later, after the whole issue had settled down. I don't think people brought it up later either ( though it was kind of a hush-hush need-to-know event )
Now I realize the other unsaid-advantage of the no-blame policy. You don't lose 4 hours of your so-called "quarantine productivity". We're already short on productivity. Please don't add anymore. 🙏11 -
Oh so day continued....
My boss just asked me before I left... You know that report we wanted automated, you said you'd get it done by today, is it done yet?
Me: well uh who dragged me into a PROD issue because no one else knows how to investigate... EVEN THOUGH I BUILT AND SHOWED U HOW TO USE THEM... SEVERAL TIMES. (no i didn't say this last but that's what went on in my head).
Oh and I figured out what the issue was... -
Github 101 (many of these things pertain to other places, but Github is what I'll focus on)
- Even the best still get their shit closed - PRs, issues, whatever. It's a part of the process; learn from it and move on.
- Not every maintainer is nice. Not every maintainer wants X feature. Not every maintainer will give you the time of day. You will never change this, so don't take it personally.
- Asking questions is okay. The trackers aren't just for bug reports/feature requests/PRs. Some maintainers will point you toward StackOverflow but that's usually code for "I don't have time to help you", not "you did something wrong".
- If you open an issue (or ask a question) and it receives a response and then it's closed, don't be upset - that's just how that works. An open issue means something actionable can still happen. If your question has been answered or issue has been resolved, the issue being closed helps maintainers keep things un-cluttered. It's not a middle finger to the face.
- Further, on especially noisy or popular repositories, locking the issue might happen when it's closed. Again, while it might feel like it, it's not a middle finger. It just prevents certain types of wrongdoing from the less... courteous or common-sense-having users.
- Never assume anything about who you're talking to, ever. Even recently, I made this mistake when correcting someone about calling what I thought was "powerpc" just "power". I told them "hey, it's called powerpc by the way" and they (kindly) let me know it's "power" and why, and also that they're on the Power team. Needless to say, they had the authority in that situation. Some people aren't as nice, but the best way to avoid heated discussion is....
- ... don't assume malice. Often I've come across what I perceived to be a rude or pushy comment. Sometimes, it feels as though the person is demanding something. As a native English speaker, I naturally tried to read between the lines as English speakers love to tuck away hidden meanings and emotions into finely crafted sentences. However, in many cases, it turns out that the other person didn't speak English well enough at all and that the easiest and most accurate way for them to convey something was bluntly and directly in English (since, of course, that's the easiest way). Cultures differ, priorities differ, patience tolerances differ. We're all people after all - so don't assume someone is being mean or is trying to start a fight. Insinuating such might actually make things worse.
- Please, PLEASE, search issues first before you open a new one. Explaining why one of my packages will not be re-written as an ESM module is almost muscle memory at this point.
- If you put in the effort, so will I (as a maintainer). Oftentimes, when you're opening an issue on a repository, the owner hasn't looked at the code in a while. If you give them a lot of hints as to how to solve a problem or answer your question, you're going to make them super, duper happy. Provide stack traces, reproduction cases, links to the source code - even open a PR if you can. I can respond to issues and approve PRs from anywhere, but can't always investigate an issue on a computer as readily. This is especially true when filing bugs - if you don't help me solve it, it simply won't be solved.
- [warning: controversial] Emojis dillute your content. It's not often I see it, but sometimes I see someone use emojis every few words to "accent" the word before it. It's annoying, counterproductive, and makes you look like an idiot. It also makes me want to help you way less.
- Github's code search is awful. If you're really looking for something, clone (--depth=1) the repository into /tmp or something and [rip]grep it yourself. Believe me, it will save you time looking for things that clearly exist but don't show up in the search results (or is buried behind an ocean of test files).
- Thanking a maintainer goes a very long way in making connections, especially when you're interacting somewhat heavily with a repository. It almost never happens and having talked with several very famous OSSers about this in the past it really makes our week when it happens. If you ever feel as though you're being noisy or anxious about interacting with a repository, remember that ending your comment with a quick "btw thanks for a cool repo, it's really helpful" always sets things off on a Good Note.
- If you open an issue or a PR, don't close it if it doesn't receive attention. It's really annoying, causes ambiguity in licensing, and doesn't solve anything. It also makes you look overdramatic. OSS is by and large supported by peoples' free time. Life gets in the way a LOT, especially right now, so it's not unusual for an issue (or even a PR) to go untouched for a few weeks, months, or (in some cases) a year or so. If it's urgent, fork :)
I'll leave it at that. I hear about a lot of people too anxious to contribute or interact on Github, but it really isn't so bad!4 -
Dev: Hey infra guys, our backend time to first byte takes 8 seconds! Can you guys investigate?
Network team: Oh yeah that's normal, we don't investigate anything below 30s, that's our SLA 😎
😵5 -
PSA: If you use jQuery and BlueImp's jQuery File Upload there is a big potential vulnerability you need to be aware of. If you use NPM to pull the repo into your public folder, the "server" folder will be available for people to take advantage of. "Hackers" may be able to upload malicious code and replace parts of your site.
I had a site hacked and later saw on Google Analytics that people were posting to random URLs in that folder. The fix is to simply delete that folder, but if you use NPM, you need to be extra careful it doesn't come back.
Also, I didn't investigate further. So I'm not sure what (if anything) is vulnerable in there, or if it was just the specific version I had. To be safe, if you use this plugin (as MANY people do), just delete the folder.
Link to the repo for your reference: https://github.com/blueimp/...4 -
My boss seems to have developed a super power where he can imagine features into existence.
I should investigate... -
Sorry, need to vent.
In my current project I'm using two main libraries [slack client and k8s client], both official. And they both suck!
Okay, okay, their code doesn't really suck [apart from k8s severely violating Liskov's principle!]. The sucky part is not really their fault. It's the commonly used 3rd-party library that's fucked up.
Okhttp3
yeah yeah, here come all the booos. Let them all out.
1. In websockets it hard-caps frame size to 16mb w/o an ability to change it. So.. Forget about unchunked file transfers there... What's even worse - they close the websocket if the frame size exceeds that limit. Yep, instead of failing to send it kills the conn.
2. In websockets they are writing data completely async. Without any control handles.. No clue when the write starts, completes or fails. No callbacks, no promises, no nothing other feedback
3. In http requests they are splitting my request into multiple buffers. This fucks up the slack cluent, as I cannot post messages over 4050 chars in size . Thanks to the okhttp these long texts get split into multiple messages. Which effectively fucks up formatting [bold, italic, codeblocks, links,...], as the formatted blocks get torn apart. [didn't investigate this deeper: it's friday evening and it's kotlin, not java, so I saved myself from the trouble of parsing yet unknown syntax]
yes, okhttp is probably a good library for the most of it. Yes, people like it, but hell, these corner cases and weird design decisions drive me mad!
And it's not like I could swap it with anynother lib.. I don't depend on it -- other libs I need do! -
Probably had my worst half-week ever this week.
Customer's CRM system, the read and edit masks just...stopped existing on last week friday. CRM fell back on some default masks for the dataset. No way to create new masks directly without putting the whole system upside down.
We couldn't do anything anyway because they reported the issue literally as we all were about to leave for weekend and our boss was like "Ah nah, well do it next week."
Our brains were already fried anyway...
I mail the reporter that we've registered their issue, will investigate and report back ASAP once we've got news.
Monday rolls around, I'm whacking my head against their system trying to figure the fuck out, what went wrong and how to solve it, I come up empty; Not that terrible since the masks only stopped existing in the webclient version of the system and they can still use the windows client, so they can still work.
Tuesday rolls around, I'm at an on site training for an ERP system with my boss at a remote company. Get an email in midst of the training, I was doing protocol.
Guy from the afflicted company goes and tells me that the issue has somehow spread to his colleague and him...IN THE WINDOWS CLIENT.
I'm fucking flabbergasted, so to speak, since the masks for the windows client and the web client are totally isolated from one another.
After we're back at our company, I investigate, less efficiently this time because my brain got fried at the training. I come up empty again.
NOW TODAY: Discuss further proceedings with my boss, he's not pissed at me or anything, just to say, but we're both worried, obviously.
Then at 10:20, a guy from the afflicted company mails me in an annoyed tone that the masks are still broken.
11:00, we figure out a workaround so the windows client users can at least work again, albeit limited.
11:10, I mail the guy, telling him that although we're still not able to fully work everything out and are still investigating, we've made a workaround so they can at least work again.
11:20, the guy mails me in a pissed tone around the lines of "This is very very important and must be fixed ASAP or else we'll not be able to work at all [...]"
And I think like "Dude I literally just told you like 8 minutes ago that there's are workaround so you'll be able to at least work again..."
Forward the mail to boss, we meet up quickly to discuss how in God's name we can deescalate this mfer.
11:31, the guy mails me again, all apologetically this time "Stop! All is good, I just now fully read you mail, thanks for implementing the workaround, nothing will come to a standstill [...]"
BRUH CAN YOU NOT FUCKING READ BEFORE ESCALATING SHIT
Fuck customers. Dumb fucking cretins unable to fucking read.
The issue is still unresolved. Support of the CRM software lets us sit on our collective asses and wait.
There is no such thing as stable software, it's a myth.
Every corporate software is like an ever-decaying semi-corpse of a brain dead patient slowly getting worse and worse but not fucking dying.
Rant over. -
My first project, ever, was a very unproud thing that was developed...
A little detail - I was 12 back then.
So, a distant family member had a business of selling things that they brought to the country. They, of course, needed a website and my parents knew that I had some skills in development so suggested them my services.
Discussion started and well, what came out was this:
1. They need a site with items list.
2. It had no actual design plans, no actual requirements, just a list.
3. Oh. It had to work perfectly on IE4 or IE5 (can't remember).
So what was actually done, was a site full of divs, clearfixes and so buggy that opening in any other browser than IE - resulted in a total failure.
We have sat down and I, with all the respect told them that my skills are not sufficient to make all of the browsers work equally (I've been on HTML/CSS for more than 6 months back then. And all of it was after school). They calmed me down and said that it's ok, they can give me as much time as I need to figure things out. Yet, my English wasn't good back then so I couldn't... (I was 12, with 3 years of basic English as a non-native speaker).
We sat around the table, discussed what could be done and if I could investigate that and re-do when I'm fully ready. I agreed. The site was launched for IE only as it worked fine and others were just throwing an error to visit it with IE.
They were happy, people were using it and they didn't say that anything was bad. Of course, management was thru FTP and editing LIVE files because, well, no php, no control panels, nothing... I felt ashamed that the site wasn't what they wanted but they were ultra happy with it - first customers rolled in from there. They paid me around 60EUR at that time (it was ~12 years ago) and I've spent a month there. (minimum monthly wage here was around 90-120EUR at that time...
So, all in all, this project that I still think I failed - pushed me to the world of devs and... I've never regretted it. Of course, when I actually met with them after years - they have dropped the site as it was not needed anymore but they said that it was exactly what they needed and there was nothing wrong, even if it didn't work perfectly.2 -
sales-managers: How long do you need to implement feature X ?
software-dev: Hmmm, that's nothing we have in our default-packages ... could be nasty, because it won't work without feature Y, which also does not exist in the current version 3 of our system.
I need to investigate this issue.
... 2 days later:
software-dev: This is really a nasty problem - to make X work, we've to reimplement Y for our system version 3, but this won't work with feature Z.
If we do this, it may take several weeks.
sales-manager: we need to go live in 2 months.
software-dev: might work.
------
1 week before go-live:
sales-manager: The customer saw us testing feature X. He does not like it. Could we just do it in ... blabla ... this way?
software-dev: This would work out of the box with feature Z, yes - we've to remove feature Y and X for that. But be warned - this might work next week without testing only.
sales-mamanger: do it now!
day of go live:
The customer tried the new feature X - it won't work.
software-dev: But it's not there, was removed, instead he has to use feature Z.
...
sales-guy comes back: He does not like it.
software-dev: why not? its working!
sales-guy: Yes, but he still wants it to work like feature X as he ordered.
software-dev: according to the specs, its exactly what he ordered. look at that: (showing the general specifications of project, showing feature Z).
...
sales-guy: The customer did not review this new document since last week.... Its still feature X
...
dev: really? why? I sent that version to you the day, he said, he doesn't like feature X, and you said I've to change that just urgently.
sales-guy: Please switch back to the version with X of last week. - could you. please ?
me: This won't work, because the other colleagues already finished their stuff on that currently running system - we'll lose all the optimations we've done to make this and other stuff work.
----- FAIL ------- NEVER DO ANYTHING WITHOUT SIGNATURE OF THE CUSTOMER !!!
One week onsite and rescheduled go-live is just so-what expensive.
Today (some weeks later) ... I saw someone else sitting in sales-guys office.1 -
Am I the only one the sometimes just makes a PR that won't fix the issue but at least shuts everybody up so I can investigate in peace.3
-
It took AWS about a month to figure out why their load balancer was screwing up content length for requests from our site. Multiple times the ticket was closed due to inactivity because they took so long to investigate. Turns out there's a bug with how AWS load balancers scale, and when they are below a certain traffic threshold they truncate extremely long content. Their solution was to edit the balancer behind the scenes to always be scaled up, and then tell us to never delete it.
So then every time we needed to set up a staging environment we had to contact support so they'd edit the balancer. Which always took ages since most of the support agents didn't understand the convoluted issue and had to forward it on to more technically inclined staff, who then had to investigate fresh every time.
This was ridiculously annoying, so I spent months writing an automated solution to spin up staging new environments on the spot, this made use of a haproxy server which had to edit rules on the fly so that the AWS balancer could be circumnavigated. It was a better system then the old way anyway, but all the same an irritating issue to be forced to deal with.
All around a very shitty experience. This was a few years ago now and I'm not employed there any more, but I hope AWS fixed this since then.11 -
PO1: Hey, PO2 just told me that he experiences a lot of crashes in our iOS app!
Me: Whoa! The app hasn’t had any crashes since ages. The testers haven’t reported crashes either. (Me in panic mode). I will ask PO2 about some details about the crashes.
Me to PO2: So, can you please describe me when the crash happens?
PO2: (long story about error messages and UI quirks and how he force quits the app to make them disappear)
Me: OK thanks for that info. Those are definitely valid problems that we have not encountered yet. But none of them are crashes. So are there any other problems that cause crashes?
PO2: Yes and no. (Long story and more problems)
Me: ok we need to investigate that. But are there crashes?
PO2: (Something that doesn’t answer the question)
Me: I need to ask explicitly again: Are there actual crashes where the app closes itself automatically?
PO2: No, that has never happened.6 -
I was helping a teammate investigate an issue he is working on, while having a lot of stuff to do for myself, until I notice that the asshole was very busy sending personal emails and basically I was doing his job...3
-
A loooong time ago...
I've started my first serious job as a developer. I was young yet enthusiastic as well as a kind of a greenhorn. First time working in a business, working with a team full of experienced full-lowered ultra-seniors which were waiting to teach me the everything about software engineering.
Kind of.
Beside one senior which was the team lead as well there were two other devs. One of them was very experienced and a pretty nice guy, I could ask him anytime and he would sit down with me a give me advice. I've learned a lot of him.
Fast forward three months (yes, three months).
I was not that full kind of greenhorn anymore and people started to give me serious tasks. I had some experience in doing deployments and stuff from my other job as a sysadmin before so I was soon known as the "deployment guy", setting up deployments for our projects the right way and monitoring as well as executing them. But as it should be in every good team we had to share our knowledge so one can be on vacation or something and another colleague was able to do the task as well.
So now we come to the other teammate. The one I was not talking about till now. And that for a reason.
He was very nice too and had a couple of years as a dev on his CV, but...yeah...like...
When I switched some production systems to Linux he had to learn something about Linux. Everytime he encountered an error message he turned around and asked me how to fix it. Even. For. The. Simplest. Error. He. Could. Google. Up.
I mean okay, when one's new to a system it's not that easy, but when you have an error message which prints out THE SOLUTION FOR THE ERROR and he asks me how to fix it...excuse me?
This happened over 30 times.
A. Week.
Later on I had to introduce him to the deployment workflow for a project, so he could eventually deploy the staging environment and the production environment by hisself.
I introduced him. Not for 10 minutes. I explained him the whole workflow and the very main techniques and tools used for like two hours. Every then and when I stopped and asked him if he had any questions. He had'nt! Wonderful!
Haha. Oh no.
So he had to do his first production deployment. I sat by his side to monitor everything. He did well. One or two questions but he did well.
The same when he did his second prod deploy. Everythings fine.
And then. It. Frikkin. Begins.
I was working on the project, did some changes to the code. Okay, deploy it to dev, time for testing.
Hm.
Error checking out git. Okay, awkward. Got to investigate...
On the dev server were some files changed. Strange. The repo was all up to date. But these changes seemed newer because they were fixing at least one bug I was working on.
This doubles the strangeness.
I want over to my colleague's desk.
I asked him about any recent changes to the codebase.
"Yeah, there was a bug you were working on right? But the ticket was open like two days so I thought I'll fix it"
What the Heck dude, this bug was not critical at all and I had other tasks which were more important. Okay, but what about the changed files?
"Oh yeah, I could not remember the exact deployment steps (hint from the author: I wrote them down into our internal Wiki, he wrote them done by hisself when introducing him and after all it's two frikkin commands), so I uploaded them via FTP"
"Uhm... that's not how we do it buddy. We have to follow the procedure to avoid..."
"The boss said it was fine so I uploaded the changes directly to the production servers. It's so much easier via FTP and not this deployment crap, sorry to say that"
You. Did. What?
I could not resist and asked the boss about this. But this had not Effect at all, was the long-time best-buddy-schmuddy-friend of the boss colleague's father.
So in the end I sat there reverting, committing and deploying.
Yep
It's soooo much harder this deployment crap.
Years later, a long time after I quit the job and moved to another company, I get to know that the colleague now is responsible for technical project management.
Hm.
Project Management.
Karma's a bitch, right? -
Fucking microshaft! I bought a custom controller from their shop as a birthday gift to my brother. Fucking first thing the website crashes with 500 with my main account so I call support. Said them its a backend issue and they should let the devs investigate. Support says they can't even contact them in anyway shape or form. Fucking great!
So since my account seems to has broken their backend I create another account using some random email while support tells me to fucking log in and out again (yeah man I tried that). OK wonderful new account worked I can buy the controller.
Now one year later the controller just fucking stops working (probably why its called Xbox one! controller). Wonderful I paid 90€ for that shit thing and now it won't connect anymore. Tried everything and searched countless forums, nothing helped. Fuckers say: JuSt ConNeCT iT tO YoUr XbOx oNe and it might magically work (TM). You fuck I bought it for PC why the fuck can I not just fix it using a PC. Do you want me to buy a fucking Xbox for 500 bucks just to get the fucking controller to work!? You shitfaced monkey!
OK then lets try that support again because that worked so well last time. I put in the serial number and... Fucking unrecognized number. Unrecognized number my ass. Go suck on a spiked club you buffoon!
Now I'm fucked because I don't have the fucking receipt anymore and the email was send to that fucking temp account I don't even know the email address for anymore (ノ°益°)ノ1 -
Let's say you're working on a web application, and you notice that one of the pages is not displaying the correct data. You investigate further and realize that the data is being retrieved from an API endpoint, but for some reason, the API is returning the wrong data.
You start looking into the code that calls the API and notice that it's passing in the correct parameters, so you dig deeper into the API code itself. After hours of poring over the code, you finally discover that the bug is caused by a typo in the database query that the API is using to retrieve the data.
You fix the typo and think the problem is solved, but then you realize that the data is still not displaying correctly on the page. After even more investigation, you discover that the bug is actually being caused by a caching issue on the client side.
At this point, you're feeling incredibly frustrated and overwhelmed. You've spent hours trying to track down this bug, and it feels like every time you think you've found the root cause, another issue pops up. This is just one example of the many challenges that developers face on a daily basis.6 -
Stakeholder: Can you investigate the problem with this user profile? We made updates to system A, but user is saying it’s the wrong info on the website.
Me: Looks fine to me. Looks like your updates just needed time to trickle down. Though, you will need to clean up this user’s data because it can cause X problems. There’s not much I can do since the site just displays info from system A.
SH: Can you delete the user’s website account and we can ask user to create a new one?
Me: …Ok, let’s try this again. It’s not necessary to delete the account and make the user create a new one. It’s not going to resolve the X problems that I mentioned. The website really needs clean data from system A.1 -
I'm doomed.
My first production worker script is making multiple active attribute of a user. My script should be able to deactive the old attributes if there is new one.
Months ago, this issue occured. My teammate from team A take over the script to investigate since I am busy working with team B.
Yesterday, I found out that I, myself, overwrite the fix my teammate made for that because of a new feature.
I have to clean up the affected records on production on Monday..and i have to explain to my manager. T.T
LPT: ALWAYS PULL REPO before developing new feature... -
!rant Update On My Scammer Job.
Today, The authority saw the ads , and take my case. My employers are not letting me leave and authorities notice everything...
Reference :
https://marketing-interactive.com/o...
https://devrant.com/rants/4147960/...
https://devrant.com/rants/4140649/...7 -
Bug raised: "Please investigate these CRTICAL issues immediately, the system is not working properly"
Translation: "We're too stupid to use our own system, the system that we created the specification for. Please re-educate us and explain that these are not actually issues (immediately). But we're gonna CC every motherfucker in the company so they KNOW you fucked up and the pressure is on you to fix it, bitch! Huehuehuehue"3 -
Run test
everything ok
Run again
everything ok
Run again
error
Run again
everything ok
*wtaf is happening?*
I googled for the cause of a "double callback" error and found out that supertest was throwing it when I was attaching a file to the API request. found no conclusive way to solve it, just that "supertest does it from time to time".
Trying to investigate further, I made a function to repeat the API request 5 times in a row. Everything passed. The run it again. Two failed. Again and everything passed.
this is bullshit
fml -
Figured out the root cause of slow code by using a profiler in an afternoon (more like an hour but needed to confirm/investigate)...
Team spent over a week trying to figure it out using logging and debugging...
Even after I told them to use a profiler...
Guess now I've justified my position of being the highest paid dev on the team.
I just know how to use other tools besides a hammer.1 -
PM: You developers are like craftsmen, you're so unreliable in your time estimates, I do not know why I bother asking you.
Looking up, thinking if you gave me time to investigate the issue before forcing me to give an estimate... *smile and wave*
Good PM you sod off !!1 -
It took me eleven months of working from home to investigate renting a coworking space. Eleven wasted months! The coworking office is TOTALLY worth every USD.9
-
I'm trying to investigate why chrome keeps crashing after i implemented web sockets to a web app.
I used windows perfmon to see the memory usage over night.
The usage between 17:30 and 01:50 is expected behaviour as this part of the app is a live data graph of the last 48 hours.
Now i have to find out why the app doubles in memory twice in a hour.2 -
The more I investigate mobile development the more it becomes apparent to me that modern development is a *massive* pile of technical debt thats going to burst, crash, and burn one day, along with the entire industry.
If it takes a newbie more than ten minutes in your framework to add a fucking *button* and navigate to a new screen, then your framework is shit.10 -
I work at a research institute (part of probably the largest research body in whole Europe). And it's driving me nuts. Forget about the lack of interest to improve yourself in terms of software skills or basic digital hygiene so that others don't have to pick up the mop and clean after you. The ancient mindset is what is making me curse everyday. Only a few years ago we switched to GitLab. Before that versioning, if at all a known term, was done explicitly via email messages - code snippets in the message's body, versions in the subject of message attachments...A freaking nightmare. Constantly broken links to files and folders on our NAS since some people have never heard of relative paths or writing even the tiniest bit of support for configuration files in their software so that a tool does not completely brake the moment you transfer it onto another system or - God forbid - the person leaves and there is no information whatsoever what's where. Everyone is complaining about the clutter on our servers but no one is willing to actually clean their own (not someone else's) crap. If you mention to someone something like "Can you please pack your stuff in this GitLab repo with this folder structure, so that I have an easier time integrating it into the main software that we need to ship to our customers in a few days?" all you get as a response is a blank facial expression and the occasional "I have my own processes. Don't bother me with this!". I have been trying for almost 4 years now and its budging a little bit but the lack of support is abysmal. My boss, as enthusiastic as it is, is incapable of putting his foot down. The fact that I have two heads of my team (one not really but acting like it) does not improve the situation at all especially since both are pulling in a completely different direction. We are literally wasting hundreds of thousands of euros of taxpayers' money to buy new hardware that people are either inadequate to use to its fullest potential (think buying the latest GPU to play Minesweeper) or not having even the smallest clue on what they need it for. And we are always complaining about our budget! You don't invest a couple of hours to investigate how PyTorch can work in a distributed manner on multiple CPUs, GPUs and even systems, yet demand you get a new server for 80K with a more powerful GPU and CPU to run your crap models on so that you can publish a half-ass paper that nobody cares for let alone will ever bother reading (beside the AI reviewers).3
-
I went to meet a client with our CTO. In the meeting we discuss the implementation of SAML SSO. Their SSO guys asked whether they need to build 2 trusts for our application because we have 2 modules that use SSO. Both the CTO and I were not sure because we did not have any prior experience of integrating SAML SSO. To act professional, we couldn't say we were not sure. So the CTO said we needed two trusts. I immediately added "We may only need one. Let us do a bit of investigation and confirm."
After the meeting I did the investigation and found out we really only needed one. So I sent out an email to tell the client, cc the CTO. 1 minute later I got the email from the CTO "why tell them one when I said two?". When it's an immediate response with only 1 line, I know I'm in trouble. So I called him and was ready to explain to him. I couldn't. Later I found out the time I was calling him, he was talking about this with the CEO.
I thought maybe I can explain to him when he's available. The next morning as I came to work, the CEO asked me to come to his office. He closed the door, and told me the first line the CTO told him the day before was "I want him (me) fired." I was so shocked. Having been working with the CTO for quite a while, I was surprised he said that without even communicating with me. Did I do something that wrong that you don't even bother to tell me what's wrong? I was not fired because the CEO at least asked what happened. He also understood I was actually making a better technical decision. But well, guess I shouldn't be making a decision when I had no power to. And even I believed the client heard my "let me investigate first" comment, the CTO didn't. I still got an unofficial warning. For that whole day because of the stress, I don't remember getting anything done.
Fuck that acting like profession and smart when you are not. I'd go down the path of becoming professional and smart instead. And fuck metting with clients. I'm a dev don't fucking dare to talk to me and get me fired. If you wanna talk, talk to the big guys who don't make us look bad like I did.
If you ask me today I still believe I haven't done anything wrong there. So fuck everything.2 -
How to impress the extent of your power over your employees and partners:
1. Make the tech team spend inordinate amounts of effort to investigate someone stealing an almost worthless piece of junk, to make an example for the rest of the workforce.
2. Complain in "secret" meetings that the tech team is not up to the task of delivering the project.
3. Announce that the project will probably, but not certainly, be shut down. -
I've mistyped "tests" as "testes" so many times now I'm beginning to think it doesn't really matter.
Investigate failing testes.
Added testes for xyz feature.
Everyone understands what I mean. It's all good.4 -
So as expected, due to the rush of the submission on Friday, the app was rejected.
I'm fairly certain they never got past the first screen or two.
We have some things to fix, and some things to tackle properly now, which is quite nice, however the current main issue numero uno is that an Apple developer account can take up to 10 days to be created, and Go Live is next Monday.
I wonder who will get the blame for not taking on the "Investigate the iTunes release process" ticket that was in Jira, assigned to someone for ~4 months. -
(When L1 support fails to investigate before routing to L2)
User: I couldn’t able to view my files saved in network drive
Me: we have checked files on sever side its visible and u have access as well
User: my screen has broken so I couldn’t able to see
Rest is history1 -
A large pool of application instances' is writing logs to the same physical file. No way to distinguish which instance wrote which line.
Welcome to hell
We're being asked questions. We're replying that we cannot help unless logging is fixed. Noone's bothering to fix this mess and instead returns tickets with requests to investigate more.
F.U.N
/s3 -
Weblogic Server won't start, broken build was auto-deployed. How does a broken build even get deployed? 🙄
Told "till the server is fixed work on your next-release bugs". Sure, can investigate, maybe even code fixes, but with a broken dev environment how do we test anything?
" Hmm..Oh yeah, right" 🤔 -
[Long rant about one of the worst school project I got]
I just saw that post about Lego coding, and it reminds me a project we had to do for high school.
The project was about a robot that will do volleyball services. My group decided with me that I should go on programming the robot since it was my idea to pick that subject to work on. So I started to investigate the robot and the programming software.
This was one of the worst thing si could get. For some reason I didn't find any tutorial about how to program the robot, so I had to test it out. When you don't want to break the robot, that's clearly not the best thing to do.
So what about the teachers? We had 3. Two told me they don't know stuff about this, and one MIGHT know stuff but not how to use the software. Great...
Plus I add that we were asking a teacher some help, being desperate, and literally, he came, made a joke about "how long he didn't play with Lego toys", laughed at his own joke and left. Thank you, that was really helpful while I was worrying about the project that will help us getting my degree, clearly helped us.
So I managed to do something really basic, where you input the direction for the aim with the arrows on the robot, and central button was for shooting. Basically basic stuff. Even not optimal because the robot hit its own screen but a weaker throw wasn't working, so we had to put some protection over the screen and the arm.
Another group of another class were working on the same subject, so we visited them one day to see their stuff.
They made a joystick that was fully operational, with analogic direction input, precise aiming and shooting stuff. The best way to make myself doubt about my stuff.
So we did the presentation and for whatever reason, the other class (not only the other group) got bad reviews of their projects, made by my famous joking teacher, and we got a good review. Didn't understand, but whatever.
So did I learn stuff?
Absolutely not. It was one of the worst pain in the ass to learn the programming syntax and stuff, and when I graduated, I forgot anything concerning programming stuff, my engineering school did all the stuff.
This is some experience you don't forget, the one that don't make yourself grow at all but the effort is real.1 -
Ohhh 😲😲😲 are you kidding me ? xxx TB !!!!!! 😅😅😅🤤🤤
IT must be a bug or is it really my usage !!? 🤔🤔🤔🤔 let me investigate 😂😂😂😂😂2 -
This is the story of probably the least secure CMS ever, at least for the size of it's consumer base. I ran into this many years ago, before I knew anything about how websites work, and the CMS doesn't exist anymore, so I can't really investigate why everything behaved so strangely, but it was strange.
This CMS was a kind of blog platform, except only specially authorised users could view it. It also included hosting. I was helping my friend set it up, and it basically involved sending everybody who was authorized a email with a link to create an account.
The first thing my friend got complaints about was the strange password system. The website had two password boxes, with a limit of (I think) 5 characters each. So when creating a account we recomended people simply insert the first 5 characters in the first box, and the rest in the second. I can not really think of a good explanation for this system, except maybe a shitty way to make sure password are at least 5 characters? Anyway, since this website was insecure the password was emailed to you after the account was created. This is not yet the WTF part.
The CMS forced sidebar with navigation, it also showed the currently logged in users. Except for being unreadable due to a colorful background image, there where many strange behaviors. The sidebar would generally stay even when navigating to external websites. Some internal links would open a second identical sidebar right next to the third. Now, I think that the issue was the main content was in an iframe with the sidebar outside it, but I didn't know about iframe's back then.
So far, we had mostly tested on my friends computer, which was logged in as the blog administrator. At some point, we tried testing with a different account. However, the behavior of sidebars was even stranger now. Now internal links that had previously opened a second, identical sidebar opened a sidebar slightly different from the first: One where the administrator was logged in.
We expirimented somewhat, and found that by clicking links in the second sidebar, we could, with only the login of a random user, change and edit all the settings of the site. Further investigation revealed these urls had a ending like ?user=administrator2J8KZV98YT where administrator was the my friends username. We weren't sure of the exact meaning of the random digits at the end, maybe a hash of the password?
Despite my advice, my friend decided to keep using this CMS. There was also a proper way to do internal links instead of copying the address bar, and he put a warning up not to copy links to on the homepage. Only when the CMS shut down did he finally switch to a system where formatting a link wrong could give anybody admin access. -
This is more of an advice seeking rant. I've recently been promoted to Team Leader of my team but mostly because of circumstances. The previous team leader left for a start-up and I've been somehow the acting Scrum Master of the team for the past months (although our company sucks at Scrum generally speaking) and also having the most time in the company. However I'm still the youngest I'm my team so managing the actual team feels a bit weird and also I do not consider myself experienced enough to be a Technical lead but we don't have a different position for that.
Below actions happen in the course of 2-3 months.
With all the things above considered I find myself in a dire situation, a couple of months ago there were several Blocker bugs opened from the Clients side / production env related to one feature, however after spending about a month or so on trying to investigate the issues we've come to the conclusion that it needs to be refactorised as it's way too bad and it can't be solved (as a side note this issue has also been raised by a former dev who left the company). Although it was not part of the initial upcoming version release it was "forcefully" introduced in the plan and we took out of the scope other things but was still flagged as a potential risk. But wait..there's more, this feature was part of a Java microservice (the whole microservice basically) and our team is mostly made of JS, just one guy who actually works as a Java dev (I've only done one Java course during uni but never felt attracted to it). I've not been involved in the initial planning of this EPIC, my former TL was an the Java guy. Now during this the company decides that me and my TL were needed for a side project, so both of us got "pulled out" of the team and move there but we've also had to "manage" the team at the same time. In the end it's decided that since my TL will leave and I will take leadership of the team, I get "released" from the side project to manage the team. I'm left with about 3 weeks to slam dunk the feature.. but, I'm not a great leader for my team nor do I have the knowledge to help me teammate into fixing this Java MS, I do go about the normal schedule about asking him in the daily what is he working on and if he needs any help, but I don't really get into much details as I'm neither too much in sync with the feature nor with the technical part of Java. And here we are now in the last week, I've had several calls with PSO from the clients trying to push me into giving them a deadline on when will it be fixed that it's very important for the client to get this working in the next release and so on, however I do not hold an answer to that. I've been trying to explain to them that this was flagged as a risk and I can't guarantee them anything but that didn't seem to make them any happier. On the other side I feel like this team member has been slacking it a lot, his work this week would barely sum up a couple of hours from my point of view as I've asked him to push the branch he's been working on and checked his code changes. I'm a bit anxious to confront him however as I feel I haven't been on top of his situation either, not saying I was uninvolved but I definetly could have been a better manager for him and go into more details about his daily work and so on.
All in all there has been mistakes on all levels(maybe not on PSO as they can't really be held accountable for R&D inability to deliver stuff, but they should be a little more understandable at the very least) and it got us into a shitty situation which stresses me out and makes me feel like I've started my new position with a wrong step.
I'm just wondering if anyone has been in similar situations and has any tips or words of wisdom to share. Or how do you guys feel about the whole situation, am I just over stressing it? Did I get a good analysis, was there anything I could have done better? I'm open for any kind of feedback.2 -
Do you guys still see the relevance of using code freezing instead of just properly managing versions, repositories and branches in a cyclical manner, given how advanced software practices and tools are supposed to be?
To give some context, the company I work for uses the complete trash project management practice of asking teams to work on a sprint basis, but there is still a quarterly milestone and code freeze to commit to and it's where shit hits the fan.
Development teams rush features at the end of the quarter because they had to commit at the very least to a 6 months in advance planning (lol?) and turns out, not being able to design and investigate properly a feature combined with inflexible timelines has high chances to fail. So in the end, features are half-assed and QA has barely any time to test it out thoroughly. Anyways, by the time QA raises some concerns about a few major bugs, it's already code freeze time. But it's cool, we will just include these bug fixes and some new features in the following patches. Some real good symver, mate!
Of course, it sure does not help that teams stopped using submodules because git is too hard apparently, so we are stuck with +10Gb piece of trash monolithic repository and it's hell to manage, especially when fuckfaces merges untested code on the main branches. I can't blame Devops for ragequitting if they do.
To me, it's just some management bullshit and the whole process, IMO, belongs to fucking trash along with a few project managers... but I could always be wrong given my limited insight.
Anyways, I just wanted to discuss this subject because so far I cannot see code freezing being anything else than an outdated waterfall practice to appease investors and high management on timelines.8 -
Not really random, still Dev related but still!
I'm working on a few large games at the moment, I have a habit of trying to build massive world's that feel lived in and organic, obviously I never finish them because I obsessed over the tiniest things.
So to try and help I thought of an idea, a detective game where you investigate 1 single murder and have one house you can look through, but you have to piece together what happened organically from a clue and false path filled household.
Just want some other opinions on it and whether it sounds alright, or if you have something to add to it? ¯\_(ツ)_/¯6 -
We noticed that in our landing directory we were receiving duplicate files.
I asked the source to investigate.
He told me that the issue was not at his end. He asked me to mark the issue has been resolved from his end. I refused.
We get on a call to debug the issue. After 30mins he is extremely frustrated. As he was sharing his screen, he runs the command `ls -ltr | uniq -cd` on his server which sends the files and then screams at me "Where are the duplicates? Show me. Check the output. There are no duplicates.".
I first muted the call. Had a good laugh. Made him repeat it to show my team mates. They had a good laugh too.
I then asked him to call it a day. And once you cool down, think about what you just showed me. -
When asking for a raise, how do you guys know, how much to ask for / how much are you worth?
I've been working as a programmer for the last year and a half, and it's my first real gig in the sector. Without getting into much details, I've currently the opportunity to ask for a raise, but I don't know what would be an appropriate amount or how to research or calculate it.
Any input would be very much appreciated.3 -
opinion:
If something goes wrong is the 1st response to investigate
Or
Jump on IM and ask the person who last committed?
I would be in the opinion to have a look yourself and try identify the problem before fucking ranting at the last person who touched the code,
Reasons, Maybe that last person is busy and doesnt want to context switch back for a simple problem that would take less than 5 mins fucking investigation time, 1st thing in the morning too doesnt help!1 -
For some unfathomable fucking reason, rust-analyzer decided to dump formatter crash reports into the worktree alongside the file that failed to format. How do I even begin to investigate this?3
-
PM: there’s a bug could you investigate and fix this?
Coworker: *investigates*
CW: is this correct? *shows a totally different solution to what he was asked to* *naming a variable “fn”*
Me: but that’s not what you’re asked to do. You know it’s possible to do that right (the supposedly solution)
Cw: but that would have longer code
Me: (what?) 🙃
Wtf do you mean longer code?
Cw: shorter code > spec
Me: 🤦♀️
Cw: shorter code > readability
Me: 🤦♀️1 -
Not a rant but I love the fact we can say there is a run away unicorn in staff slack and no one is bats an eye or it looks like there is a lot of orphaned processes lets investigate and murder all the orphanes2
-
why are Linux graphical git clients so crap? (as compared to TortoiseHg)
like GitKraken is the only OK one, but it lacks soo many features its nearly useless (bisect anyone?) + you need a commercial license
GitEye is the second non-shit one, but it regurarly stops working + its non-free
and it seems most git GUI clients force the name of the repo to be their parent dir. my parent dir for all web projects is www, so in both apps I have a long list of projects named www, unless I expand the projects sidebar to cover half of the screen to see the very very end of the path that petrays the actual project name in GitEye. In GitKraken I have to investigate the commit history to figure out if I have the right GitKraken with the right project open... talk about UX :D
so do most "git experts" just use git commit, git push and git pull on the command line and thats their whole world and the reason why they prefer git to mercurial (for all the many features they never use)?10 -
!rant
How should I put this... I have REALLY enjoyed help desk job more than anything thus far.
I've seen people posting about how dumb clients may be, and I know there's also those cases, but ultimately those are usually just good inspiration to comedy.
So here's the background: I was working in growing website development company (marketing called it digi-office for some reason). The clients were firms ranging from local bakeries to international suppliers.
The intriguing thing with working in help desk was usually smaller tasks and direct customer contact through e-mail. I got feedback (which always important) and the rush of good feeling at the end of every task; faster and more frequent than working on a year project. But the cherry on the cake is that I got to investigate problems within each websites' and the CMS's code base, fix them or point out bigger flaws in systems and blame others from them. 😂
How your help desk experience differ? Or do you also recognize the good side?1 -
GitHub, your Copilot sucks, and so does Dependabot!
Dependabot opened 3 pull requests;
merging the first one caused conflicts in package.json and package-lock.json that must be resolved;
while trying to investigate further, the second pull request got closed as it suddenly seemed obsolete.
Dependabot: "Looks like these dependencies are no longer updatable, so this is no longer needed."
This kind of service generates so much noise and irrelevant alerts, it comes out of nowhere and there is no way to get rid of those bots once they invaded a repository. And they are so useless. A simple `npm outdated && npm upgrade` would have done better in 99% of the cases.
GitHub, your Copilot sucks, and so does Dependabot!1 -
I would batter this nigga if I could
My database migrations are failing after setting a 3 character max length on an integer field with default value 200. I attempt to investigate why and after numerous back and forth, this dude reveals 200 is in fact greater than 9986 -
How do you diagnose speed issues?
I've been lumped with looking after a legacy app.
It connects to our ERP system to handle raising invoices etc. And in June is developed slowness, which we sort of fixed by making one section load later (the SQL was a horrible view in a view in a view).
We then upgraded our ERP software, and the SQL issues are resolved (had to upgrade SQL server etc at the same time) and now the legacy app is running really slowly.
I know that it is when it loops through a data set to set column values etc.
A particular project has 1900 time transactions and takes upto 2 minutes to load.
This part of the program hasn't been changed in over a year, and has only started running slowly since the upgrade.
Are there any good way I can investigate and diagnose exactly why it has suddenly started running slowly?8 -
Im tasked to investigate a stored proc that is slow at certain times ( 20-30mins ) and fast at other times ( 10-15 secs ).
After following suggestions i found out that adding NOLOCK hint on all the select queries makes the execution time fast ( 10-20 secs) .
Although i know that adding NOLOCK means a dirty read of possible incorrect data, does it justify the performance boost?
Speed or data correctness?4 -
So I'm assigned once again to fix a new someone else created and that seems to be the case whenever there's an issue...
Boss just assigns it to whoever is most likely to be able to investigate it... which is basically me. Other than the little time I can use to develop stuff, I'm usually cleaning up other people's messes.
And these other people are to busy working on new crap to properly explain how their existing code/processes/changes works.
And well the fact that anything breaks in production (that's not due to upstream one off issues) whoever does not think he needs to take responsibility for it.
So everyone else and especially me has to spend time understanding the shit they wrote and fixing it for them.
How do I tell my boss this nicely that we need clearly definitely ownership and whenever a component blows up in prod, the guy that wrote the code fixes it no matter what? Thereby incentivizing him to not write shit code in the first place and be more proactive in making sure it doesn't in the first place since he knows otherwise he's doing overtime to fix it?
Is it just me or is there really no such thing as a dev job where something doesn't blow up due to poorly tested and designed code every other day?3 -
devRanters!
Do any of you find that you can type the solution faster than GitHub Copilot recommends?
That's how you know you're senior 😏
Also, on a serious note, does it only support JavaScript / TypeScript? Didn't really take time to investigate.
I thought there was also a feature you could tell it what to code and it would try to write a solution. Haven't really seen how to do that yet.7 -
Production issue happens, to get into server to investigate - first write a brief description of the issue, get management approval, then find 2 administrators who each holds half the password to the server, web conference them to key in password on a remote utility, finally, log in to troubleshoot.
It is a problem to troubleshoot a problem.1 -
I don't, I just started doing it out of spite. The first pc i ever had for myself was a windows vista hp laptop. It ran like absolute shit. Yes I had used many computers before that, but this was the first one i got for myself and i was honestly sad I could not get it with xp.
Because it ran like shit, I decided to investigate as to why, i wanted to understand the people that did the system before I was to blame and talk shit about them.
Down the rabbit hole. Thank you vista, had you not been shit on MY computer I would have never gotten here. Also my mom always wanted me to be an engineer so there's that.
❤️1 -
Together with colleagues from University of Zurich I am conducting a survey about skills for code review! With this survey, we aim to investigate skills that reviewers need to perform an efficient code review. Our main goal is to improve developers' code review practices. Therefore, we are looking for developers with experience as code reviewers. This questionnaire takes 15-20 minutes and consists of 21 questions.
https://uzh.ch/zi/cl/...
Thank you for your help!4 -
Best: Built an awesome web app and received much.
Worst: For some reason Christmas brings out the worst in boss. Possibly Krampus in disguise. Will investigate further. -
Completely fed up today, trying to investigate a memory leak using google chromes profiling tools, first of all all the "documentation" is well out of date so you have to pretty much guess your way through it.
Anyway i start to investigate and it looks like the JS Heap increases in size only after a garbage collection, surely this is the wrong way round or am i just being stupid2 -
Hey ranters who once shared my inability to just announce when I don't understand something, how did you get over it and just embrace pointing out that you're confused at this point in time?
I tend to just brush stuff off and figure I'll have time to properly investigate and figure it out later, which usually works, but it does mean I will keep quiet if something isn't entirely clear.
I think this is bad and I'd to stop doing it. At the same time, it doesn't seem worth interrupting a discussion / explaining to ask what something is when I can look it up now or later and fill in the mental gap. I guess there's a balance to be found. Any tips? Any slaps to the face?8 -
Our pipeline had been running for 45 minutes, I went to investigate
Our mutation testing framework had identified 90 potential mutants and started running through our 342 tests for every single mutant, so 90 * 342 tests
And I had been complaining about the amount of pipeline agents being too low and pipelines blocking up...5 -
Been making minor refactors to code base. Ran into something that resembles and behaves like a brainfart. Accepts arguments, uses them to query DB then completely disregards result and builds own result yielding dubious output.
Dumb as I am, went to investigate the story behind it. Maybe some weird business rules involved.
Git gave commit. 100+ files changed. Nice one.
Went to original story and there it was, clearly stated, like a true moronic decision: "Squash all feature commits to a single commit". No specs, no description, no explanation... Nothing.
Well... FUCK YOU TO!2 -
When you get paged by your company to help investigate and fix critical issue in production and don't get time to work on the hackathon.
-
Follow up sorta...
So I got pulled into a support issue on a day off. Some system was facing timeouts on our servers so had to investigate.
Over the weekend as part of the release, I released the ELK stack I built and today I used that to help.
Pretty much immediately pinpointed which machine was hanging though still had to investigate and confirm so split between KQL and checking the server logs.
One thing I've always griped about is how no one created schema docs for it mongo collections so can't easily figure out what they do or your to get the document needed.
Well guess it's my turn.... Because only I know the schema :) -
When you want to investigate what a function does, you read the name and say "ok, seems reasonable what it should be doing" ... and then you encounter an adventure of if-else's, nested if's and else's, some promises here and there (with more nested if's and else's) and also a bunch of dispatches sprinkled all over the place. You want to refactor it into tinier functions but can't because you don't know what happens where ... help ... 🙄😩
-
DIGITAL TECH GUARD RECOVERY: ADVANCED BITCOIN RECOVERY SIMPLIFIED
A Testament to Excellence: My Experience with Digital Tech Guard Recovery in Recovering 78,000 ETH
When my company suffered a devastating loss of 78,000 ETH due to a complex hacking incident, I was left feeling utterly helpless and unsure of where to turn. The sheer magnitude of the theft was staggering, and the prospect of recovering such a colossal sum seemed all but impossible. That was, until I discovered Digital Tech Guard Recovery - a team of elite cybersecurity experts whose unwavering dedication and unparalleled expertise would ultimately prove to be the saving grace in this dire situation. From the moment I reached out, the Digital Tech Guard Recovery team sprang into action, applying their vast knowledge of blockchain technology, digital forensics, and hacking countermeasures to meticulously investigate the incident. Their methodical approach left no stone unturned, as they painstakingly traced the flow of the stolen funds, identified the perpetrators, and devised a strategic plan to retrieve the lost ETH. What could have been a hopeless endeavor was transformed into a triumph of perseverance, with the Digital Tech Guard team employing cutting-edge tools and techniques to outmaneuver the skilled hackers at every turn. The level of professionalism and attention to detail exhibited by this remarkable team was truly awe-inspiring. They kept me informed at every step of the recovery process, providing regular updates and clear explanations of the complex technical procedures involved. Their unwavering commitment and tireless efforts ultimately paid off, as they were able to successfully recover the entirety of the 78,000 ETH, a feat that I had previously deemed impossible. The relief and gratitude I felt in that moment was indescribable, a testament to the sheer brilliance and unparalleled expertise of the Digital Tech Guard Recovery team. Do not hesitate to email: WhatsApp: +1 (443) 859 - 2886 Email @ digital tech guard . com Telegram: digital tech guard recovery . com website link :: https : // digital tech guard . com8 -
This is a repost of an original rant posted on a request for "Community Feedback" from Atlassian. You know, Atlassian? Those beloved people behind such products as :
• Thing I Love™
• Other Thing You Used One Time™
• Platform Often Mentioned in Suicide Notes, Probably™*
Now this rant was written in early 2022 while I was working in an Azure Cloud Engineer role that transformed into me being the company's main Sysadmin/Project Manager/Hiring Manager/Network Admin/Graphic Designer.
While trying to simultaneously put out over 9000 fires with one hand, and jangling keys in the face of the Owner/Arsonist with the other, I was also desperately implementing Jira Service Desk. Normally this wouldn't have been as much of a priority as it was, but the software our support team was using had gone past 15 years old, then past extended support, then the lone developer died, then it didn't work on Windows 10, then only functioned thanks to a dev cohort long past creating a keygen....which was now broken. So we needed a solution *now*.
The previous solution was shit of a different tier. The sight of it would make a walking talking anthropomorphised sentient puddle of dogshit (who both eats and produces further dookie derivatives) blush with embarrassment. The CD-ROM/Cereal Box this software came in probably listed features like "Stores Your Customer's First AND (or) Last Name!" or "Windows ME Downgrade Disk Included!" and "NEW: Less(-ish) Genocide(s)"!
Despite this, our brain/fearless leader decided this would be a great time to have me test, implement, deploy, and train everyone up on a new solution that would suck your toes, sound your shaft, and that he hadn't reminded me that I was a lazy sack enough lately.
One day, during preliminary user testing I received an email letting me know that the support team was having issues with a Customer's profile on our new support desk. Thanks to our Owner/Firestarter/Real World Micheal Scott being deep in his latest project (fixing our "All 5 devs quit in the last 12 months and I can't seem to hire any new ones" issue (by buying a ping pong table)), I had a bit of fortuitous time on my hands to investigate this issue. I had spent many hours of overtime working on this project, writing custom integrations and automations, so what I found out was crushing.
Below is the (digitally) physical manifestation of my rage after realising I would have to create / find / deal with a whole new method for support to manage customer contacts.
I'm linking to the original forum thread because you kind of need to have the pictures embedded in said reply to get really inhale the "Jira-Rant" ambiance. The part where I use several consecutive words as anchor links to tickets with other people screaming into the void gets a bit sweet n' savoury too - having those hyperlinks does improve the je ne say what of it all.
bit.ly/JIRANT (Case Sensitive)
--------------------------
There is some good news at the end of this brown n' squirty rainbow though!
Nice try silly little Jira button, you can't ruin *my* 2022!
• I was able to forget all about Jira a month later when I received a surprise vacation home! (To be there while my Mom passed away).
• Eventually work stress did catch up to me - but my boss thoughtfully gave me a nice long vacation! (By assaulting *while* firing me (for emailing in a vacation request while he was a having a bad (see:normal) day))5 -
Package build fails on Jenkins. I try to investigate locally. Builds fine locally. Managed to convince admin to let me ssh there to debug there in the exactly same environment. Builds there without any issues when triggered manually. I'm missing some little piece of environment from jenkins job or there could be some race somewhere. I really hate those random errors, we really need to get sane build system so I wouldn't need to debug those irreproducible build issues. Aaarrrghh!!!
-
Something on my server suddenly ate away all the hdd space. Like, 300gb in a few days. Nice. Now I have to investigate that instead of doing my work..4
-
Just wondering any of you has seen automated tests in a CI machine? Theyre not reliable enough to be running all the time because many times its just an empty error amd its tedious to investigate and wastes lots of time2
-
The moment, when your untouched pipelines don't work. You investigate due to capacity. No Standard_D2 machines. Ok take D3, same error. D4?!?!?! Same Error. Some strange SKU... all fine.
This is the cloud with corona.3 -
The CLI is my $HOME, the place where I feel most comfortable. Yes, I despise bash syntax and if it's used for actual production code (with #LOC>10³) - like we do. The pipes, grep, awk - it's usually a breeze.
BUT yesterday my illusion of the superiority of my CLI just got shattered badly: There was some zip with a core file I wanted to investigate, but gunzip and zcat just were unable to decompress it, while with a simple double click I could open the freaking folder. -
Online investment schemes have become increasingly popular, promising high returns with minimal effort. However, it is crucial to be aware of the significant risks associated with these schemes. Many online investment platforms, particularly those in the cryptocurrency space, operate with limited regulation and oversight, which makes them fertile ground for scams and fraudulent activities. Recent personal experiences have underscored these risks, highlighting the importance of vigilance and due diligence when engaging in online investments. My unfortunate journey began with a company called "CryptoTX," which presented itself as a legitimate crypt0currency trading platform. Initially, I was drawn in by the promise of lucrative returns and was reassured by my assigned account manager, Sarah Malone. She portrayed CryptoTX as a reputable firm with a track record of success. During our interactions, I mentioned my previous experience with another online trading platform, "Click’s Dealer." I had encountered significant issues with Click’s Dealer, and Sarah Malone assured me that it was a scam, further reinforcing my trust in CryptoTX. I started with an initial investment of $1,000, which, at first, seemed promising. I saw some trades yielding returns and even experienced what appeared to be substantial profits. Encouraged by these early successes, I decided to invest more, eventually committing a total of $180,000. However, this initial optimism soon turned into a nightmare. The tipping point came when I began to notice inconsistencies in the information provided by Sarah Malone. Each time I was contacted, I was urged to invest more money to cover "bad trades" or to capitalize on supposed new opportunities. Despite my growing concerns, I continued to follow their advice, largely due to the pressure exerted by the account manager and the desire to recover my previous losses. It became clear that CryptoTX promises were unfounded. My investments, which had initially shown some potential for profit, quickly dwindled. I found myself losing all of my hard-earned savings, amounting to a staggering $180,000. This sum represented my life savings, intended to secure my financial future and support me in retirement. The financial loss was devastating, not only due to the amount but also because of the emotional and psychological toll it took on me. In the aftermath of this experience, I realized that the terms and conditions I had agreed to likely included clauses that absolve CryptoTX of responsibility for investment losses. Many online investment schemes use such disclaimers to shield themselves from liability, arguing that investment inherently involves risk and that they cannot guarantee returns. This legal shield makes it challenging to hold them accountable, despite their misleading practices. Determined to recover my lost funds, I explored various avenues for redress. During my search, I discovered GRAYWARE TECH SERVICES, a consultancy and recovery firm that specializes in helping victims of online investment fraud. The firm had received positive reviews for its success in assisting individuals who had been defrauded by unregulated brokers. Deciding to give them a chance, I contacted GRAYWARE TECH SERVICES. Engaging with GRAYWARE TECH SERVICES turned out to be one of the best decisions I made. Their team provided expert guidance and support, working tirelessly to investigate my case and facilitate the recovery of my funds. Through their dedicated efforts, I was able to retrieve a significant portion of my losses, which was a tremendous relief. This experience has underscored the importance of exercising caution when dealing with online investment schemes. Many of these platforms operate with minimal regulation and oversight, making them ripe for exploitation. It is crucial to conduct thorough research before committing funds, be wary of platforms that promise guaranteed returns, and understand the terms and conditions associated with any investment. while the online investment landscape can offer lucrative opportunities, it is fraught with risks and potential pitfalls. Scammers and fraudulent schemes are prevalent, and it is essential to be proactive in protecting oneself from such threats. Educate yourself about common warning signs of fraud, seek professional advice if needed, and remain vigilant to safeguard your financial well-being.
GRAYWARE TECH SERVICES CONTACT INFO: What's App: +447421348767
Best Regards,
Ben Agnes.