Details
-
LocationPoland
Joined devRant on 8/16/2018
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
-
I once had to write a feature, which should allow the user to login and edit an appointment, which was automatically set. All the data we got, came from an incredibly unreliable API. And with incredible unreliable I mean like heisenbug-level unreliable.
The API spoke perfectly unreadable xml and was a horror to work with.
After a few weeks of me being messed with by this shit piece of an API, I finally got something which did kind of work sometimes.
Proper error handling has been added later and just before I was done, fixing all the flaws of their data management and nonsense status codes (not http status codes) which rarely correlated in at least some way with their data, our client said "scrap this, we don't want it anymore"
Many hours and effort gone, this thing worked almost perfectly. -
a "configurable" confirmation system, where page conditions (e.g. customerId=someId, etc.) are stored in the DB as a comma separated string to be run through a stack expression evaluator, so that customers can add a "confirmation" (aka just a modal dialog) with custom reminder text when a user does a certain thing on a certain page....2
-
On a website, which is still online, I added a burping sound when you click on 3 old alpine herdsmen who sit on a bench in the background image.14
-
During a period when devs had been told "The board has been promised that we are improving quality, so you must not do anything but write unit tests", I wrote a unit test that compares the number of system colors in .NET to a constant. It's still running today (a couple of years later).
-
Currently working on a Selenium script to do my timesheet for me. It's been 30 minutes and it still doesn't work because I'm having trouble selecting the input fields correctly (the ID's are dynamic and keep changing!)
It takes me 30 seconds to do it manually.3 -
When I worked for an online dating app, at one point we had the ridiculous idea to try to take a popular LinkedIn feature and convert it to a dating app feature in order to capitalize off of the success LinkedIn had with it.
The feature was LinkedIn endorsements. The idea was to allow the dating app users to get endorsements from people in their contacts lists on certain traits/features from a defined list (ex. Funny, smart, etc.). It wasn’t a terrible idea on the surface, but the way we planned to execute on it was insane and everyone knew it was going to fail. To avoid any controversy all of the endorsable terms were watered down to the point where no one would ever find using them/asking their friends for endorsements to be any fun. And the worst part was how we planned to get people to ask their friends for endorsements - management wanted us to build a contact list importer and just spam email contacts with “please endorse me” emails. The whole thing was ridiculous.
No one, including myself, wanted to build the feature/spam tool but management really wanted it so we had to build it. Like expected, it failed very quickly when it was clear no one cared about getting their real life friends to endorse them on some dating app, and the spam contacts took was ineffective and... spammy.10 -
I added a “shake-to-snow” hidden feature to an iOS app that worked only on December 25th. You’d shake your iPhone or iPad and the entire screen would start snowing for 10 seconds.7
-
!rant
Theres a dead serious business application out there that if you click on customer support in a subsettingsmenu you get redirected to Rick Astleys "Never gonna' give you up" -
Im gonna turn this topic on its head a little and mention the MOST NECESSARY feature that was never implemented in one of my projects.
It was an iOS client for a medical records system. Since it contained actual confidential medical information, some patient records could be “restricted”. Thos meant if you tried to open them you would be prompted for a reason, and this would be audited.
We already had 2 different iOS apps with this feature in place matching the web app. But for some reason with the 3rd app they just decided not to bother. I discovered that it was because the PO in charge of that project didnt consider it important enough for the demo. So we have one app where you can just bypass the whole auditing process and open restricted patient records freely.3 -
TL;DR - an entire emulation of a closed source CMS to develop a theme
The longer version:
We are using a cms that is closed source, and we only have access to frontend files alongside twig files. The CMS is custom built but many aspects are in a very rudimentary state, for example it is nearly impossible to develop locally, we have to use an integrated text editor to code stuff.
So out of frustration, and for my development needs, I decided I would make an emulation based on Symfony 4. Also because my PM was pressing me to optimise our site. I wrote some custom JS to handle everything smoothly, a semi-sass framework and well-structured twig files.
I was also supposed to work with our graphic designer, but she didn't get any alloted time from our pm to work on it...
Now PM asks me to write a specifications document in order to make another company build the new version
I mean wtf, I'm so bored, I can actually enjoy my day by coding, and no, I'm just there to write the specs.
When I told PM I am currently building the new version, she's like "but we didn't validate anything", when she explicitly said I had a green Go to code it a few months back
Instead I have to make prezies and convert them back to PowerPoint because we have computer-illiterate people in the company who aren't flexible to understand simple tools.
Let's hope it won't get useless by Friday (I have a presentation to give, alongside my estimates and project management presentation)1 -
I had to implement an internal tool in C++ which parses a file and converts the content into another format.
It did take hundreds of lines of code to get it working, file handling and parsing data in C/C++ is terrible.
I'd rather done it with some scripting language, and additionally implemented it in python as a side-project (in less than an hour and < 20 lines of code, BTW) but it should be C++ "Because that is how we do it here".
At the end the tool was only used for a few weeks, because someone had an idea how to completely avoid the need for that converted data.3 -
Not mine but an error message in a game when you're trying to logout:
"You're currently not logged in. Please log in to log out."
Logically valid though1 -
So when I was working for a web dev shop, one of the clients asked us to have a drop down of all the different combinations you can have for street types to appear on the address form of their shopping cart. So stuff like "Street", "St", "Drive", "Dr", "Lane", "Ln" etc. We told the client that it wasn't possible since the possible combinations and how some street don't all end with a type.
But the client was adamant about having this so we ended up building a section in the administration section to allow the client to add any new street type to a database table that will populate the dropdown.1 -
At my last gig, part of our business process was to generate a unique human-readable ID that could tie an individual to our product and service. Well, we had a few rather superstitious, paranoid and vocal customers who felt 'uneasy' when they received their unique ID with 666 in it.
So after having a good laugh and roll on the floor, I got to write an exorciseUniqueId() method that compelled the evil numbers to stop possessing those innocent IDs!4 -
Hey guys and girls ^~^
I hope this question is ok as it's not entirely dev related.
I'm planning on building a custom cattracking device that i can attach to a cat harness. It obviously has to be very small and light. This is why i had the pi zero in mind.
I want to track my cat via Gps and send location via gsm (and use a trigger if he connects to my wifi to set off an alarm so i can let him in).
My experience with pi's is limited but i have some with arduinos.
Besides that i would need a case which keeps the pi save from dust, humidity and maybe rain but won't interfere too much with the gsm signal.
First: is this even possible?
If yes, what would you recommend?
Are there better ways to do this?
Thanks to all in advance35 -
Ranting about a meme lol
This type of shit is what I fucking hate most iPhone users.
Samsung was founded in 1938... Apple was founded in 1976.
Most iPhone users are a walking L these days with their ignorance and false sense of superiority. Fucking assholes12 -
That deserves to be here.
For me coding is best at about half of second 0,5l beer with ~5-6% alc. drunk at rate beer/hour. Did half of my bachelor's thesis during half of that second beer probably.
https://xkcd.com/323/11 -
Got semi drunk and thought "Now would be a good time to implement this feature"
*Codes for 2 hours straight without compiling once*
"Done. Good night"
The next morning:
Gets up and tries out feature
*Fixes 2 syntax errors/typos*
*Tries again*
*Feature works*7 -
I fucking love people like this.
Yesterday I met a 'friend' who I hadn't seen in a very long time. Just a guy I used to know tbh but let's call him Friend anyway. After a while in the conversation this happened...
*Friend doesn't know I have a degree in CS*
Friend: "WHAT?? YOU LIKE PROGRAMMING? NO WAY! ME TOO!"
Me: "THAT'S AWESOME! You've been programming for long?"
Friend: "A little over a year now. I know almost all languages now. C++, C#, Python, Java and HTML. Still a couple left to go. Once you're on the level I achieved programming becomes really, really easy. How long have you been programming?"
Me: "Almost a decade now"
Friend: "Damn dude you must know all languages by now I suppose?"
Me: "I've been mainly doing C++ so not really haha"
Friend: "I can always help when you're struggling with one language. C++ is pretty easy tbh. You should learn others too btw. HTML for example is pretty important because you can program websites with it"
Me: "Yeah... Thanks... So... What project are you working on right now?"
Friend: "I'm making a register page for my very own forum. The only problem I have is that PHP won't save the login details"
Me: "Hahaha I know the feeling. MySQL?"
Friend: "What?"
Me: "What do you use to save your data"
Friend: "Just a txt file. It's easier that way."
Me: "Hahaha true. Who needs safety right? *smiles*"
Friend: "Actually it's 100% safe because only I can see the txt file so other people can not hack other users."
Me: "Yes! That's great! Cya!"
Friend: "I'm working on a mmorpg too btw! I can learn you to make games if you want. Just call me. Here's my number"
Me: "Alright... Thanks... Bye!"
*Arrives at home*
*Deletes number*
I do not make this up.
I can understand that someone who isn't in the CS industry doesn't take it too seriously and gets hyped when their "Hello World" program works.
I'm fine with that.
The thing that really triggers me is big headed ass holes like this. Like how much more like a absolute dickhead could you possibly more act? Fucking hate people like that.32 -
Client contacts our company that his site is down, we do some investigating and the only way we can access the site is on a mobile phone. From the office computers the site never loads and times out. Since we don't host the site and I've never logged into it before I don't have a lot of details so I suggest they contact whoever hosts their site. This is where things get weird.
Client tells me that the site is hosted on someone's home server. I tell him that this is quite strange in 2018 and rather unlikely and ask if he was ever given access to the site to log in or if he has access to his domain registration, GoDaddy.
He says he doesn't understand any of this and would rather I just contact his current developer and figure it out with him. We agree that he needs to get access to his site so we are going to migrate it once I get access to it.
I email his current developer letting him know the client has put me in contact with him to troubleshoot the issues with the site. I ask him some standard questions like: where is the site hosted? Can you access it from a computer? Do you have some security measures in place to block certain IP ranges? Can you give me from access to get the files? Will you send me a backup of the site for me to load up on my server?
*2days pass*
Other dev: Tell me the account number and I'll transfer the domain.
Me: I'll have to get back to you on that once I talk to the client and set up his GoDaddy account since we believe the business owner should own their domain, not their developers. In the meantime you didn't answer any of the questions I asked. Transferring the domain won't get the site on my server so I still need the files.
*3 days pass*
OD: You are trying the wrong domain. The correct domain is [redacted].com I'll have my daughter send you the files when she gets in town. We will transfer the domain to you, the client will forget to pay and the site will go down and it'll be your fault.
Me: I appreciate your advice, but the client will own their domain. I'm trying to get the site online and you have no answered any of my questions. It's been a week now and you have not transferred the domain, you have not provided a copy of the site, you have not told me where the site is hosted. The client and I are both getting impatient at this point when will we receive a backup of the site and the transfer of the domain?
OD: Go fuck yourself, tell the client they can sue me.
If the client is that terrible, wouldn't you want to hand them off to anyone willing to take them? I have never understood why developers and agencies try to hold clients hostage by keeping their domain or website and refusing access. From what I can tell this is a freelance developer without a real company so a legal battle likely isn't going to go well since the domain is worthless to him as the copyright to the name is owned by the client. This isn't the first time we've had to help clients through this sort of thing.4 -
TL;DR: don't fuck with your IT guy.
One of the guys in our office treats his laptop like shit, has dropped it a number of times and had managed to break the screen. There was a nice crack diagonally corner to corner across the screen with a nice black splotch around it making a good chunk of his screen unusable. Servicing the laptop would be too expensive and would mean being without the machine for several weeks forced to use a Mac.
I offered to replace the screen for him since I have experience doing laptop repairs. Once the screen arrived I kept the laptop for the evening and spent an hour replacing the screen. I left a note telling him he owed me $60 for my time.
He sees the note, laughs and says "I'll buy you lunch."
Not only does this guy only keep his word when offering to buy lunch about 10% of the time, when he does actually do it he charges it on the company card so it isn't really him paying for it. So I spent my lunch break writing up a little Python app which randomly fucks with his mouse and keyboard.
I sent him a message that I needed to run some tests on his new screen tonight so I'll be able to install it and set it to run on boot.
The app does things like:
Jiggle the mouse
Minimize all windows to show the desktop
Double click
Right click
Can't decide if I want to add in reboots as well.
I figure I'll leave it going until I get $60 worth of entertainment out of it.17 -
Co-worker: hey, can you create an email?
Me: yeah, who needs one? There are no records indicating any new people starting for another two weeks.
Cw: if for Stan, he started today. Also he needs a computer set up.
Me: who the hell is Stan and why are there no records of this person?
Cw: he's new, he started today so we didn't need an email or computer before today.
Me: I get that they're new, but what happened to giving the IT department at least 3 days notice on new hires so I can make sure things get taken care of?
Cw: you know how it is around here, nobody gets notice for anything. So can you get that email and computer setup for me, he can't work without them.
Me: I get that we don't actually plan for anything around here and that 90% of my job is fixing that failure, but hiring someone isn't like a system failing, people don't just show up and say "I start today" they have to go through interviews and background checks and other stuff, someone besides this person knew they started today so I don't think it's too much to ask that I get an email when the offer is extended to the person so I can prepare a system.
Cw: well we interviewed him two weeks ago and he accepted the offer last week, he's here and waiting so just as soon as you can please.
Me: well here's an email, the computer is gonna have to wait, I have a lot going on today and I don't have any computers ready right now.
*Seriously tempted to make them wait till next week to cover the 3 days notice I've asked for 100 times*23 -
Our owner's other company sells products online (or has the ability to anyways). Their current site is 7+ years old WordPress/Woocommerce and is seriously outdated because the site breaks if you update anything so we've been told to make a new site (finally). They also said they were going to release a whole new line up of products. So the first thing I tried to do was get them to nail down their product line and how shipping was going to be configured. I was told to just use the shipping from the previous site.
Turns out those shipping rates don't use any sort of math or automation at all, there is literally a manually set shipping value for every single product for every single shipping location (30*60) and even values for different quantities. And there's no way to export these rates into a readable table because the plugins they use shove all the data into the postmeta table, I'm forced to go through and put the data into a spreadsheet so that I can attempt to organize it and hopefully find someone way to automate it. Owner claims at one point that he has a similar spreadsheet that's more up to date but for some reason refuses to send it over or put me in touch with the right people in the shipping department.
I've gone through the shipping rates with the old products and the new products and organized them as best I can and each time I've gotten done and shown them the spreadsheet with their products and shipping, they add or change something which requires me to basically wipe the slate clean and start over eating another 50 or so hours of my time, which with everything else really means another month+ to find time to work on it between other projects.
After about a year they finished their products and I finally finished the planning and got approval to build it out for the site. Small victory!!
After about 60 hours plugging these values into the database (only about 1/3 done) I get an email from their head of shipping who tells me the values in my spreadsheet are "terribly inaccurate, in some areas by $100+" and that the data should not be used anywhere.
So after something like a year and a half and 200+ hours of work, the data I've been using to plan all this isn't even accurate. I'm trying not to go crazy here but this kind of shit is unacceptable. When we're done with this I'm going to send the owner an invoice to show him how much money he wasted on this because nothing was planned and he just wanted it built. There's a fucking process for a reason, when you don't follow the process you fuck everything up. If a client had pulled this shit and turned their simple site into this much work they would have been dropped. I get constant emails asking when the new site will be done and every time my answer is "I'm still waiting for x items that I asked for last time you asked where we were." He gets a couple things on the list and sends them back and then goes unresponsive for weeks at a time.
Management has been telling me that I seem more stressed lately but only one of them understands what's going on here when I explain it. The rest say stupid shit like "why don't you automate it" or "make an intern do it." You won't let me hire an intern and even if I did, I'm not sure I could explain how the shipping works now to even trust someone else to do it. I'm hoping when the shipping guy gives me the new sheet that maybe there's some easier solution here because I'm ready to start shooting people.2 -
Receive several documents of blog posts from a client, each one titled "Blog $n - $category - $title." Cool, the client gave them to me in order and I just have to plug them in.
Enter blogs on site starting with Blog 1.
Client sees the blogs on the site and loses their shit. "I specifically numbered the blogs so you knew what order to put them in! How hard is it to put them in numerical order? Blog 1 is the newest blog and should be first on the page."
The site displays the newest post first, but because any normal person would have named the oldest blog "blog 1" and counted up from there the blogs are in the reverse order the client expected.
What the hell kind of dense motherfucker numbers their blog files in a manner which requires them to rename every file each time they write a new blog post? -
Is it just me or does this shirt make no sense? If your coffee was empty, then it would return true and you would keep coding. If it was not empty you would fill it.
Plus it's not a while loop, so unless this is some sort of recursion you wouldn't keep going....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