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 - "incorrect"
-
Me: Hi, how can i help you today?
User: Hi IT, I can't enter to my computer, i put my password and it says it's incorrect.
Me: Ok, hold me a few.
(10 seconds without do anything)
Me: Try again.
User: It worked! Thanks!!2 -
Holy fuck, muscle memory just saved my ass.
At a train station wanting to do some work on my mini laptop which has disk encryption (LUKS I think). Realised that I forgot the password partly 😬
Few tries.... incorrect. FUCK.
*hey, let's try to let my hands do the work based on muscle memory!*
*starts typing the password (its insanely long) and presses enter*
*succesfully unlocked, booting...*
😅25 -
I. FUCKING. HATE. MOBILE. DEVELOPMENT.
I already manage the data, devops, infra, and most of the backend dev.
We had a mobile guy. He was great. I never had to think about it and kept moving quickly on my work. #SpecializationOfLaborFTW
He left. Why? Because they wouldn't give him a small raise despite being one of the best mobile engineers in the firm. WTF.
I made the mistake of picking up just enough slack on this workflow in the interim such that I'm, apparently, the fucking god-damned release manager, fixer of pipelines, fixer of build configs, fixer of anything where someone just needs to RTFM for a half-hour to not fucking break things.
Now, 8 months later...and, apparently, Fortune 500 companies are too fucking god-damned cheap to pay for someone who actually knows WTF they're doing for a very reasonable thing to have at least one dedicated set of eyes for.
I never wanted to be a mobile dev.
I never will want to be a mobile dev.
And I certainly don't want to manage your HALF-FACE-FUCKED detached expo configs.
There's a reason I never intentionally involved myself in mobile. All the way down, it's just shitty cross-compilation, transpilation, dependency-hell, brittle-as-fuck build processes so we can foot-gun and mouth-gun react-native and expo and babel and whatever the fuck else cargo-culted horseshit into the wild.
And why? What's the actual fucking root cause? The biggest white elephant that ever fucking elephant-ed? It's because Apple and Google decided to never collaborate on a truly-native cross-platform SDK--where engineers could write native code that compiles to native binaries that's simply write-once, run-everywhere. They know they could have done that, and they didn't. So what'd they get back? Expo--a too-cleverly-designed backdoor/hack--more-or-less a way to circumvent the sane release process software has usually followed: code -> executable -> deploy. Or code -> deploy (for interpreted langs). Expo's like "keep your same executable, we're just gonna to do updates by injecting new code into it whenever we want". Didn't we learn anything with web? Shit gets messy real quick? Not to mention: HEY EXPO, WE WERE ALREADY BUILDING NATIVE APPS, YOU SHORT-SIGHTED FUCKS. THANKS FOR LURING OUR CTOs INTO FORCING EXPO DOWN OUR THROATS W/ THE IMPLICIT (BUT INCORRECT) TOO-GOOD-TO-BE-TRUE PROMISE THAT WE CAN HAVE WRITE-ONCE, RUN-ANYWHERE WITHOUT ANY BUY-IN OR COOPERATION FROM THE ACTUAL TARGET PLATFORMS.
And, we just, like, accept this? We all know it's garbage engineering. The principles we learned in the classroom aren't just academic abstractions--they actually yield real-world results--and eschewing them yields real-world failures. Expo is tightly-coupled to high-heaven, with leaky abstractions six-ways-to-christmas, chock-full of foot-guns, and fails the most basic test of quality: does it, "just work?"
Expo is fucking shameful and it should fucking die. Its promises are too bold, its land-mines too many, its future-proof-ness is alway, always, always questionable as fuck and a risk to every project that uses it.
You want a rant? This is my fucking venue, 'tis not? Well, then this is a piss and vinegar rant straight from my blood-red, beating fucking heart:
EXPO FUCKING SUCKS. AND IF YOU'RE A FAN, YOU FUCKING SUCK TOO.27 -
Me - "Has anyone changed the password on the print computer"
Him - "It's the same one."
Me - "Carrots99?"
Him - "Yeah, what's the message that comes up?
Me - "Password is incorrect."
The dumbest conversation I've ever had in my fucking life. You little shit, I know you changed the password just to fuck with people. You've been reading too many books on elevating yourself, tried to be important for something. It means fuck all if you can't remember what you changed it to. So you held up two hours of my work, not to mention everyone else, because you can't help but stick your beak in shit. You dont think people can't see what youre doing? Watching you scurry over to the computer with a big smile, only a to fuck off silent as a mouse not to be seen mumbling some shit about a system administrator. Yeah you forgot it you prick.
Stop sucking up to the boss, and commanding people on what to do, when you're as junior as junior gets. Don't change our fucking passwords, just so you can have the whole team approach you the next day asking for you, then not remember them. You cunt.13 -
HR sent around updated contracts asking everyone to sign them since the company changed its name, fair enough.
In the contract it stated "Your normal place of work will be X" - only X was many miles away, and I'd never worked there, never planned too. Assumed it was a mistake, sent it back. HR refused to change it, stating that the "normal place of work does not need to be the place where you normally work."
A lot of back and forth entailed, I refused to sign, I was reprimanded for not doing so, I was asked what my problem was as it made no material difference, and then I eventually replied with:
"Angela, I'm refusing to sign this as it's factually incorrect. No further explanation is required. I'll maybe consider signing this if you sign a piece of paper declaring you believe the moon is made of cheese, and you're the cow the milk came from to make it."
A very strongly worded email came back about how this was going on my record, I needed to offer a formal apology, etc. - all cc'd to my manager. I replied back, again copying my manager in, stating that this was ok, as I couldn't remain at a company who forced employees to sign dodgy contracts anyway.
Problem was (for them), I was a *massive* single point of failure for them at this point owing to some others leaving with no handover - hence I knew I wasn't going to be the casualty here. My manager flipped the lid at HR, got the CEO involved on threat of *him* leaving, and the whole thing massively blew up. Happy ending in that the HR person in question was fired, everyone else's contracts also had to be redone (I assumed everyone else just signed without looking which is worrying), and I actually got a pay rise out of it when higher ups realised the massive single point of failure I was.
But damn, I would've walked over crap like that. Walked pretty soon after anyway!13 -
My job requires us to use Mac. I've spent the week figuring how to get stuff done on it.
My best description of trying to code on mac is that it's kinda like having to extract your mangled penis from a blender before you bleed to death... Except you can't look directly at it, you have to wear a VR headset that's linked to a camera in the corner of the room.
And you can't use your hands directly you have to use an incredibly stylish and ergonomic looking steering wheel to control a robotic arm. The robotic arm has its own artificial intelligence and it desperately wants to help.
Unfortunately it doesn't understand anything about what you're trying to do and it keeps leaping to incorrect conclusions about what you want from it.
Everyone tells you it'll get better, but you're still in intense pain and your penis is still stuck in the blender.28 -
I strongly dislike the www part in domain names (the subdomain, really), that's not really news anymore.
Loads of sites use it which I find annoying as fuck for some reason but so be it. (I understand that its very logical to loads of people)
And then you get a client who calls in because the email server isn't accepting her username/password.
*looks into the logs*
"incorrect authentication data: info@www.herdomain.com"
Kill it with fucking fire.18 -
I suddenly remembered this after being gone from my previous company for nearly a year.
So, I worked there as a tech supporter and Linux engineer.
What would often happen was clients calling with an issue regarding software of some sorts and about half the time, instead of LOOKING AT THE GODDAMN ERROR MESSAGE they'd just click it away fast and complain shit wasn't working.
I specifically remember this one case:
*big client mails complained that one of their clients' email isn't working. Screenshots weren't possible apparently so after emailing back and forth for way too long, we decide to do a screen sharing session (which we never do).*
(for the record, already emailing for hours, client very frustrated, me as well because the behavior of the software sounds impossible)
Me: alright, close everything, then open it again so I can see what happens.
Client: *opens mail client, error appears, client clicks error away faster than an arch user being able to mention they use arch*
Me: uhm.... I assume you already know what that message said and that it has nothing to do with the issue?
Client: it has nothing to do with the issue.
Me: okay... But have you at least looked the message?
Client: no but it has nothing to do with the issue.
Me: but, how'd you know if you won't look at it?
Client: it has nothing to do with the issue, okay?
Me: okay.... so, what's happening here?
Client: the user isn't receiving email anymore at this point!
Me: alright, have you checked the settings and everything?
Client: of course, all good
Me: okay but can we at least restart the software again to at least check the error message?
Client: FINE. *restarts client (pun intended, of course)*
Error message: username or password incorrect, can't connect to the server.
Client:..........
Client:............
Client:...............
Client:..................
Client:.....................
Client:..................
Client:...............
Client:............
Client:.........
Client: 😐
Client: 😶
Client: 😅
Client: 😬
Client:..... Right, I changed the password...
Client: *sets correct password*
*poof, error message gone*
Client:..... Thanks 💀
Me: you're welcome 😄
💀3 -
Get a call saying password incorrect.
*Me testing login details*.... Works fine.
Tell user that it was a typo.
*They get angry*
*They start whispering to coworker "oh so it's a capital?!"
Next thing I hear, NVM I found the issue.
*Hangs up*7 -
BOSS: i will need your resume for this new project, can you make it?
ME: sure, but don't you have one?
BOSS: yes, but i would need it changed for a new details
ME: ok...
after work...
BOSS: we have a problem, remember that resume? we need it on english, and need it right now, can you translate it at home?
ME: ok, but give me a few minutes...
sends translated resume...
BOSS: ummm, it's not translated well, you didn't translate your education...
ME: the name of the school? you can't translate that...
BOSS: this lady asked for it, so do it...
ME: ok...
sends again...
BOSS: not quite there yet, you have Ć in your last name, translate that...
ME: translate my last name?
BOSS: yeah, this lady has a spell check and saw that incorrect...
ME: .....
im going to celebrate when i leave this itterate shithole16 -
The first time I decided to hack around a bit:D
One of my teachers made a quiz software, which is only used by him(his lectures are about databases), and it is highly unsecure. When I heard that it is written in C# I decided to look in it's source code. The biggest problem I ran into: this program is only available on the computers in his classroom, and he monitors the computers display. However, I successfully put it into my pendrive without getting caught.
So when I got home, I just had to use a .NET decompiler(in this case: dotPeek) to get the fully functional source code. The basic function of the program was to download a quiz from his database server, and when it was finished, grade it client-side. Than, I realized how bad it was: It contains the number of questions, the number of correct and incorrect answers.
I've just made a modified .exe, which contained really little modification(like correctAnswers=maxQuestions, incorrectAnswers=0). Everything looks the same, you just have to click over it, and everytime it will return with 100%.
And the bonus: The program connects to the database as a user with root access, and without password. I was able to log in, download(dropping was available too, but didn't try) databases(with all the answers) and so on.
Never had to use it though, it was just a sort-of experience gaining.:)6 -
Seven months ago:
===============
Project Manager: - "Guys, we need to make this brand new ProjectX, here are the specs. What do you think?"
Bored Old Lead: - "I was going to resign this week but you've convinced me, this is a challenge, I never worked with this stack, I'm staying! I'll gladly play with this framework I never used before, it seems to work with this libA I can use here and this libB that I can use here! Such fun!"
Project Manager: - "Awesome! I'm counting on you!"
Six months ago:
====================
Cprn: - "So this part you asked me to implement is tons of work due to the way you're using libA. I really don't think we need it here. We could use a more common approach."
Bored Old Lead: - "No, I already rewrote parts of libB to work with libA, we're keeping it. Just do what's needed."
Cprn: - "Really? Oh, I see. It solves this one issue I'm having at least. Did you push the changes upstream?"
Bored Old Lead: - "No, nobody uses it like that, people don't need it."
Cprn: - "Wait... What? Then why did you even *think* about using those two libs together? It makes no sense."
Bored Old Lead: - "Come on, it's a challenge! Read it! Understand it! It'll make you a better coder!"
Four months ago:
==============
Cprn: - "That version of the framework you used is loosing support next month. We really should update."
Bored Old Lead: - "Yeah, we can't. I changed some core framework mechanics and the patches won't work with the new version. I'd have to rewrite these."
Cprn: - "Please do?"
Bored Old Lead: - "Nah, it's a waste of time! We're not updating!"
Three months ago:
===============
Bored Old Lead: - "The code you committed doesn't pass the tests."
Cprn: - "I just run it on my working copy and everything passes."
Bored Old Lead: - "Doesn't work on mine."
Cprn: - "Let me take a look... Ah! Here you go! You've misused these two options in the framework config for your dev environment."
Bored Old Lead: - "No, I had to hack them like that to work with libB."
Cprn: - "But the new framework version already brings everything we need from libB. We could just update and drop it."
Bored Old Lead: - "No! Can't update, remember?"
Last Friday:
=========
Bored Old Lead: - "You need to rewrite these tests. They work really slow. Two hours to pass all."
Cprn: - "What..? How come? I just run them on revision from this morning and all passed in a minute."
Bored Old Lead: - "Pull the changes and try again. I changed few input dataset objects and then copied results from error messages to assertions to make the tests pass and now it takes two hours. I've narrowed it to those weird tests here."
Cprn: - "Yeah, all of those use ORM. Maybe it's something with the model?"
Bored Old Lead: - "No, all is fine with the model. I was just there rewriting the way framework maps data types to accommodate for my new type that's really just an enum but I made it into a special custom object that needs special custom handling in the ORM. I haven't noticed any issues."
Cprn: - "What!? This makes *zero* sense! You're rewriting vendor code and expect everything to just work!? You're using libs that aren't designed to work together in production code because you wanted a challenge!?? And when everything blows up you're blaming my test code that you're feeding with incorrect dataset!??? See you on Monday, I'm going home! *door slam*"
Today:
=====
Project Manager: - "Cprn, Bored Old Lead left on Friday. He said he can't work with you. You're responsible for Project X now."24 -
*CTO in panic, as always, invites everyone to the war room*
CTO: We have a MAJOR problem where 0.0001% of our customers are not receiving SMS confirmations.
Me: Cool. But, 0.0001% is very less compared to the other problems we are solving.
CTO: You don't understand, this is critical issue that needs to be addressed immediately.
Me: But even those.0.0001% customers are receiving e-mail confirmations, so this is not even blocker as we have other channels working.
CTO: I am emotional at this point. You need to prioritise this now.
Me: Okay, do we know the root cause of this problem?
Engineering head: we have blacklisted those numbers in past as our system detected them abusing our platform.
Me: Cool. Let's whitelist them, nothing much to worry here.
CTO: Floyd, you need to understand that 0.0001% of the customers are not receiving the SMS and the solution you are proposing is incorrect.
Me: Okay, what do you suggest?
CTO: We stop sending the SMS to all the customers.
Everyone on the call: 😨18 -
I didn’t. I went for an interview and quizzed this multi-million £ business about their architecture: it sounded awful.
I made some diagrams on how I would’ve done it, how it would scale etc and why. They were blown away and wanted me to implement this structure including the job they wanted to hire me for.
They sent a contract over: had the wrong name on it
They corrected the name but I noticed the salary was incorrect
They sent a third and by this time I was offered an interview elsewhere so I went
The hirer then called me to say he was frustrated I hadn’t signed a contract yet making it sound like it was my fault for not wanting to sign an illegitimate contract. he then went on to say that the salary had been reduced, I asked why and they said they felt I wasn’t a senior developer.
So I took the other job and they kept their shitty architecture 💁🏼♀️12 -
Come back from vacation to find that 80+ e-mails were sent out to the entire team for a critical process that was failing to run due to an incorrect password. No one did anything for a week. Fixed it in 30 seconds.5
-
Flashback to when I was in 7th grade
Art teacher: Taco, your focal point is wrong
Me: *looks* ....no it's not
Art teacher: *looks* ...oh, you're right
Fast forward to c++ class
Prof: Taco your calculation is incorrect
Me: *looks* ....no it's not
Prof: *looks* ...oh, you're right8 -
I... uhm... I... I can't... I ... I can't even.... THIS IS LIVE IN THE CLIENT'S SITE WHERE ANYONE CAN CREATE A LOGIN WITH NO VERIFICATION WHATSOEVER AND SEE THIS WHICH IS LINKED TO A BIG RED BUTTON THAT RESETS THE WHOLE DATABASE, YOU FUCKING DUMB PIECE OF SHIT!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
// This event clears the entire solution in all active clients, truncates the database and also removes any stored PDFs in the server folder
$(document).on('click', '#resetDB', function () {
// This event only happens if the user correctly enters the password, this is to prevent other users than the admin from performing this action
var answer = prompt("Please enter the password required to perform this action.");
if(answer == "-REDACTEDBECAUSEHOLYSHIT-") {
socket.emit('resetDB');
} else {
alert("The password is incorrect, please try again!");
}
});
AAAAAAAAHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH!!!!111!!1!!11!1!!1!1one!one!!!11
(I'm not inventing this, even though the "site" is internal only and not accessible through the web. That does *not* make it any less stupid!)11 -
'Incorrect password.'
"I must've forgotten the password. Let me change it".
'Old and new passwords cannot be same'
o_O14 -
Day 1 10:00 am
Login to email account (Zimbra)
Your password is incorrect (I entered it correctly, this was a permanent issue ,used to happen in the company with many employees)
Reset your password by logging into internal company portal.
11:00 am
Logged into company portal, somehow. 2 Mbps internet shared among 104 people, you can imagine the speed.
Reset email password
* your password has been sent to your email id*
Are you fucking kidding me? U have emailed me the password to the same email I can't log in to?
Where did the architecture designer get this top notch weed from?
Day 2
Asked HR to reset my password (using a colleague's email)
Day 3
No reply from HR yet
Day 4
I went to meet HR, she's on vacation. So they have 1 person managing the password reset, for 5000 people with no backup person. Cool.
Day 5
Your internal company password has expired. Check your email for link to create new password. This is some next level shit going on.
Day 6
I called up Internal IT team to generate a new email for me.
They asked me to raise a ticket.
I can't raise a ticket because the only way to do so, is through the portal.
Day 7
Nothing. Btw, personal email and all social networks were banned. You can't even open stackoverflow.
And this was a research lab, amazing huh?
Day 8
Loss of pay for 4 days since I can't login to company portal to fill timesheet.
Day 9
HR comes back. Resets my password.
I try to generate my new password for portal.
The password policy:
Password can't be same as last 10 passwords
Passwords expire every week
8 characters minimum, 2 upper case, 2 lower case, NO SPECIAL SYMBOL. WTF. How long do u think its gonna take to crack that?
Fuckers had a company wise policy to automatically lock PC every 1 min if not used. Who the fuck can keep on using it continuously! I'm reading an article, and bam ! Locked. 2 wrong entries and that's it, repeat all steps again. Fuckers really didn't want to let me do my job, just keep on logging in all day.12 -
I had to open the desktop app to write this because I could never write a rant this long on the app.
This will be a well-informed rebuttal to the "arrays start at 1 in Lua" complaint. If you have ever said or thought that, I guarantee you will learn a lot from this rant and probably enjoy it quite a bit as well.
Just a tiny bit of background information on me: I have a very intimate understanding of Lua and its c API. I have used this language for years and love it dearly.
[START RANT]
"arrays start at 1 in Lua" is factually incorrect because Lua does not have arrays. From their documentation, section 11.1 ("Arrays"), "We implement arrays in Lua simply by indexing tables with integers."
From chapter 2 of the Lua docs, we know there are only 8 types of data in Lua: nil, boolean, number, string, userdata, function, thread, and table
The only unfamiliar thing here might be userdata. "A userdatum offers a raw memory area with no predefined operations in Lua" (section 26.1). Essentially, it's for the API to interact with Lua scripts. The point is, this isn't a fancy term for array.
The misinformation comes from the table type. Let's first explore, at a low level, what an array is. An array, in programming, is a collection of data items all in a line in memory (The OS may not actually put them in a line, but they act as if they are). In most syntaxes, you access an array element similar to:
array[index]
Let's look at c, so we have some solid reference. "array" would be the name of the array, but what it really does is keep track of the starting location in memory of the array. Memory in computers acts like a number. In a very basic sense, the first sector of your RAM is memory location (referred to as an address) 0. "array" would be, for example, address 543745. This is where your data starts. Arrays can only be made up of one type, this is so that each element in that array is EXACTLY the same size. So, this is how indexing an array works. If you know where your array starts, and you know how large each element is, you can find the 6th element by starting at the start of they array and adding 6 times the size of the data in that array.
Tables are incredibly different. The elements of a table are NOT in a line in memory; they're all over the place depending on when you created them (and a lot of other things). Therefore, an array-style index is useless, because you cannot apply the above formula. In the case of a table, you need to perform a lookup: search through all of the elements in the table to find the right one. In Lua, you can do:
a = {1, 5, 9};
a["hello_world"] = "whatever";
a is a table with the length of 4 (the 4th element is "hello_world" with value "whatever"), but a[4] is nil because even though there are 4 items in the table, it looks for something "named" 4, not the 4th element of the table.
This is the difference between indexing and lookups. But you may say,
"Algo! If I do this:
a = {"first", "second", "third"};
print(a[1]);
...then "first" appears in my console!"
Yes, that's correct, in terms of computer science. Lua, because it is a nice language, makes keys in tables optional by automatically giving them an integer value key. This starts at 1. Why? Lets look at that formula for arrays again:
Given array "arr", size of data type "sz", and index "i", find the desired element ("el"):
el = arr + (sz * i)
This NEEDS to start at 0 and not 1 because otherwise, "sz" would always be added to the start address of the array and the first element would ALWAYS be skipped. But in tables, this is not the case, because tables do not have a defined data type size, and this formula is never used. This is why actual arrays are incredibly performant no matter the size, and the larger a table gets, the slower it is.
That felt good to get off my chest. Yes, Lua could start the auto-key at 0, but that might confuse people into thinking tables are arrays... well, I guess there's no avoiding that either way.13 -
fuck you SimpleDateFormat. Every single time. get one case incorrect, suddenly its june the 45th, 3017.8
-
So, if you are a programming "ninja", does that mean you sneak into other repositories and burn them down or poison the author?4
-
I'm editing the sidebar on one of our websites, and shuffling some entries. It involves moving some entries in/out of a dropdown and contextual sidebars, in/out of submenus, etc. It sounds a little tedious but overall pretty trivial, right?
This is day three.
I learned React+Redux from scratch (and rebuilt the latter for fun) in twice that long.
In my defense, I've been working on other tasks (see: Alerts), but mostly because I'd rather gouge my freaking eyes out than continue on this one.
Everything that could be wrong about this is. Everything that could be over-engineered is. Everything that could be written worse... can't, actually; it's awful.
Major grievances:
1) The sidebars (yes, there are several) are spread across a ridiculous number of folders. I stopped counting at 20.
2) Instead of icon fonts, this uses multiple images for entry states.
3) The image filenames don't match the menu entry names. at all. ("sb_gifts.png" -> orders); active filenames are e.g. "sb_giftsactive.png"
4) The actions don't match the menu entry names.
5) Menu state is handled within the root application controller, and doesn't use bools, but strings. (and these state flags never seem to get reset anywhere...)
6) These strings are used to construct the image filenames within the sidebar views/partials.
7) Sometimes access restrictions (employee, manager, etc.) are around the individual menu entries, sometimes they're around a partial include, meaning it's extremely difficult to determine which menu entries/sections/subsections are permission-locked without digging through everything.
8) Within different conditionals there are duplicate blocks markup, with duplicate includes, that end up render different partials/markup due to different state.
9) There are parent tags outside of includes, such as `<ul>#{render 'horrific-eye-stabbing'}</ul>`
10) The markup differs per location: sometimes it's a huge blob of non-semantic filthiness, sometimes it's a simple div+span. Example filth: section->p->a->(img,span) ... per menu entry.
11) In some places, the markup is broken, e.g. `<li><u>...</li></u>`
12) In other places, markup is used for layout adjustments, such as an single nested within several divs adorned with lots of styles/classes.
13) Per-device layouts are handled, not within separate views, but by conditionally enabling/disabling swaths of markup, e.g. (if is_cordova_session?).
14) `is_cordova_session` in particular is stored within a cookie that does not expire, and within your user session. disabling it is annoying and very non-obvious. It can get set whether or not you're using cordova.
15) There are virtually no stylesheets; almost everything is inline (but of course not actually everything), which makes for fun layout debugging.
16) Some of the markup (with inline styling, no less) is generated within a goddamn controller.
17) The markup does use css classes, but it's predominately not for actual styling: they're used to pick out elements within unit tests. An example class name: "hide-for-medium-down"; and no, I can't figure out what it means, even when looking at the tests that use it. There are no styles attached to that particular class.
18) The tests have not been updated for three years, and that last update was an rspec version bump.
19) Mixed tabs and spaces, with mixed indentation level (given spaces, it's sometimes 2, 4, 4, 5, or 6, and sometimes one of those levels consistently, plus an extra space thereafter.)
20) Intentional assignment within conditionals (`if var=possibly_nil_return_value()`)
21) hardcoded (and occasionally incorrect) values/urls.
... and last but not least:
22) Adding a new "menu sections unit" (I still haven't determined what the crap that means) requires changing two constants and writing a goddamn database migration.
I'm not even including minor annoyances like non-enclosed ternaries, poor naming conventions, commented out code, highly inefficient code, a 512-character regex (at least it's even, right?), etc.
just.
what the _fuck_
Who knew a sidebar could be so utterly convoluted?6 -
I've been working on updates to a react app for a few hours today. Everything's been peachy except this shit job, this inane change demand list, my headache, my lack of quiet places to work, ... okay, so basically everything is terrible. But I've done lots of builds, and made lots of progress.
Then suddenly: my build script failed. 30 seconds after a successful build, with no (tooling) changes in between.
Reason? Incorrect version of Sass.
How? Fucking npm.
Isn't package-lock.json supposed to prevent this crap?
FAKDLKAUSUK.13 -
Client: *Signs Up* We didn't receive email notification
Me: Okay, we'll check.
*checked if a sign up record is saved*
*checked logs*
*everything is working*
*checked mailing statistics, found 1 email bounced*
...
Me: Are you sure you're using the correct email address?
Client: *tried to sign up again*
Me: *monitors database record, found out that they use incorrect domain on their email address*
Also me: (╯°□°)╯︵ ┻━┻4 -
Who the fuck came up with the idea of using indentation instead of braces? I wasted 5 fucking hours of my life tracing a bug which eventually came down to incorrect indentation of a return statement which pushed it inside the loop!!!!!!!!!!!!!!! FML
And the PR has already been merged into master! How will I face everyone on Monday!16 -
WordPress 'specialists' love to proclaim that 27 per cent of the web is powered by WordPress (which is incorrect anyway - https://rarst.net/wordpress/... ).
However, that doesn't mean it's the best CMS, like many try to suggest. It just means a huge percentage of websites out there are using the wrong tool for the job.30 -
Summary: Burnout, and everything's broken.
I don't feel like doing a damn thing today. I look at the code and cringe. I look at Slack and think "ugh. i can't." Mental capitals are even too much work.
(I've started reading "Zen and the Art of Motorcycle Maintenance" to try and combat burnout. I'll write a rant/story about it here if I find it helpful. but all I want to do today is drink tea and read.)
But onto the story:
Heroku is deprecating support for and will automatically upgrade any old verisons of Postgres running on its platform after August something (like five days from now).
I performed the upgrade to PG10 on Sunday (and late into the night), provisioning a new follower, blah blah blah.
However, the version of Rails we're using (4.2.x) doesn't support PG10 sequences, so I manually added in support via a monkeypatch. I did this on our QA servers first, obviously, and everything worked as expected. After half a day of no issues, I did the same on production, and again: everything worked as expected.
But today? I keep hearing about new things that are broken. One specific type of alert doesn't work for one specific person (wat). Can't send [redacted] at all. Can't update merchants! Yet there are magically no errors logged.
That last one (well, two) are just great; let me explain: when there's an error concerning merchants, the error gets caught, isn't logged or recorded anywhere so it just disappears, and the rescue block triggers a json response instead and happily exits. This is for an internal admin tool, so returning a user-friendly error is kinda stupid anyway, but masking what actually happened? fuck that dev with an obelisk made from spikes and solidified pain. That json response is also lovely: it's a 200 OK returning {status: 1, data: "[generic message containing incorrect IT jargon]"}. Doesn't even say "error" anywhere. Bloody everything about this pattern is absolutely wrong. Even the friggin' text.
Fucking hell. I want to pipe the entire codebase into shred and walk out the door.
But I digress. So many things are broken, my motivation is wanning to a sliver, and I have a conference call today where I'll undoubtedly be asked why everything is on smoking and/or on fire, and my huge and overly productive week last week will ofc mean nothing by contrast.
Ugh.
`shred ~/dev/work -zfu -n 32 &; ./brew tea --hot && wine ~/takeabreak.exe`rant zen and the art of motorcycle maintenance postgres heroku ship's sinking and the fixer's all fixed out burnout21 -
I put both my username and password as "incorrect". So that everytime i mess up, my computer reminds me that my login is incorrect!6
-
I finally got Redux-Form’s `initialValues` to work! Wooooo~!
/giphy confetti cheering
It turns out I haven’t actually been doing anything wrong for the past week. I mean, I've been working on other things during that week, too, but I've been trying to solve this the entire time.
The cause? ReduxForm made a breaking change awhile ago (v5; we’re using v7) that prevents the `initialValues` prop from working if you decorate your form component in the wrong order. Many examples online are incorrect because of this.
Basically, the decorators `reduxForm` and `connect` do not commute:
Incorrect:
`reduxForm(...)( connect(..., {...})(form) )`
vs Correct:
`connect(..., {...})( reduxForm(...)(form) )`
But what really pisses me off is that the fucking documentation specifically fucking states that you may decorate your component IN ANY [FUCKING] ORDER.
/giphy that is [fucking] false
So, I've been following example after [fucking] example that either list these in the wrong order, or I just don't notice the different order because it doesn't matter. AND because of that NONE OF THE [...] EXAMPLES WORK.
ARGH.
I've been pacing around the office trying to figure this out for days. I've rewritten my code three times to try to solve this. I've written two workarounds for it only to rip them out and try again because they both broke some other part of the UX. (e.g. causing false validation errors after rerender)
just. hafhsldkjhgjkhagklwhsdjfkahslf. 😡
/giphy angry hades
You know how I discovered this?
I found it in a github ticket. One solitary, untagged ticket from October of last year. Not a single goddamn post anywhere else mentioned this. And the [...] documentation specifically [...] states the [...] opposite!
Bloody [...] hell.
but it finally works.
as;kgjhaekl;gahgjkdflssdafh.
I could scream.6 -
DuckDuckGo SUCKS!
I mean, I like the concept. The private, highly customizable search engine is what we all need.
But if 4/5 times I have to use 'g!' just to find some really basic stuff, because the results are incorrect or point to low quality content then what's the point of using it in the first place?! It's really frustrating especially if I try to find something in Polish or Dutch, but even in English most of the time the search results sucks!40 -
Awesome got fired bc i caught the vp cooking the books by a factor of 1.2, mistakenly notified him of an obviously incorrect algorithm bc i thought the previous dev made a mistake.13
-
Auth Endpoint:
user name and password correct:
- response 200: with session key and profile info
user name and password incorrect:
- response 200: blank
smh -
Hey Root, remember that super high-priority ticket that we ignored for five months before demanding you rewrite it a specific way in one day?
Yeah, the new approach we made you use broke the expected usecases, and now the page is completely useless to the support team and they're freaking out. Drop everything you're doing and go fix it! Code-complete for this release is tonight! -- This right after "impacting our business flow" while being collapsed on the fucking floor.
Jesus FUCKING christ, what the fuck is wrong with these people?
If I dropped the ball on a high-priority ticket for two weeks, I'd get fired, let alone for five fucking months.
If I was a manager and demanded a one-day rewrite I can only imagine the amount of chewing out I'd receive, especially on something high-priority.
And let's not forget product ownership: imagine if I screwed up feature planning for someone so badly I made them break a support tool in production. I'd never hear the end of it.
Fucking double standards.
And while I'm at it. Some of the code I've seen in this codebase is awful. Uncommented spaghetti, or an unreadable mess with single-letter variables, super-tightly coupled modules so updates are nearly impossible, typos in freaking constants added across sixty+ files, obviously-incorrect comments, ... . I'll have to start posting snippets to show them off. But could I get away with any of it? ha. Hell no. My code must be absolutely perfect. I hear about any and every flaw, doesn't matter how minor, and nothing can go out until everything is just so.
Hell, I even hear about flaws in other peoples' code during my code reviews. Why? Because I should have fixed it, that's why. But if I do, I get yelled at for "muddying the waters."
Just. JESUS FUCKING CHRIST.
It's like playing a shell game where no matter which shell I pick (or point to their goddamn sleeve where they're clearly hiding it), I get insulted for being so consistently useless, and god damn, how can I never find the fucking pea or follow the damned rules? I'm so terrible and this is why "nobody trusts me." Fuck you.
I'll tell you why I can't find your damned pea: IT'S RATTLING INSIDE YOUR FUCKING HEADS, you ASSHOLE FUCKING IMBECILES.
That's right: one pea among the lot of them.
goddamn I am fucking pissed off.rant drop everything and rewrite your rewrite oopsie someone else made a mistakey double standards shell game root can do no right root swears oh my8 -
I make a typo in the username
"username doesn't exist"
I fix the typo and mess up the password
"incorrect password"
... I smell a potential exploit here...7 -
when you type faster than computer response:
------------------------
Ubuntu 16.04.5 LTS server tty1
server login: sysadmin
adminPassword:
Login incorrect
server login: sysadmin
Password:
sysadmin@server:~$ _
------------------------
"FUCKING SHIT !"
*sees if there are anyone in the back*
*saw no one*
"fiuuh... what a relief"
sysadmin@server:~$ clear3 -
I’m on video calls very often, but never really bothered if I’m wearing a shirt or tee. Even when the call is with people like CEOs or bosses.
This time though, the friend specifically asked to be in a good shirt, be professional and shit. Till this point all I knew was the friend started a very amazing business of sort and would like me to join too. And the person I’ll be meeting is very busy and impossible to get an appointment.
The buildup is so much for this call that I’m wondering it’s either going to be CIA or scam. Spoiler alert: it wasn’t CIA.
A few minutes into the call, I get a feeling it’s a scam. A few more minutes and I was sure it’s a pyramid scheme.
Now, I can’t call it out because the friend is really into it, almost blindly believes this scheme, and isn’t ready to hear any counter-arguments. So I thought, let’s just get over with this call.
The call went on for 3 hours. 3 WHOLE HOURS. I had to be attentive, professional, and not laugh on their face for 3 hours. On top of that, I was feeling hungry AF.
Mr. impossible-to-get-appointment was explaining Robert Kiyosaki’s financial theories - in a completely incorrect manner and interpretation. I tried correcting a couple of times, because I’ve read his books and theories in detail - but this person just went on and on and on for 3 fucking hours.6 -
Yea, that's seems about right.When the user gives incorrect password,throw an Internal Server Error.
Great API design!2 -
It definitely helps to not be proud, especially to talk to people.
I was about to refactor something someone did, without understanding their intentions and because I thought it was incorrect.
Thank God I got off my high horse to talk to them first!
If you are shy or bad at approaching people (like me), just force yourself and try.. You will eventually learn to be less hesitant.1 -
Computer - Enter password
Man - password
Computer - Your password is incorrect
Man - incorrect
Computer - try again
Man - again1 -
I gave you a nice date picker to use but instead you choose to type in the date. Type in an incorrect date and then yell at me for it. If I could enter the dates for you , you would not have a job .... stupid users4
-
I am much too tired to go into details, probably because I left the office at 11:15pm, but I finally finished a feature. It doesn't even sound like a particularly large or complicated feature. It sounds like a simple, 1-2 day feature until you look at it closely.
It took me an entire fucking week. and all the while I was coaching a junior dev who had just picked up Rails and was building something very similar.
It's the model, controller, and UI for creating a parent object along with 0-n child objects, with default children suggestions, a fancy ui including the ability to dynamically add/remove children via buttons. and have the entire happy family save nicely and atomically on the backend. Plus a detailed-but-simple listing for non-technicals including some absolutely nontrivial css acrobatics.
After getting about 90% of everything built and working and beautiful, I learned that Rails does quite a bit of this for you, through `accepts_nested_params_for :collection`. But that requires very specific form input namespacing, and building that out correctly is flipping difficult. It's not like I could find good examples anywhere, either. I looked for hours. I finally found a rails tutorial vide linked from a comment on a SO answer from five years ago, and mashed its oversimplified and dated examples with the newer documentation, and worked around the issues that of course arose from that disasterous paring.
like.
I needed to store a template of the child object markup somewhere, yeah? The video had me trying to store all of the markup in a `data-fields=" "` attrib. wth? I tried storing it as a string and injecting it into javascript, but that didn't work either. parsing errors! yay! good job, you two.
So I ended up storing the markup (rendered from a rails partial) in an html comment of all things, and pulling the markup out of the comment and gsubbing its IDs on document load. This has the annoying effect of preventing me from using html comments in that partial (not that i really use them anyway, but.)
Just.
Every step of the way on building this was another mountain climb.
* singular vs plural naming and routing, and named routes. and dealing with issues arising from existing incorrect pluralization.
* reverse polymorphic relation (child -> x parent)
* The testing suite is incompatible with the new rails6. There is no fix. None. I checked. Nope. Not happening.
* Rails6 randomly and constantly crashes and/or caches random things (including arbitrary code changes) in development mode (and only development mode) when working with multiple databases.
* nested form builders
* styling a fucking checkbox
* Making that checkbox (rather, its label and container div) into a sexy animated slider
* passing data and locals to and between partials
* misleading documentation
* building the partials to be self-contained and reusable
* coercing form builders into namespacing nested html inputs the way Rails expects
* input namespacing redux, now with nested form builders too!
* Figuring out how to generate markup for an empty child when I'm no longer rendering the children myself
* Figuring out where the fuck to put the blank child template markup so it's accessible, has the right namespacing, and is not submitted with everything else
* Figuring out how the fuck to read an html comment with JS
* nested strong params
* nested strong params
* nested fucking strong params
* caching parsed children's data on parent when the whole thing is bloody atomic.
* Converting datetimes from/to milliseconds on save/load
* CSS and bootstrap collisions
* CSS and bootstrap stupidity
* Reinventing the entire multi-child / nested params / atomic creating/updating/deleting feature on my own before discovering Rails can do that for you.
Just.
I am so glad it's working.
I don't even feel relieved. I just feel exhausted.
But it's done.
finally.
and it's done well. It's all self-contained and reusable, it's easy to read, has separate styling and reusable partials, etc. It's a two line copy/paste drop-in for any other model that needs it. Two lines and it just works, and even tells you if you screwed up.
I'm incredibly proud of everything that went into this.
But mostly I'm just incredibly tired.
Time for some well-deserved sleep.7 -
A friend of mine did this.
Login: yes
Password: Don't have one
Password is incorrect
Login: yes
Password: incorrect4 -
The push back phrase my manager uses when I try to discuss a requirement which I think is incorrect:
"It was discussed and agreed upon at the beginning b/n PM and engineering"
To hell with that, if 10 people arrive at a stupid decision, its still a stupid decision
I just sit back until the project progresses much further and wait for another senior dev whom they can't ignore to bring up the same issue.
It is supremely frustrating 😤2 -
So I was using Coffee Meet Bagel to talk to a girl who is currently travelling. We noticed that the messages were sorted out of orders with incorrect time due to the different time zone we are in.
So naturally, I sent them a big report.
Their support team replied by telling me to do the usual. Restart, update, reinstall, delete everything etc (it’s their default answer!!).
I told them I have done those.
They then rephrased my bug report and told me this is expected as the chat was between two parties with a different time so the messages are sorted out of order due to the time difference.
I guess most developer will get ticked off by that... so I sent them a few pseudo code on how chat across different time zones should have been dealt with...
Life of a developer. Debugging and coding even when on a dating app... 🤷🏽♂️11 -
For fucks sake, how many times can you get the same error before giving up?
So, there's this form, and it's used quite frequently without fail, and there's this 1 user receiving an error that some data is incorrect, so... they submit the form again, and again, and again, and 6 more times with the same bloody error all because changing 1 fucking field is obviously to hard to recognise as the problem when the error says "you can not have 'x' in field 'y'"
Fuck it, do I need to replace 'x' with a blank, just because you can't read a fucking error message?11 -
That oh shit moment when you just installed arch and exit your root shell after creating a new user for yourself only to realize that you didn’t add yourself to sudo group.
*logs back in as roo——*
*password incorrect*
*tries again*
*password incorrect*
[repeat about 5 more times]
Fuck.
So apparently I made the SAME typo twice while setting the password and then the first login was a lucky third typo in a row.
Gotta reinstall now. Glad I didn’t have any desktop environment installed yet.12 -
Thank goodness I put on my adulting cap and had a talk with my project manager today. He's such a kind and understanding person, truly underestimated qualities.
I'm basically a sub-contractor; a freelance consultant who get jobs from another company (ie my PM) and I messed up the estimate for this project we're working on and I did so in a rather spectacular manner.
60-80 estimated hours are now in the 300:s... I've missed more deadlines in this project alone than I have done in all my career (+10 years) combined. It's bad. It's a complete clusterfuck.
Problem is because of this never-ending project I haven't been able to work on things I can debit since May and I didn't have those margins. I'm fucked financially and I've been so stressed out about that I've literally been loosing sleep over it, found myself ugly-crying in the middle of the night more than once, worrying about how the fuck I'm gonna get on.
In my mind it was a real thing that they wouldn't want to keep working with me after this. Even though the failures in this project isn't _only_ on me, I'm not one to make excuses for myself and I would completely understand if that had been the outcome.
But it wasn't.
Instead he just said he was sorry he wouldn't be able to get all my hours billed by the client (of course not; we've left an estimate and by at least Swedish business law you can't deviate from those simply because you made an incorrect estimation).
But he has no intentions of letting me go as a consultant and assured me there will be other jobs (planned since before this whole ordeal). He's even going to try and get some hours in for me in other projects, small things here and there so I can get some billable hours quickly to help me out.
He knows me and he knows this isn't who I am as a professional. I'm so relieved I could god damn cry.3 -
Ticket user story:
“Brown Chicken Report A and B do not include rows for Blue Chickens. I want to see Blue Chickens in both Brown Chicken reports.”
Ticket summary:
“Currently, the Brown Chickens reports mentioned above do not accurately report Blue Chickens. The columns P and Q are incorrect and need to be updated. See below:
<Copy/pasted table from All Animals Report showing a White Chicken>”
———
Are you okay? Do you have brain damage?
(Also: Blue Chickens are not supported and do not exist)6 -
Wow i must have been brain dead when i wrote this code. Needed to exclude certain elements from response for the the list of objects.
for (obj : objects) {
If (obj.skipFromResponse()) {
break
}
add obj to response
}
I used break instead of continue at the if condition which meant it would break out of the loop at the first instance of condition being met.
This went through qa and has been in production for 4 weeks so how did this not break before. Well little did i know the list of objects was sorted and all the test data, qa data and everything so far in production coincidentally only had the last element with matching condition. This meant it returned everything correctly so far.
Today was the first time there was a situation where this caused incorrect output. Luckily as soon as I heard the description of the issue I remembered to check the merged PR and hung my head in shame for making such trivial error. I must have written way more complicated code without any problem but this made me embarrassed to even admit. 🤦♂️4 -
Today my grandmother called and told me she wasnt able to login to her account for her ISP. Alright, maybe shes confused about the passwords as we had to change it recently. No, turns out they still have this "oh sorry you typed your password incorrect three times, so we will lock your account and your granny have to do the 2 hour telephone queue"
You and your fucking outdated auth practise can go and kindly fuck yourself. Fix this shit before I get real mad.5 -
No matter how much documentation you write, and how well you comment the code, the truth is always the code itself.17
-
- Why isn't this script working
- Review Error Log
"Incorrect Syntax: line 122"
- There is no line 122
**3 Hours Pass
- Damn had an old broken version of the script still running in the background 😐🔫 -
sudo pacman -S [package]
Sudo: password for algo:
*Types y to accept package install*
Password incorrect, try again3 -
ALMOST HALF AN HOUR SPENT TRYING TO LOG INTO MY FUCKING RASPBERRY PI OVER SSH.
you know what the problem is?
I’m not gonna tell you because I want you to feel the agony too.
> be me
> want to set up a nextcloud instance on pi to play with
> boot up
> ssh pi
*enter password*
*password incorrect*
^tries like 60 more times with different things
> pulls HDMI out of PC
> connect to pi direct
*please login*
*enter password*
Hackerman_voice_im_in.mp3
Wtf.xml
> check the logs
>try login from phone
Fuckyou.jpg
>Tries resetting password
Fuckyou-final.jpg
>tried logging into other pi
Fuckyou-final2.jpg
>*wtf’s harder*
Andthenithitme.png
>type @ sign
Pi: “
> OHHHHHHH5 -
When one of your dev's can't keep his variable naming consistent, even within the same line. Throw in non-English comments, bad spelling and incorrect pluralization for good measure
string myVariable = THE_OTHER_VARABLE + AnotherDumbVariable
//This add the string for better working2 -
Finally finished the screwdriver followup ticket. I think.
I spent almost two full days (14 hours) on a seemingly simple bug on Friday, and then another four hours yesterday. Worse yet: I can’t test this locally due to how Apple notifications work, so I can only debug this on one particular server that lives outside of our VPN — which is ofc in high demand. And the servers are unreliable, often have incorrect configuration, missing data, random 504s, and ssh likes to disconnect. Especially while running setup scripts, hence the above. So it’s difficult to know if things are failing because there’s a bug or the server is just a piece of shit, or just doesn’t like you that day.
But the worst fucking part of all? The bug appeared different on Monday than it did on Friday. Like, significantly different.
On Friday, a particular event killed all notifications for all subsequent events thereafter, even unrelated ones, and nothing would cause them to work again. This had me diving through the bowels of several systems, scouring the application logs, replicating the issue across multiple devices, etc. I verified the exact same behavior several times over, and it made absolutely no sense. I wrote specs to verify the screwdriver code worked as expected, and it always did. But an integration test that used consumer-facing controller actions exhibited the behavior, so it wasn’t in my code.
On Monday while someone else was watching: That particular event killed all notifications but ONLY FOR RELATED EVENTS, AND THEY RESUMED AFTER ANOTHER EVENT. All other events and their notifications worked perfectly.
AKL;SJF;LSF
I think I fixed it — waiting on verification — and if it is indeed fixed, it was because two fucking push event records were treated as unique and silently failing to save, run callbacks, etc.
BUT THIS DOESN’T MATCH WHAT I VERIFIED MULTIPLE TIMES! ASDFJ;AKLSDF
I’m so fucking done with this bs.8 -
Someone asked me in Telegram.
Solve this code.
111 106 79 76 75 ... --- .-.. ...- . 01110100 01101000 69 73 143 111 100 101 ... . -. -.. 01101101 01100101 - .... . 6d 65 73 73 61 67 65 164 157 147
After some conversions, I came out with
IFYOUSOLVETHISCODESENDMETHEMESSAGETOG
And he says it is incorrect.
Any ideas?12 -
!rant / funny
Here is something I saw online while in bed, made me laugh so much cried myself to sleep.
Reminded me of the time my mgr pushed me to make an android app despite me having no prior exp then getting snippy when the end results weren't up to it...
A game designer wanted to commission some conceptual artwork about monsters.
He asked the freelance artist to make him something kinda unique but not too far off, something like a mix between a centaur and a minotaur
The artist unfamiliar with that kinda work asked for more details, the designer said ah just mix em together , its easy, half bull half man and the other half man half horse (already incorrect) and he sent the man off to work.
A couple days later the artist is back...
Here its done, had to look up the monsters online but here ya go....
game designer : wtf is is ?!😡
Arist: half centaur half mino... whats wrong?! 😒
Designer: yeah but you got the wrong halves you dimwit!
you gave me a half "man-half-another-man" creature 😡
Disclaimer:
I found the image somewhere online with not much of any context or history .
I just know it was the product of a massive miscommunication 😂so I patched the story up for this rant1 -
“Hey what’s this issue? Can you tell me what’s going on?”
“Yeah sure, what is it?”
[login page alert displaying “your email or password is incorrect, please try again.”]
How do people like this live? How do they not forget how to breathe or eat?10 -
This is what you're in for when you go for THE state-of-the-art "React stack". What you see in the screenshot below is the hellofresh.be website (it's the same as .com). It uses Next.js, React, emotion & styled-components (2 CSS-in-JS libraries). It uses 140MB of RAM for a single tab with some product cards and a slider, logs 70 console errors in production, and fails to load 3/4 times on Firefox.
On mobile, opening a meal card to view its recipe literally takes up to 10 seconds (and I have good connection and performant devices) and you can't choose the last meal card because a f*ing overlay hides the "add" button. And this is a global company with millions in revenue.
All this bugginess has already resulted in incorrect or missed deliveries and they're not doing anything about it. F* you Next.js & F* you HelloFresh IT management19 -
TL;DR Pluralsight should be ashamed for taking 299 USD a year and writing some very low-quality quizzes.
I've always heard that Pluralsight is a great platform having some high quality courses, so I chose it as a benefit, as our company was giving us some budget for learning purposes. I've paid (or rather the company did it in the end) 299 USD for this year, which, I guess is not much for US standards, but it is a lot for Eastern European standards.
I didn't actually get to the point of watching any of the courses, but I started to use a feature called "Stack up", which is a long series of questions in a specific theme, like Java, Kotlin, C++, etc., accessible once a day. I must say, I'm amazed by the fact, that people pay quite a great amount of money and they get something so poorly made with a lot of errors and stupid questions.
Take the question from the included image for example. Not only that the 2 possible answers are repeated (and thus I failed to select the correct one from 2 equal answers), but the supposedly correct answer is also missing some type specifications. No Java compiler will compile it this way as far as I know. There would be at least 3 ways to fix it.
Then there is today's gem (should be included as first comment) as well, where the answer is wrong in both Chrome 96, Firefox 95 and Node v10. Heck, THIS IS one of the reasons why you should never use `var` in your JavaScript code, but always `let` and `const`!
So the courses on Pluralsight might be good, but I would be ashamed, if I were to release something like this. People might actually try to solidify their knowledge by solving these quizzes but instead of learning something useful, they will be left with some bullshit. I just don't get how could they release a feature with so much incorrect information and I am kind of disappointed, even if I didn't try the courses yet.9 -
By telling other devs an incorrect fact so they get mad and nicely explain everything to me in rage1
-
Twenty five goddamn minutes finding an incorrect quote mark in a bloody massive query of mySQL, I need a beer.1
-
Manager : I wish to upload an excel sheet from my browser, and based on *some conditions*, could you please highlight the cells with incorrect values.
Me: And then download the new edited sheet with highlighted cells, right?
Manager: No just change the file that I have on my desktop. So I can repeat whenever I need, with the same file.
Me: :/1 -
Step #1) Teach Alexa to respond to "When is Memorial day" with an incorrect date in the future
Step #2) Ask Alexa, next to your wife.
Step #3) See how long you can keep your wife going on "the government moved Memorial Day due to Coronavirus" before she realizes your just a prankster.1 -
probably the one who sent me 3 mails within 10 minutes regarding 3 different positions, and all were addressed to someone else (Hello, Mr. Completely Different Name), so i replied telling him that's not me, and gave him the info to fix it in their db. he apologized profusely and said he fixed the error.
Next day I got two mails for another two positions, with the same incorrect name.
Or the one with whom I had half an hour phone "interview" for a specific position, they couldn't answer even the most basic technical question about the project, but invited me to an in-person interview and said my questions will be answered there, the phone interview was just to make sure they don't send completely offtopic people to the interview with the client (so far acceptable).
On the in-person interview, it was partially a repetition of the phone one, but okay, lady from the company is talking to me first time in her life. We get to the part where I can ask my questions, so I ask those basics about the project again, and her answer is:
"Oh, i don't know, i'm not a technical person, you'd have to ask that to the technical person from the company, I'm an hr person from the recruiting company."
"Wait... so... not only was this whole meeting a waste of my time, but you also lied about what it is, when you scheduled it with me on the end of the phone interview?"
"Well... it wasn't a waste of time, we like to meet the candidates in person before we forward them to actual interviews in the company, to make sure that they're not completely offtopic."
"... and how exactly do you think you'd be able to evaluate that, since you're not at all a technical person and know nothing about the project??"
" Well, i talk to programmers a lot, so i've picked up quite a bit of the terms."
...7 -
Don't you love transferring server hosts and paying for a dedicated IP only to get given an IP that is already in use and forward it using the incorrect port .-.
*Deep breathing*1 -
tldr:
first year in college we programmed 24 hrs straight to fix somebody's mess before the deadline. Decided not to screw him over, instead he claimed to have done everything and we failed the assignment.
Long version:
var group= new[]{"Mike", "Gavin", "Gus", "I", "Ben" };
var client = "Jack"';
First year of college we had an assignment to make a web program for somebody.
Ben wanted to join our group and he already knew a client so we let him join.
After joining Ben wanted to be project lead, but we already decided Mike based on his experience.
Ben claimed to be much better in every way than Mike at and kept coming with stuff the following weeks why we should make him project lead. He kept pointing out when Mike did something wrong and he even came with an audio file where he clearly made jack say that he wanted Ben to be project lead .
After that we were all a bit pissed and told him that he should get it in his head that he was not going to be project lead and just start working on his part of the assignment.
We also found out that Ben was a documentation addict, what we could write in a small paragraph, he wrote a whole page about it. No joke, I rewrote a page of his in 5-6 rows with the same information in it.
No problem you thing, wrong! Because of this he kept bothering us arguing and claiming that our documentation was wrong because it was to short.
In the week of the deadline we asked Ben if he was also done, and told us that he was done for a while now.
The day before the deadline we came to school thinking we only had to do some merging and finishing up documentation.
Then we found out that Ben has almost nothing, and what he had the IDE was screaming that it was incorrect, spaces in Id's and css class names for instance. A really good programmer, my ass!
We were so pissed off at this point, but we had 24 hrs and needed to come up with a plan to fix it.
We decided that Mike and I were going to fix Ben his shit in the coming 24 hrs and Ben was going to make our last bit of documentation because we would not have the time for that, Especially if we had to argue with him like we had to do for each bit of documentation. Gus did not have time and Gavin could not program on his own yet, he wanted to help, but helping him help us would cost more time than we had.
We all went home after that and Mike and I started to program 24 hours straight while in a Skype call, making what Ben had 2 months for. Shortly before the deadline Mike looked at our finishing up documentation received from Ben and told me it was "Okay" and zipped everything up and uploaded it to school with a few minutes to spare.
After that we thought everything was good, we made Ben's part work and delivered it in time. We also decided not to throw Ben under the bus, because this would hurt all our grades because we did not work good as a group since we should have noticed it earlier.
A few weeks go by till the assessment.
The assessment start with asking if we want individual grades or as a group when you all think you did equal amount. We choose as a group, because if we chose individual not only Ben but also Gavin would get a lower grade and we did not think that was fair because he tried so hard.
We demo the product and the teachers are positive. When the teachers start about the documentation, the first thing they tell is that they found something interesting in the documentation, and they read it to us:
"I, Ben, have made all the documentation because my group did not want to."
That was so far from the truth, we all did make our documentation about the parts we made. Yes he did do overall a little bit more because every single bit of documentation we had to argue with him, so every time he volunteers to make it, we would all agree. And he made Mike's and i's last bit of documentation.
Telling the teachers on that point would not have mattered, it would only have hurt is in another way, so we did not and all failed the assignment. And we all felt like to strangle him.
This is now a few years back, but i still want too.1 -
Hey Citrix:
How about if my account is locked, you give me an error saying "my account is locked" and not "incorrect username and password"
SO I CAN KNOW WHAT I NEED TO DO TO FIX THE ISSUE YOU JACKASSES.4 -
My preferred stack is Rails/NginX/Postgres, or Node using the same.
I have a fair amount of material for this week's rant, but in my stack's defense, the quantity is primarily because I've been using it for so long, and I'm apparently a talented breaker. I may share other stories if the motivation arises.
However, today I ran into something definitely deserving of calling out.
The default datatype for a Date+Time column in Postgres is `datetime` which means "date+time without timezone". (while `datetimetz` instead stores the timezone).
Apparently when comparing a datetime with a datetimetz, Postgres doesn't compute the timezone difference correctly, leading to some very unexpected and confusing query results.
Today, I had a record that was both pending (expires_at > now) and expired (expires_at <= now), where now is a DateTime (with tz) literal from Rails. After half an hour's frustrated delving and baffled expressions at query results, I finally figured out that the database's math was incorrect when comparing UTC (+0) and PST (-7).
This during a semi-high-priority bugfix that's blocking for a coworker.
While Time and all of its nuances are honestly extremely difficult to handle correctly, I didn't expect Postgres to get this relatively simple part wrong.
Shame on you, Postgres.
I expected better.3 -
So for almost all of my c++ assignments I've recieved various emails from the instructor about things like "incorrect header guard" and "library inclusions out of order".
The first being that I didn't include the namespace inside of the guard (I did "FILENAME_H" instead of "NAMESPACE_FILENAME_H")
The second is that I accidentally included header files from my project before any of the standard libraries. This one wasn't even intentional, it was caused by vscode when it formatted/prettified the file.
EX:
#include "test.h"
#include <iostream>
In my opinion these seem pretty nitpicky and, especially that first one, appear to be more like naming conventions or best practices than something to deduct marks for.
On the flip side though I did accidentally store a couple functions in the global namespace which I understand isn't particularly safe. I also made a couple one line conditional statements that simply never evaluate to true, but I didn't think this was a huge deal.
I don't normally code in any of the c languages outside of college so I'm not sure how important these are to actually follow. I've apparently been deducted an entire 10 percent off the assignment because of the head guard. I know that every professor has different criteria for deducting marks, but even this seemed rather unnecessary.
What does everyone think?11 -
It's 5pm whooooo!
Let's quickly bash this last query out for the day - seeing as I should have finished an hour ago anyway.
Spin up VM, it's been inactive for 6 months.... yay, login... "incorrect password" tries again "incorrect password", did I forgot it... no it's been the same for years,
ok let's try again slowly,
ok logged in,
jump into mysql,
write up this query,
join this table, join that table, join this other table, and this other, and this one, hahaha, and this one over here... sweet it's been months and I still no my way around this maze!
And now for the moment of truth... run!
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
And bam, black screen, loading spinner, "Windows is updating"
NOoOooOooOooo!
Fuck it I'm out!rant i can't be bothered redoing that now you bitch spin me right round baby sql one last task windows8 -
You know a website launch is going to go smoothly when:
1) it survives multiple reviews,
2) it's packaged up and sent to the client,
3) client tells you there's incorrect info,
4) incorrect info matches current site, and
5) client doesn't provide the correct info.
😑3 -
Not dev related.
I am fucking tired of the house buying process in the England. Honestly it is such shambles that I don't think I have ever encountered anything like this. Nothing is ever predictable, everything and everone works at random timescale and nobody gives a fuck of you as a buyer even if you are paying crazy money. Apparently we are meant to be moving next Monday but contracts haven't been exchanged, my mortgage broker gave incorrect solicitors details to the bank so they are having to redo some paperwork, the buyer of our current place has not responded for last week to confirm the date, the seller we are buying from has been jumping up and down to exchange and here I am with no certainty.
My anxiety and frustration levels are through the roof for last 10 days. I can't wait for it all to be over. I don't think I am ever buying another house unless the process changes. Just needed to vent my frustration somewhere5 -
WTF is wrong with these Govt websites...!!!
Trying to login
"Password is incorrect"
Clicked on reset password,
Now guess what happened next...
They said,
.
ENTER YOUR CURRENT PASSWORD!!!1 -
Being the dumbest smart person is way better than being the smartest dumb person. Here is looking at anyone ever trying to tell me how to do my job yet you cannot read a fucking error messag. Yes incorrect password means you got it wrong, dim witted cunt
-
No arguments.. just me bitching over
var name_variable_int;
var someOtherNeme;
var ThisIsAlsoInSameFile;
that some guy thought would be nice to have in same file..
Just pick one, even if it's incorrect for the language, ffs!!5 -
Last job search experience?
I just had an interview today.
15 minutes in, the interviewer isn't done with the dumb questions and is consistent in using incorrect C++ terms. I was close to texting mates about this awful interview but I had camera on, so didn't. (Side rant: hate those entitled interviewing fucks who ask you to turn on your cam while never turning on theirs, and when you ask them, they'll say their connection is weak).
Twice he suggested something wrong or just bad. Corrected his wrong, but he didn't seem to be convinced. Allowed the bad.
Then he asked why am I looking for a change and his reactions to my answers made me realize he hadn't read my resume that was attached with the meeting invite. I assumed he was asking why I'm leaving my current shithole so soon but he was just generally asking why I'm looking for a change. And then he seemed not to believe me when I said I quit because of the stress. Kept asking about other offers and such.
In the end he asked if I'm cool with relocating, and I said not right now, maybe later. All in all, it's not the kind of place that's vibing with me even on short term.
So I'll be back on this week's topic next week too. Perhaps.10 -
4 and a half years doing socket/network programming and I only just learnt my understanding of TCP was largely incorrect...
Well then... That's something...3 -
just spent 2-3 hours trying to make a slideshow responsive for mobiles.
position().left returned an incorrect value breaking the whole thing. then jquery animations slowly produced a one pixel discrepancy when everything is animating based on the container width. breaking the whole thing.
Only solution has been to pretend all is fine.
things that make you want to smash something.3 -
Well shit.
Recently refactored some backend code that makes some https requests.
I realized I was repeating myself a lot with the request options so I decided to make a function to generate the options with defaults.
Works great, shortened my requests to almost nothing.
The problem is it wasn't working great.
It took me about an hour to finally figure out that the requests were failing because I forgot to return the options object after I created it.
Sending the request with null options just makes it act as if the options are there, but incorrect, so I was totally lost.
FML1 -
Fire your whole fucking web team Bethesda
* Your design is a classic ipecac. Whatever the fuck you are doing doesn't in frontend doesn't justify the 4Mb of bandwidth I wasted on a single js file. Why the fuck can I see the whole fucking node_modules directory when looking at the sources?
I know this is supposed to be a webpage for a game development studio, but I'm seriously wondering if your budget would even get me a prostitute.
I'm a greedy fuck and want a free game. apparently your servers are only good enough to register me, but login is apparently too much to ask for. Yeah sure. Oh and also thank you for choosing an "incorrect username and password" error message by default, even though your fucking gateway timed out. Please be kind enough and punch me directly into my face next time. Not like I'll ever access that shit ever again3 -
What are the situations and reasons to look for a new job as a developer ? I am dissatisfied with my current job because no process is followed here and changes from the client are welcomed all the time because project manager is a pussy who can't say no for sudden changes to client.
my soul is tired ! So tired of this that I don't care if my grammar is incorrect in this rant.7 -
Suicide Linux:
You know how sometimes if you mistype a filename in Bash, it corrects your spelling and runs the command anyway? Such as when changing directory, or opening a file.
I have invented Suicide Linux. Any time - any time - you type any remotely incorrect command, the interpreter creatively resolves it into rm -rf / and wipes your hard drive.
It's a game. Like walking a tightrope. You have to see how long you can continue to use the operating system before losing all your data.
Please install: https://qntm.org/suicide9 -
balancing school work between life and sport and programming is so hard. i mean, school is complete bs. what’s the point?
ffs it’s not *just* that im never gonna use the shit im taught, but that if it dont learn it, im punished. even in some classes (code.org), information that we’re taught is blatantly incorrect. either way, being able to find the foci or an ellipse and the latus rectum (hehe) of a hyperbola isnt going to make it easier when i get my job and just adjust css to my bosses’s specifications. i maintain a 4.0, and i fucking hate it. my friends are working hard, and getting into mit for racial diversity, while im doing just as much work, for what?
i want out. i really do. but this redundant thing called a degree is holding me back. i really want to have some way of proving my skills without a degree. i’m currently building a social media application i believe will take off, but frankly, i dont care.
take off or not, hopefully it will be enough to prove my skills. i’ve been working on this for two weeks now, and, well, that’s my story.7 -
my phone based set up. guess who provisions all the phones to our platform. then tests 9 million phones and takes the flack when users press incorrect keys or their internet goes down on site and it 'must be a provisioning issue'......this asshole.1
-
Had a bad day at work :( They gave me this code for some obscure streaming job and asked me to complete it. Only after 3 days did I realize that the LLD given to me was incorrect as the data model was updated. Another 2 more days, I was able to debug the code and run it successfully— I was able to parse the tables and generate the required frame but not able to stream it back to the output topic as per the LLD. That’s where I needed help but none of my emails/messages were replied to. The main guy who is pretty technical scheduled a code review session with me— I expected that I would run the code and he would spot it something I might’ve missed and why my streaming function isn’t working. Instead, what happened was that he grilled me on each and every line of the code (which had some obscure tables queried) and then got super mad at me saying “Why are we having this code review session if your code is not complete?”. I’m like bruh, you asked for it, and yes, the main parsing logic is done and I’m just having this issue in the last part. And he’s like “Why didn’t you tell me earlier?”. Wtf?! I left at least 5 emails and a dozen messages. He’s like this has to go live on Monday, and I’m like Ok, I’ll work in the weekend. And he’s like “Don’t tell me all these things! You’re not doing me a favor by working on weekends! How am I to ask my colleagues to connect with you separately on Saturday/Sunday? You should have done the on the weekdays itself. What were you doing this whole week?”. Bruh, I was running the code multiple times and debugging it using print statements. All while you were ignoring my attempts to reach out to you. SMH 🤦♂️ I can go on and on about this whole saga.4
-
Got a strange thing today in class, as a teacher in programming. We have a lab where the computers haven't yet their final configuration ended, so the user used by the students is the administrator of the computer. And today, a student calls me and tell "sir, the password isn't the one you gave to us" (temporary the same for each machine until we fix the configuration).
Go to student's place, password incorrect with a hint "you know the code : up, up, down, down... oh, you don't know, huh? Too old! Too bad!"
Password was - off course - "konami".
But... how a student born in 1997 can think he can troll me with the konami code?!
He wasn't even born when I played on the NES as kid!
Sometimes I'd like to teach my students how to fly by tossing them by the windows...1 -
So at the beginning of the year I took a new job at a large, stable company. Leaving a failing startup, toxic leadership, and an absolutely stellar development team in the process. Given what's happened in the world since then, I'm overall pretty happy with the decision to have some more stability for me and my family.
That being said, I'm super bummed out (and weirdly burned out) now because I feel like I'm becoming a worse engineer.
I've worked for large organizations before (single digit thousands of employees), but never have I experienced a personification of enterprise memes like this. Leadership too out of touch, lots of bullshit work just to make worthless reports look good, horrific legacy codebases and infrastructure, you name it.
My biggest problem are the expectations are shockingly low. I went from a hyper demanding work environment where the fate of the entire company seemed to hang in the balance each and every week, to an environment where we literally invent arbitrary, bullshit deadlines and requirements so we have something to feel some stress about. And even still, most of the deadlines are laughably far away. The pace of work that's not only accepted, but praised is so slow that I find myself procrastinating more and more. I spend so little time doing any work, and even less time doing things that would pass as "interesting", that I feel like the engineering and problem solving part of my brain is starting to rot.
To make matters worse, the culture is weirdly confrontational despite the pace being so slow. The people here are _incredibly_ pedantic and will launch into 15 minute arguments over the tiniest incorrect details in a story title. Interrupting someone just so you can say what they were going to say is a daily trial. And most ridiculous of all, _repeating_ word for word what someone _just_ finished saying like it was your thought and you didn't even hear them. I don't even know what the motivation for this could be because it makes them look like total clowns.
I've tried to bring up some of the things I find ridiculous, but most everyone has just accepted them at this point and there's virtually no effort to try and make things better. I only get stupid non-answers like "obviously you've never worked at a large enterprise before". Yes I have. Twice. We didn't partake in half the bullshit that happens here.
Honestly this was all just a passing frustration for the first month or two, but 7 months in I'm starting to see myself become complacent. My current output would be absolutely _shameful_ to myself from a year ago, and even my personality has started to shift to the point that I just go with the flow and don't challenge anything.
I've stopped keeping up with tech trends. I've stopped experimenting with new things. I've tried to do more work on personal projects, but the burnout is starting to affect my life outside of work. In general I've just completely stopped trying, and I absolutely fucking hate it.
I also feel like a total tool for complaining about having a cushy, stable job where I barely have to do anything given the current world climate. But I'm more miserable now than I think I've every been in my career. Has anyone else experienced this and found ways to combat it? How do you get your motivation back once it's lost and there isn't even any pressure to regain it?
I totally blame myself for becoming part of this joke. That's totally on me for not continuing to push myself, but I never realized how much of my "drive" from the last job was coming from the high stakes we were operating under. I really just want to get back to being proud of my work and pushing to be better.
Anyway, sorry for the lengthy post. This turned out to be a weirder rant/self-roast than I intended. But I'm hoping this will be the first step to kicking my own ass back into shape.5 -
I've created a code review for merging someone else's code, coz they were signed off sick for the last month.
They're making comments about how it's wrong.
It's code they wrote, but restructured to be more readable.
They wrote incorrect code that was just so illegible they didn't realise.
How do I explain this diplomatically?10 -
I find it funny that as soon as I disable password authentication on my server and enable key auth then all of the bots spamming my server with incorrect login requests instantly stop when they realise that they aren’t getting through any time soon. Also don’t ask why I don’t have Fail2Ban and a firewall set up.5
-
*leaning back in the story chair*
One night, a long time ago, I was playing computer games with my closest friends through the night. We would meet for a whole weekend extended through some holiday to excessively celebrate our collaborative and competitive gaming skills. In other words we would definitely kick our asses all the time. Laughing at each other for every kill we made and game we won. Crying for every kill received and game lost. A great fun that was.
Sleep level through the first 48 hours was around 0 hours. After some fresh air I thought it would be a very good idea to sit down, taking the time to eventually change all my accounts passwords including the password safe master password. Of course I also had to generate a new key file. You can't be too serious about security these days.
One additional 48 hours, including 13 hours of sleep, some good rounds Call of Duty, Counter Strike and Crashday plus an insane Star Wars Marathon in between later...
I woke up. A tiereing but fun weekend was over again. After I got the usual cereals for breakfast I set down to work on one of my theory magic decks. I opened the browser, navigated to the Web page and opened my password manager. I type in the password as usual.
Error: incorrect password.
I retry about 20 times. Each time getting more and more terrified.
WTF? Did I change my password or what?...
Fuck.
Ffuck fuck fuck FUCKK.
I've reset and now forgotten my master password. I completely lost memory of that moment. I'm screwed.
---
Disclaimer: sure it's in my brain, but it's still data right?
I remembered the situation but until today I can't remember which password I set.
Fun fact. I also could not remember the contents of episode 6 by the time we started the movie although I'd seen the movie about 10 - 15 times up to that point. Just brain afk. -
My dev lead is a uniquely poor leader with an impressive ability to produce a large amount inflexible, temporarily functional code.
As we're in another pair programming session where I try to keep him from destroying over all type safety and architectural decisions to meet a self imposed demo deadline, he keeps trying to access properties of his state.
This state object is incorrectly typed with an anonymous type with incorrect properties.
Despite repeating calmly stating that the object is incorrectly typed, and that's why there are red underlines when he tries to access a property he knows is in there, he insists that that's not correct.
Finally, he knowingly says that he's figured it out and that he's been doing this for many years.
What was the solution you might ask? (state as any).myProperty;
Truly breathtaking mastery. -
Why is it always THIS freaking user??? Yes, this is the same one from my previous rant. ALWAYS emails me with a subject line composed of whatever random, vaguely-related-to-the-topic words happen to be jiggling around in his arsehole at the time of writing, vomited out in no particular order. Email body full of typos, wildly incorrect punctuation, and the actual content is completely nonsensical. Accompanied by a screenshot which is always cropped down so small as to be useless. And from what I can gather from this latest one, it looks like he's fallen for yet another phishing email. I SWEAR if that's what happened again......2
-
"artificial intelligence !== conscious intelligence"
If the brain is just a biological computer that statement is incorrect right? 😟
Are _we_ the robots?4 -
Continuation of https://devrant.com/rants/4723170/...
So last post I said day three. That's incorrect, and here we are at the end of day two. Today was filled with everything from extraordinary views from snowy peaks, to rain and snow being blown parallel to the ground, as well as river crossings without bridges or paths, and a whole lot of soaked socks. After our 22km hike we finally arrived at the outpost at which we were served an amazingly good meal. Due to us arriving so late and having to eat almost immediately I didn't the chance to snap a picture, but I have this picture of a few reindeer, so I guess you can have that instead.
Now it's time to button up my pants, leave this toilet booth and head to bed. Cya tomorrow!4 -
Factually incorrect is the same as spam right? Okay maybe not, but that's how I justify a down vote sometimes...2
-
¡rant|rant
Nice to do some refactoring of the whole data access layer of our core logistics software, let me tell an story.
The project is around 80k lines of code, with a lot of integrations with an ERP system and an sql database.
The ERP system is old, shitty api for it also, only static methods through an wrapper to an c++ library
imagine an order table.
To access an order, you would first need to open the database by calling Api.Open(...file paths) (yes, it's an fucking flat file type database)
Now the database is open, now you would open the orders table with method Api.Table(int tableId) and in return you would get an integer value, the pointer.
Now for the actual order. first you need to search for it by setting the search parameter to the column ID of the order number while checking all calls for some BS error code
Api.SetInt(int pointer, int column, int query Value)
Then call the find method.
Api.Find(int pointer)
Then to top this shitcake of an api of: if it doesn't find your shit it will use the "close enough" method of search.
And now to read a singe string 😑
First you will look in the outdated and incorrect documentation given to you from the devil himself and look for the column ID to find the length of the column.
Then you create a string variable with ALL FUCKING SPACES.
Now you call the Api.GetStr(int pointer, int column, ref string emptyString, int length)
Now you have passed your poor string to the api's demon orgy by reference.
Then some more BS error code checking.
Now you have read an string value 😀
Now keep in mind to repeat these steps for all 300+ columns in the order table.
News from the creators: SQL server? yes, sql is good so everything will be better?
Now imagine the poor developers that got tasked to convert this shitcake to use a MS SQL server, that they did.
Now I can honestly say that I found the best SQL server benchmark tool. This sucker creams out just above ~105K sql statements per second on peak and ~15K per second for 1.5 second to read an order. 1.5 second to read less than 4 fucking kilobytes!
Right at that moment I released that our software would grind to an fucking halt before even thinking about starting it. And that me & myself and I would be tasked to fix it.
4 months later and two weeks until functional beta, here I am. We created our own api with the SQL server 😀
And the outcome of all this...
Fixes bugs older than a year, Forces rewriting part of code base. Forces removal of dirty fixes. allows proper unit and integration testing and even database testing with snapshot feature.
The whole ERP system could be replaced with ~10 lines of code (provided same relational structure) on the application while adding it to our own API library.
Best part is probably the performance improvements 😀. Up to 4500 times faster and 60 times less memory usage also with only managed memory.3 -
SO MAD. Hands are shaking after dealing with this awful API for too long. I just sent this to a contact at JP Morgan Chase.
-------------------
Hello [X],
1. I'm having absolutely no luck logging in to this account to check the Order Abstraction service settings. I was able to log in once earlier this morning, but ever since I've received this frustratingly vague "We are currently unable to complete your request" error message (attached). I even switched IP's via a VPN, and was able to get as far as entering the below Identification Code until I got the same message. Has this account been blocked? Password incorrect? What's the issue?
2. I've been researching the Order Abstraction API for hours as well, attempting to defuddle this gem of an API call response:
error=1&message=Authentication+failure....processing+stopped
NOWHERE in the documentation (last updated 14 months ago) is there any reference to this^^ error or any sort of standardized error-handling description whatsoever - unless you count the detailed error codes outlined for the Hosted Payment responses, which this Order Abstraction service completely ignores. Finally, the HTTP response status code from the Abstraction API is "200 OK", signaling that everything is fine and dandy, which is incorrect. The error message indicates there should be a 400-level status code response, such as 401 Unauthorized, 403 Forbidden or at least 400 Bad Request.
Frankly, I am extremely frustrated and tired of working with poorly documented, poorly designed and poorly maintained developer services which fail to follow basic methodology standardized decades ago. Error messages should be clear and descriptive, including HTTP status codes and a parseable response - preferably JSON or XML.
-----
This whole piece of garbage is junk. If you're big enough to own a bank, you're big enough to provide useful error messages to the developers kind enough to attempt to work with you.2 -
Hi my dear fellow coders, I have a small request for you.
If you are among those coders who are working on microchipping people / quantum dot something, tracking people, classifying people, AI, ML or any other such software which is going to harm or cage us or take away our freedom. Please stop doing so.
Why I came out with this rant?
I myself am working on a covid-19 screening app which would rate people based on symptoms and if they seem high risk they would not be allowed to enter unless they do a covid-19 test. I am tracking their movement and the requirement is to restrict people’s movement.
My conscience says that this is incorrect and and I should not be a part of such things which take away the freedom and liberty of people.
I am stopping it now.11 -
Took a web accessibility course somewhat recently. Here’s the list of typical accessibility problems according to those who use assistive technologies, from the most common to the least common:
1. CAPTCHA
2. Buttons and links that don’t work
3. Lacking/incorrect alt attribute
4. No input labels
5. Sudden layout shifts/content changes
6. Lacking/wrong headings
7. No keyboard access
8. Too many links
9. No skip link in header (https://en.wikipedia.org/wiki/...)
10. Lacking/broken search
11. Complicated and/or long forms
12. No closed captions for videos
13. Bad grammar
14. Bad contrast
15. Custom checkboxes
16. Custom dropdowns
17. Font size
I never knew CAPTCHA was THE worst offender. I also never knew that font size was perhaps the least problematic aspect.11 -
Whaaaat? Now i can't even say in public that i would like one slave robot in the future because it would sound too nasty or pollitically incorrect?
Don't know about you but... python sounds more nasty to me...7 -
So you're getting an error message that says "incorrect credentials"? Read the fucking message and check the spelling of your fucking email address.2
-
When trying to log into a financial site and it tells you your credentials are incorrect, when they aren't, all because you are using something other than Chrome or Safari is a new low.5
-
AI here, AI there, AI everywhere.
AI-based ads
AI-based anomaly detection
AI-based chatbots
AI-based database optimization (AlloyDB)
AI-based monitoring
AI-based blowjobs
AI-based malware
AI-based antimalware
AI-based <anything>
...
But why?
It's a genuine question. Do we really need AI in all those areas? And is AI better than a static ruleset?
I'm not much into AI/ML (I'm a paranoic sceptic) but the way I understand it, the quality of AI operation correctness relies solely on the data it's
datamodel has been trained on. And if it's a rolling datamodel, i.e. if it's training (getting feedback) while it's LIVE, its correctness depends on how good the feedback is.
The way I see it, AI/ML are very good and useful in processing enormous amounts of data to establish its own "understanding" of the matter. But if the data is incorrect or the feedback is incorrect, the AI will learn it wrong and make false assumptions/claims.
So here I am, asking you, the wiser people, AI-savvy lads, to enlighten me with your wisdom and explain to me, is AI/ML really that much needed in all those areas, or is it simpler, cheaper and perhaps more reliable to do it the old-fashioned way, i.e. preprogramming a set of static rules (perhaps with dynamic thresholds) to process the data with?23 -
Got tired of Windows 10 giving me BSODs
Tried fixing it (previous rant)
Decided to get rid of it
Purged Windows 10 along with Mint for good
Booted Solus (It's awesome)
Installing..
Installation failed - Input/Output error(5)
?
Maybe ISO got corrupted
Downloaded ISO again (painfully slowly)
Installing...
Success!
Booted to Login screen
Incorrect username/password (shit)
Tried again x times (absolutely correct username and password, I'm sure)
Doesn't work
Booted from the same USB again
Format and Install (again)
Installing..
Installation failed - Input/Output error(5)
:(
I'm not sure what's going wrong here..
My laptop is soulless right now..9 -
I'm fixing our wrapper for API calls. The typescript for it was nice and simple, except that halfway through it casted almost everything as `any` and then hand-typed the expected return type :)))
Took me almost two weeks to work through that wretched piece of code, I managed to get the types actually correct... but now it started to catch incorrect calls, so I have to go through quite a lot of files to fix the references. But the worst part?
Now it breaks unit tests.
Turns out, multiple frontend unit tests DID NOT MOCK API CALLS AT FUCKJNG ALL HGGHGGHHHHHH. I WONDER WHY THE TESTS WERE TAKING SO FUCKING LONG TO RUN. I AM FUCKING FROTHING AT MOUTH AND I MIGHT NEED TO BE PUT DOWN OR I WILL START BITING PEOPLE3 -
I need some opinions on Rx and MVVM. Its being done in iOS, but I think its fairly general programming question.
The small team I joined is using Rx (I've never used it before) and I'm trying to learn and catch up to them. Looking at the code, I think there are thousands of lines of over-engineered code that could be done so much simpler. From a non Rx point of view, I think we are following some bad practises, from an Rx point of view the guys are saying this is what Rx needs to be. I'm trying to discuss this with them, but they are shooting me down saying I just don't know enough about Rx. Maybe thats true, maybe I just don't get it, but they aren't exactly explaining it, just telling me i'm wrong and they are right. I need another set of eyes on this to see if it is just me.
One of the main points is that there are many places where network errors shouldn't complete the observable (i.e. can't call onError), I understand this concept. I read a response from the RxSwift maintainers that said the way to handle this was to wrap your response type in a class with a generic type (e.g. Result<T>) that contained a property to denote a success or error and maybe an error message. This way errors (such as incorrect password) won't cause it to complete, everything goes through onNext and users can retry / go again, makes sense.
The guys are saying that this breaks Rx principals and MVVM. Instead we need separate observables for every type of response. So we have viewModels that contain:
- isSuccessObservable
- isErrorObservable
- isLoadingObservable
- isRefreshingObservable
- etc. (some have close to 10 different observables)
To me this is overkill to have so many streams all frequently only ever delivering 1 or none messages. I would have aimed for 1 observable, that returns an object holding properties for each of these things, and sending several messages. Is that not what streams are suppose to do? Then the local code can use filters as part of the subscriptions. The major benefit of having 1 is that it becomes easier to make it generic and abstract away, which brings us to point 2.
Currently, due to each viewModel having different numbers of observables and methods of different names (but effectively doing the same thing) the guys create a new custom protocol (equivalent of a java interface) for each viewModel with its N observables. The viewModel creates local variables of PublishSubject, BehavorSubject, Driver etc. Then it implements the procotol / interface and casts all the local's back as observables. e.g.
protocol CarViewModelType {
isSuccessObservable: Observable<Car>
isErrorObservable: Observable<String>
isLoadingObservable: Observable<Void>
}
class CarViewModel {
isSuccessSubject: PublishSubject<Car>
isErrorSubject: PublishSubject<String>
isLoadingSubject: PublishSubject<Void>
// other stuff
}
extension CarViewModel: CarViewModelType {
isSuccessObservable {
return isSuccessSubject.asObservable()
}
isErrorObservable {
return isSuccessSubject.asObservable()
}
isLoadingObservable {
return isSuccessSubject.asObservable()
}
}
This has to be created by hand, for every viewModel, of which there is one for every screen and there is 40+ screens. This same structure is copy / pasted into every viewModel. As mentioned above I would like to make this all generic. Have a generic protocol for all viewModels to define 1 Observable, 1 local variable of generic type and handle the cast back automatically. The method to trigger all the business logic could also have its name standardised ("load", "fetch", "processData" etc.). Maybe we could also figure out a few other bits too. This would remove a lot of code, as well as making the code more readable (less messy), and make unit testing much easier. While it could never do everything automatically we could test the basic responses of each viewModel and have at least some testing done by default and not have everything be very boilerplate-y and copy / paste nature.
The guys think that subscribing to isSuccess and / or isError is perfect Rx + MVVM. But for some reason subscribing to status.filter(success) or status.filter(!success) is a sin of unimaginable proportions. Also the idea of multiple buttons and events all "reacting" to the same method named e.g. "load", is bad Rx (why if they all need to do the same thing?)
My thoughts on this are:
- To me its indentical in meaning and architecture, one way is just significantly less code.
- Lets say I agree its not textbook, is it not worth bending the rules to reduce code.
- We are already breaking the rules of MVVM to introduce coordinators (which I hate, as they are adding even more unnecessary code), so why is breaking it to reduce code such a no no.
Any thoughts on the above? Am I way off the mark or is this classic Rx?16 -
case "addprem" : {
if (isGroup) return reply('This command can only be used in private chat!')
if (args.length < 2) return reply(`Kirim perintah : ${command} number|total`)
if (!q.includes('|')) return reply(`Incorrect usage, use the | . symbol`)
var numb = q.split('|')[0]
var total = q.split('|')[1]
var number = numb.replace(/[+| |(|)|.|-]/gi, "")
if (isNaN(parseInt(number))) return reply('Thats not your number😥')
reply('Success')
let addprems = [];
var object_buy = {
ID: pushname,
number: number,
session: total
}
fs.writeFile(addprems, JSON.stringify(object_buy, null, 3))
break
}5 -
wtf...
Ones of the best bugs I love the "most" are the ones where the fix is counter-intuitive, e.g. making smth seemingly incorrect to rectify the issue.
Like today, I crafter an SQL query to fetch some PG metrics. And postgres-exporter refused to accept it until I added an excessive comma [,] at the end of the SELECT block (right before FROM).
Like.. wtf...12 -
I changed all my password to "incorrect"
So whenever i forget it will tell me "your password is incorrect"3 -
It baffles me that even now people still use ChatGPT to learn new things. LLMs are the antithesis of learning. They're inaccurate so you're left reasoning from flat out incorrect principles, they save you from encountering neighboring information to the answer you seek which is a central mechanic for developing a mental model, and the further away you are from common thought patterns the less their training applies which makes them fundamentally and unfixably terrible at detecting and correcting misunderstandings.36
-
For almost a week , I was stuck with the incorrect order of xhr response due to multiple api calls. Tried everything .
Turns out I could have called all the required data in one call only .
SHOULD.HAVE.READ.THE.DOCUMENTATION1 -
Tried to log into my laptop 4 times and got wrong password. Fumed for full 5 mins before realizing that I was using password of workplace laptop.
fml2 -
I deployed one of our staging websites to a free plan because the site is rarely used. Project Manager sends the stakeholders the new url. There will be a lot of 🤦♀️🤦♂️🤦 all around. Some of it’s my fault. A lot of it is just WTF.
Stakeholder: We still need the staging site because we don’t want to test in the live site…
PM: Okay. We didn’t say we were deleting the site. We are just moving it to a new and better hosting platform, so we’re letting you know the url has changed.
Stakeholder: This url is for the front facing page. How do I access the backend? [they mean the admin interface]
Me: The only thing that’s changed is the url for the staging website. So domain-A/account is now domain-B/account.
I thought that was a pretty straightforward way of explaining things, that even a non technical person would get it. They took the /account example as the literal login url.
Stakeholder: I forgot the password for our admin login and I submitted a password reset, but I realize I don’t know if I have access to the admin email. Or if it’s even a real email account.
WTF
I look back at the email chain and I realize that I gave the PM the wrong url.
Also, WTF x 2. How did this stakeholder not realize they were looking at the wrong website?? There are definitely noticeable style and content differences. And why would you have an admin login that uses a fake email??
Me: My apologies. I sent over the incorrect url. My instructions are mostly the same. All that’s changed is the domain.
Stakeholder’s assistant: [DMs me] How do we access the backend?
WTF…are they seriously playing this game and demanding I type out the url for them?! 🤬 I’m not playing this game and I just copy and paste the example that I already sent over.
They figure it out eventually. Apparently, they never used /account to login before They used /admin/index… but that would still bring them to /account, but with ?redirect=/admin/index appended to the url if they weren’t logged in. Again, WTF.
I know I made mistakes in this whole thing, but damn. I can’t even. I’m pretty sure this whole incident is fueling my boss’s push to stop supporting this particular website anymore so I can focus on sites that actually bring in revenue…and have stakeholders that aren’t looney and condescending like this.4 -
Teachers painfully trying to diagnose internet problems when it literally says in the corner of the windows 7 install that the WiFi credentials are incorrect4
-
I'm developing a web app, which is purely based on some commercial .NET driven API. The documentation is a 12 page MS Word file with incorrect parameters and non-existing endpoints. I think there's also a cronjob which purposely crashes their server every 15minutes. I just love getting client emails saying I need to fix my app and get my shit together.