Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
Get a devDuck
Rubber duck debugging has never been so cute! Get your favorite coding language devDuckBuy Now
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.23
I want a name and a gun.
I've had my laptop for over 3 years now. Never, in these 3 years, have I installed Microsoft Teams on it.
I just turned my laptop on, and I now have the Ms Teams icon on my desktop, and Teams has started itself and is asking me to log in.
Control panel says it has been installed today.
I want somebody's head. And then smash it into a pulp with my bare hands and shove that up their ass.52
The first batch of trainees calls me "Senpai" and it was passed down to "generations" of trainees, now three batches. Some of them eventually became team leaders and mentors themselves. Every time someone new arrives, they introduce me as that. Even years after I stopped working with them and joined a different company, they still call me that. It's almost like I don't have a name or calling me by name is disrespectful. Maybe they've just forgotten about my actual name after some time.10
My favorite kind of interview question/challenge is anything that is highly practical for the job. At the current company I work, the coding test/interview challenge was to design and implement an API very similar to the core functionality of the actual product. It’s fair, tests for skills relevant to the job, and is much better than irrelevant silly brain teasers and cs questions, I feel.
In terms of specific questions, one of my favorites is one that one of my colleagues suggested I ask to potential candidates: describe what you think your biggest failed project/task was in your engineering career, and what happened/what you learned. I think it’s a good reflective question that can tell a lot about someone.1
- just do your job. Close this ticket already and go to the next one
- It's just a 1 minute job.. Don't build scripts for things that simple!
- Look, we don't have time to spare for coffee breaks. Stop wasting your time on scripting!
- netikras, the IST shift fucked things up again. I need you to do your magic and clear those alerts
- netikras, there are 20 tickets waiting to be investigated. Either your coleagues spend 2 hours on them or you do your magic in 2 minutes, as always..
- netikras, please share your scripts with your team
- netikras, I have nominated you for the Star Award for your script
- netikras, here's the star award and the financial prize. Those are nice swarovskies you've picked for your wife! Good choice!
- Since our team has lots of spare time now, I urge you all to attend X, Y and Z trainings. Trainings and Certification expenses are covered
A very similar scenario has just happened in 2 last workplaces of mine. In both cases I was the one to build the script despite my management's requests to stop wasting time and resources on them.
When I see what is wrong and take some actions to right those wrongs, when superiors build roadblocks for me claiming it's not worth it and in the end I still build my solutions and become the most efficient person/team in the whole department -- that right there is what boosts my ego to the sky and above!! It proves I am actually on the right track. It proves that I in fact have a better understanding than those who should have it.
It just makes me tick!
Looking for another adventure like that :) With more power to change things this time6
Had a job interview recently that went well besides one little disagreement... and it has made me question my sanity. Tell me if I'm wrong.
They asked the difference between a GET and POST request.
Wow, that's an easy one, they're giving me a break, I thought to myself.
I said "GET is used to retrieve data from a server, whereas POST is used to add data to a server, via it's body, which a GET lacks" or something like that.
They were like "ya mostly, but GET can be used to enter data into the server too. We were just looking for the body thing."
And I'm like.... yeah, you could do that, but that's not what it's meant for.
They mention stuff about query parameters and I hold steady that GET and POST are different because GET has a specific purpose. Otherwise, we wouldn't need the "method" part of an HTTP request at all. We could just either include a body or not include a body.
I ended it with "Well, POST implies that you are adding data to a server, and GET implies you are querying data from the server. When I'm reading documentation, that's how I quickly determine what an endpoint does."
My confidence was a little shaken at this point. Crazy what two people with (I assume at least) 10+ years of experience telling you you're wrong will do to your confidence.20
-Let's start making the game!
-We should focus on performance optimization!
-But we don't have anything to optimize yet..
1 month later
-OK you were right, we can't focus on performance now. We need to start making this game!
-So we're in pre-production now, let's do some R&D!
-Awesome, I wanted to start designing our workflow for adding new content, and maybe also loca..
-NO! That's unimportant! We must do R&D!
-OK what should we Arr-and-Dee?
A new linear time O(N) sorting algorithm [Keep it secret 🔒]
* Compare two adjacent elements one by one starting from the first element
* If there are out of order, delete the second element and continue with step 1
* If in order, go to the next two elements
* Once done, act like the numbers you deleted never existed
Works all the time.
Not yet published. Thinking of a good name for it.27
Remember that company that first brought me to devRant last 2018? The one I ranted about almost every day like it's the only reason I exist? They lost their client, it's the only project they have, and it's a pretty big one based in the US. Now they're in big trouble and the enemies they made from being a big bundle of cunts launched their own start-up.
A few days ago, a previous colleague texted me asking if we have available positions in the company I'm currently working for. He said "the client suddenly vanished". I asked, "What do you mean? They just vanished? Aren't there other projects?" Of course, he didn't answer and instead asked where I'm working now.
The last time I talked to him in person, he was saying that they will be sent abroad for that project and that the company has new projects lined up. I rolled my eyes internally but just said, "Okay". That was when I visited the office for the last time to get my clearance which I didn't get and didn't bother getting anymore otherwise I'll be in jail for arson because god damn it, those motherfuckers really make my blood boil. During that time, more than half of their employees were gone but they were so brainwashed, they still believed it had a future.
The first thing I did was open LinkedIn and add the two developers still in that hellhole. I trained some people there and those two had the least ego and had the best performance - resourceful and not as lifeless as a fucking placenta coming out of their mothers' vaginas. Now that I think about it, placentas have more nutrients and use than the vacuum-headed cunts left in that company.
In less than five minutes, they accepted, that's how you know the situation really is dire in there. I'm friends with one of the project managers (who hate the PM from the other company) so I offered to refer them and they went with it. The situation is interesting because PM1 (friend) before she became a project manager actually planned to move to the hellhole company with me, this was years before we knew it was hell where she was insulted by PM2 (PM of the hellhole) and some bitch cunts were very rude to her during the interview. Now those same cunts can't find a job and the roles were reversed. If they dare to apply for PM1's company, I'm gonna need all the popcorn in the world.
Why can't they find a job? A combination of two traits - incompetence and arrogance. Actually, it's more than that. They bully almost every employee that joins the company. Their motto is "We don't need experienced hires" and they treat the experienced ones like shit so 90% of the employees are junior developers egos bigger than Mandingo's cock. It matters more that you can drink and gossip with them than you can do your job. People working overtime all the time are praised instead of looked into because they're inefficient. People who leave on time are judged. People's social media profiles are stalked and gossiped about. Even the company owner and manager participates in personal attacks towards their own employees and humiliating somebody (inviting audiences) while they make someone cry is their sick display of authority and fun.
System admins don't know how to fucking chmod or even grep. I had several months where my job was to sit there and answer questions 'cause I can't do a fucking thing without being distracted. Then word would spread that I'm doing nothing. One time, I was working on a critical issue and this guy asked if I could help him. I said I can't right now. He said he will tell the client that he can't finish the task because I'm not very helpful. I said, "Go ahead, the only thing that would reflect is your lack of skill." Shit like that and frequent attacks had me drinking coke and vodka in the office. Eventually, I got depressed and the HR didn't leave me alone. They kept pressuring me to present a medical certificate on when I can come back. My psychiatrist refused because "depression doesn't work like that". I found out after I submitted my resignation that they planned to give me an ultimatum that if I can't provide a certificate within 30 days, they will fire me. Oh well, thank you.
It was fucking North Korea, I said it before and I'll say it now. They have no clue what's really outside their own bubble. They stayed in that shit hole thinking they're a bunch of Steve Jobs or that they own the world because their peers (who are retarded themselves) praise them. I looked forward to this day and it finally happened. They are forced to go outside and now they can all see what they're really worth - nothing.
Good luck finding a job, you fuckers. This year's gonna be great. Ah, the sweet smell of other people's misery in the evening. :)8
Really fucking sick of people taking my coffee mugs on the drying rack and taking them back to their desk. It's not yours. It doesn't have our company logo or your company logo. It's obviously not yours so don't fucking touch it.
This is the second coffee mug of mine to go missing in 16 months. You work at a tech company buy your own fucking mug or open your mouth wide and catch your hot bean water you fuck.13
To whoever in the history of this godforsaken app I’m tasked with has commingled PHP with ColdFusion, I have a message for you:
Fuck you...fuck your momma, fuck yo daddy, fuck yo computer, fuck yo keyboard, fuck yo mouse, fuck the clothes on your back, fuck monitors that displayed this shit, fuck your fingers in particular, fuck yo brain, fuck whoever dropped yo on your head as an infant, fuck the car you drove to work in, fuck the servers running this shit, fuck anybody who was involved with your education, and if I see you on the street ima slap the shit out of you.6
Is it just me, or has @LastPass hired too many interns lately?
First: you can't login for hours before they actually go and admit they fucked up.
Now: the chrome extension has been deleted from the web store.
I'm a patient guy, but what on the unholy fuck is going on.
The LastPass extension in the Chrome Web Store was accidentally removed by us and we are working with the Google team to restore it ASAP. Thank you for your understanding and patience in the meantime.12
About browsers and whole SSL CERT thing...
Most likely everyone here noticed, that https site with broken certificate will throw these big red warnings, in your face and there is so much wording like "ITS NOT SECUREEEE" or "ITS HACKEDDD" almost like it was written by passionate fanatic.
But when you are on plaintext http browsers reaction is like ¯\_(ツ)_/¯
Even if you have plaintext with password, it will for example in chromium put small little red thingy that almost no one notices.
I believe that broken cert with some error like invalid date is MORE secure than plaintext password, yet still there is this hypocracy with browsers...
I dont say that broken SSL cert is good, or something, Im just pointing out contrast of "broken" https vs plain http.... One looks for casual Joe like end of the world is coming and second is bearly noticable. Da fuck?
I disagree with this approach18
Am I the only one?
I want to know EVERY FUCKN SKILL A DEV CAN POSSIBLYHAVE, but I want to know it all NOW..
googling 30 times for tutorials and posts about a topic,
opening 30 tabs,
then spending around 30 seconds on each one ...
Trying 1-2 tutorials,
not understanding why I dont get this shit...
this is stupid
loosing interest in 3..2..1...
Aaand let's try and learn this new skill..
Recently for a project I needed to read/write ID3 tags from MP3 files. And after a long search, I found this bloated, monolithic but quite stable library, "getID3".
So, I was looking through the code-base and I found this. This guy literally storing the key value based data embedded as comments within the class file. Then wrote a method to parse the data and even used caching to ensure maximum speed! And such usage is repeated all over the code-base.
So, this is what people used do before arrays were invented :313
> im an operating system
> when I feel like operating
> lifes good
> i reboot when i feel like it
> i take the entire screen whenever i want
> when im changed from landscape to portrait i still snap windows horizontally
> sometimes, when i know the laptop lid is closed and a keyboard is attached i still ask for your finger
> thats what you get for having the finger print scanner under the lid i say
"Don't you like the new site? (:"
I mean yeah, it's an upgrade from what was done in 2011 with 2007 recycled code.
But now the first access takes almost 10 seconds.
Was fucking WordPress necessary?
We went from a hotel booking PHP template to a blogging template.
60+ freaking Mb of shit, not just content but *shit*. (from the admin panel, only 3 of the 10+ sections are needed)
At least they won't bother me now about the main page frontend.
Oh wait, they do. So I had to learn how to hack the theme header behaviour because of course, cute boy WordPress couldn't care less on how the header behaves. I see more hacks incoming of fucking course.
Man I fucking hate WordPress.4
Started talk on a contract to build out a web payments portal, and ended up with a security contract instead. After initial probing, which I do to all prospective clients, I told them I would not work with a company that is as insecure as them.
They hired me for analysis and now want me to make them a plan.
They also fired their entire security division for not doing their job.
What the fuck is 2020 turning into...6
Ohh man i fucked up bad. 5 days as intern, and i fuck up really bad with my ego and ignorance.
I love my this company. A great environment, lots of people to learn from , i am given reasonable tasks and i feel happy to complete them. But what happened today was weird and fucked up.
I have never worked at a place with seniors designers tech leads and more people with positions. I have also worked with a lot of competitive people who are always in a race to be first.
And how do we come first? Have a lot of knowledge, hear the smallest of detail and sprint towards goal (because the combination your knowledge, assumptions and speed is enough to make you reach to the top). You don't ask for specific details, because they are obvious. And that's me in short.
Today i fucked up.
Mistake #1 ) first i was given a small task by my senior. It was a 20 mins task max if i had done it the normal noobie way . But i am a pro in mind , i have to do it with all the architecture , even if i don't understand why. So i asked for 50 mins. They gave it and did not had a problem with my time, but with the way i wrote my code.
He was like "who told you to make it like this ? Why did you made it like this?" And was visibly irritated. And i was like super chill saying "i don't know the why, but i know its correct way of using it" , pissing him even more. In my eyes he's just a super friendly sr, more like a bro and wouldn't mind some cheeky answers. And he didnt show any
consequences for that time.
Mistake #2 this is super fucked up. Our office is going under some renovation & interns were asked to sit in the co-working spaces (outside of the office). It was already very disturbing and i had to go to office every few minutes.
So after lunch this happens : We are working on a new module that already has a tonne of screens and logics. I have made a small part which is from the middle and now we can go both in the forward or in the backward direction.(Also, its quite a new module whose idea was recently discussed and decided. And weirdly i am also being treated like a core member as the ceo once himself asked what would he my flow for doing things in this. i am in direct contact and under direction of backend , designers , ceo and My senior and many ppl are giving me tasks ) And... Aagh fuck it. .. its a long story and i don't feel like repeating it but
got a task,
didn't understood it completely and thought its my task to figure it out, took a long time figuring it my self ,
techlead/designer somehow changed my and my sr. direction of flow even tho we were taking a different approach
I sit in a noisy and irritating place
Techlead/designer comes during the time when i am figuring out the solution(already overtime the one in point #2) nags for result.
I get in an argument with him, justifying for my time and arguing that it's difficult to think technical logics for that design
( truth be told, it WAS a difficult logic which he thought was too easy. It consisted of 3 variables and 8 states we were doing different works for 4 of them and rejecting 2 and ... I don't know, i had got that wrong . But that shouldn't had been my problem to solve. I should have gone to my senior and didn't get into argument with tech lead ). It think i might have offended him too.
After he left, i am so angry on him that after sometime my senior comes and i misbehave with him. He just asks to meet me before i go, and i do so. During the meeting we discuss this whole fuck up and how many times i showed him my ego and indiscipline. And then i realise what a fuckup i did due to my ego and lack of asking, blindly following my own over confidence and blindly following or arguing with others.
Fuck fuck fuck6
I cannot understand why people still think using VMs will help you be "safer".
Sure its better then nothing but its not that safe.
There have and are many exploits around VMs and there will be more.
Seriusly tho. There are bugs in VMs. Some use the RAM to escelate from VM. Some CPU. Some IDK what.
Its not safe.
Whats safe ?
Even PC with no internet isnt safe.
Heck i could see the power draw of your home and tell you what you were doing. (PC draws more current depending on what its doing. After some time and lot of data you can figure out user process.)
Heck even your BIOS isnt safe. (Not talking about open source alternatives. Those are much safer)12