AboutDeveloper, Company owner
SkillsAt the moment loving Laravel with Vue JS
Joined devRant on 7/16/2016
Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Just received an email from a high maintenance client - this is verbatim what I've just read:
"If I could pull out my Windows vista and then plug in a newer windows system without any stress I'd go for this. Do you do this service? I could pay you for an hour to come my business, Unplug, Plug in and sort this out etc etc. It sounds like a quick job to me."
Note I'm a software developer, nothing to do with day to day IT support stuff. The client's business property is a 45 min drive from my own.
So basically, according to my client I can charge a single hour (£85.00 +vat) for a 90 minutes round trip, to migrate their PC to a newer operating system and move all their data and apps over and then setup the new OS. All for £85.00 +vat. All excluding the fact I
What the literal heck. I'm face palming all over the place.5
What on earth are some developers thinking. Was just browsing the Casio website, using Chrome and noticed the following message. How hard is it to display a message when actually needed, instead of all the time. Good watches, poor development :/2
It's sooooo frustrating when a client forces me to make a design vertically fit in their own screen size. "Everything doesn't fit on my screen without scrolling" :(2
The Orange Juice Saga ....
I've just come off one of the stupidest calls ever.
Firstly, I am not in tech support, I'm a software developer - read the below with this in mind.
My client called up to say the system I created as been compromised. When he attempts to login, he is logged off his Windows machine.
He'd also apparently taken his PC to ***insert large UK computer superstore here***, who took £100 plus to look at the machine and conclude his needs to buy a new PC.
I remoted into his computer to see WTF was going on.
As he described, visiting my login form did log you out. In fact, whenever you pressed the "L" key you were logged out. Press the "M" key, all windows were minimized. Basically, all Windows hotkeys appeared to be active, without the need to press the Windows key.
Whilst connected to his PC I spent a good 30 minutes checking keyboard settings and came up short.
After asking all the normal questions (has anything changed on your PC, have you installed stuff lately etc.) without any useful answers I got nothing.
I then came across an article stating several presses of the Windows in quick succession will solve the issue.
I got the client to try this, pressed the "L" key (which would have logged me off previously) and the issue was resolved.
Basically, the Windows key was "stuck", which oddly makes your PC kind of useless.
I asked the client if they'd split anything on the keyword whilst working. His exact word were simply lol:
"Oh yer, yesterday, I was trying to drink a glass of orange quickly and split some in the corner of keyboard. I did clean it up quickly though".
Yep, the issue was due to the client spilling orange juice on their keyboard , which in turn made the Windows key stick.
A call that started with the client stating I made a system that was easily compromised (i.e. my fault), morphed into a sorry saga of cold drinks.
The client did ask why the ***superstore name*** charged him money for that and recommended a new machine. That is a good question and demonstrated some the questionable tech support practices we see nowadays, even at very large stores.
To be fair to the client, he told me to bill him for half a days work as it was his own fault.
When I'm able to stop myself involuntarily face palming, I'm off for a swim to unwind :)7
For the first time in ages I decided to order a takeaway.
Had a quick check on the takeaway's online menu. My order total was going to be £15.60.
I called up to order and the total was apparently £21.40.
I queried this with the member of staff and mentioned I got the prices from their online menu.
I was told the online menu was "slightly out of date".
When I got into the takeaway to pickup my order I got speaking to the owner. He said the menu on their site was from 2009. He stressed updating the menu was on their list of things to do.
So, today timestamps within my database saved me. I have one titled "created_at" to indicate when the item was originally created.
Today a large client called up to complain that they have 296 bookings but only 288 menu choices (each booking has a menu choice). Basically, saying I'd "programmed it wrong [sic]" :(
After taking a quick look at the date the client originally added the menu and the date the missing bookings were created, I made a discovery.
It turned out the client was at fault. They had set an event (customers book events and bookings have a menu choice) live without associating the menu. This meant the event had been live without a menu for customers to book.
I simply compared the timestamps of the missing bookings to the date the menu was originally added. The customer most likely made the event live for period (I estimate ~45 mins), realised they hadn't associated a menu and then added it afterwards. Of course at this point it was too late as people had already booked.
No need for a huge email either. I condensed the above into a 5 sentence email.
Timestamps are soooo useful1
So, a few weeks ago I was asked by a client to add a cookie consent popup.
Specifically the site must not track the user via Google analytics until they consent.
All fine and I added the normal popup bar at the top the screen.
The client asked me make this smaller and place it into the bottom right hand corner, as to not "scare visitors". After some design hanged on his end the message ending up being 80px side. I.e. tiny.
Weeks later the client is now moaning about decreased traffic levels in analytics.
This is to be expected as cookie message can barely been seen.
So, rage time.
A few months ago I inherited a big Wordpress website, with around 750 pages.
The client has reported the main menu is broken.
Upon looking at the code it appears the previous "Wordpress Developer" (ahem ...) attempted to rewrite navigation system - no idea why.
As part of the 4000 class below is a screenshot of part of the file where he's determining if the current menu item is active, within a loop. Whilst the whole if statement spans 409 lines - the code basically continues exactly the same downwards.
So, according to my customer, the internal app I just released is "far too aggressive and not overly polite to users".
After querying this the client was referring to validation error messages.
Where I've wrote "Set a payment method before creating the order", the client would prefer it to be ""Please set a payment ...".
I guess it's a fair enough observation, but the client's phrasing made me chuckle :)3
I hate IT managers, how on earth some become ant form of manager is beyond myself.
I have a server with a hardware firewall. A client, based in the UK, with French offices is saying the server blocking their new French IP. I white-listed their IP address, still no luck.
That was a week ago.
After 4 international phone calls and nearly 30 emails I resolved the "issue".
Their so called "IT Manager" sent over the wrong IP. Instead of it starting with 46.* he sent over an IP starting 42.*, which was in fact being correctly blocked.
Suffice to say I charged the client a lot of money for the wasted time and international rate calls.2
So my client had a simple request a few days ago.
It read: "can you update the bottom middle image on the about page grid to the attached image".
There were two issues with that that my client cannot seem to comprehend - even after I have emailed them clearly explaining the issues.
The about grid is 4 x 4. Not sure how they expect me to update the "middle image" in a 4 column row, but alas.
The second issue was a little clearer. The attachment they mentioned wasn't an image. It was an empty .txt file.
2 consecutive fails right there :)2
Sometimes I have really loose the will to live and find myself face palming multiple times.
I added live chat software a web frontend for a client. Very easy job that consisted of pasting in some embed code. The actual software is very good and has native ios/andriod apps - something specifically requested.
I got a call from my client about an hour ago, saying there is a "serious issue with the live chat".
My client stated the live chat won't work when his staff go home. He asked me what my solution to this was.
Saying "wtf" many times to myself I directed him to a settings within the chat software i.e. an "away mode" where an email is sent when no chat agents are available.
This apparently wasn't good enough and said I hadn't followed his brief of "adding life chat software to the website", which I had.
After a lengthy discussion I found the root of his frustration. He'd signed a contract with a client of his own, stating there would be 24/7 support via live chat on the website.
Obviously there a huge difference between adding a chat widget to a website and committing to having it manned 24/7 :)
After a further 10 minutes of trying push the blame on myself, the client insisted of having the chat software "appear" as someone was always online, even when they are not (people need to sleep ya know!).
Bu design, the chat software requires at least one agent be logged in before the chat status changes to "online" - why wouldn't it.
After a little while I was seriously wondering why I'm involved in this conversation. I jokingly stated: "Well you could always install Andriod/iOS app on your phone, login and permanently leave it running in background. You'd get lots of notifications, but the site would say the live is always online".
The latter was something I said in jest. To my surprise the client said he'd do that on his own phone going forwards. He actually thanked me for my "resourcefulness", lol.
I'm looking at the same dashboard now and there are 407 pending chat requests - his phone must literally be blowing up notifications :)5
Okay, it's a Saturday morning. Have just received two emails from.a client.
They're also g why an email they sent your ago hasn't been actioned yet. It's 10am on a Saturday morning.
I'm sure some clients assume you literally never stop working:/
I've had a pretty stressful week and I'm fairly close to burnnout.
I have Spotify running on one monitor and GitKraken (dark theme) running on the other.
A naff song begins to play on Spotify so go to open an alternative playlist.
Clicking upon any song title doesn't do anything at all.
After a couple of minutes of think WTF realized I was clicking upon commit messages in GitKraken.
I need to get some sleep. :/1
I'm raging all over the place at the moment. I've just inherited possibly the worst PHP project (Codeigniter) in 10 years.
Apart from the fact that the previous developer has created 87 different header and footer files (same content, but each screen has different footer file for some reason, i.e. footer-login.php, header-login.php, footer-profile.php, header-profile.php etc.), he seems to like adding the following comment all over the place: "Released under MIT license: http://opensource.org/licenses/..." to some how protect is shitty code. I mean take a look at the below of some high quality,propriety Jquery he's written, under MIT.4
Arghhhhhhhh! What the hell is becoming of today's world?
So I have registration form that relates to parents signing up for a service and asking for ages of their children. Children are never older than 5 years old.
So, for each child the user specified the child's sex/gender (Boy or girl) and their age.
I'm still in disbelief over my client's request, that is marked "urgent".
I basically need to add to the list of options, as "boy" and "girl" are no enough and the question is now "too limiting".
I apparently need to add several more options including: "prefer not to specify", "geneder neutral", "bigender" and "genderfluid".
I mean how can a child aged 5 or less identify as "gender neutral" or "bigender" - how on earth are they able to decide.
Fine, if you're an adult and signing up to something like Facebook, have your 80 odd options. But for children under 5 how have no idea wtf any of this means, stuff like this really annoys me.17
So last night was a Friday. After leaving the gym I noticed a missed call and a voicemail from my client.
Note this was sent at 21:50 on a Friday night.
My client stated they were "rather disappointed" (to use their phrasing) that I didn't answer. There is no contract that I answer out of hours or any issues with their system.
This morning, I noticed my client followed up with an email. It was a single line saying they found some new AWS services they like to talk about (translate: "I've found some new AWS acronyms that sound cool that I wish to talk about for several hours").
Seriously, clients, sometimes :(4
Okay, so I'm in rage mode right now :/
Last week a client of mine absolutely insisted on removing the "irritating delete popups" as they phrased it, against my advice.
In short, when deleting a record, I had a sexy "swal" confirmation appear (see https://limonte.github.io/sweetaler...) with some key data from the record, that prompted the user to confirm the action.
The client has now emailed me with the subject "URGENT, please read ASAP!!!". The email says his staff has deleted lots of records incorrectly.
*** face palm ***.
This is EXACTLY why we include delete confirmation prompts.
As I've used Laravel with soft deletes (luckily for my client) it shouldn't be a huge issue to reverse around 400 deleted records. However, I'm charging my client for half a days work out of principal.
Perfect example of my client not listening to me :(5
It's pretty common the hear developers moan about JQuery being imported to select an element. That's fair enough and I've sighed inside about that myself before.
528KB of that file is the Loadash library (which is excellent btw). The actual site uses the "join" function (https://lodash.com/docs/4.17.4#join).
I mean seriously wtf, face palms all around.
JQuery, for all it's faults is always cited in such circumstances i.e. being used unnecessarily. However, such things are not limited to Jquery alone unfortunately.
I'm now going to do some serious optimization and cut a 600KB file to ~80KB.
*** facepalm ***4
"We need you to build a feature on our website to stop people taking screenshots. I can use the print screen key and then easily print out our website design. You need to make the site design harder to copy".
This is an extract from a recent client email I received. To say I'm in shock is an understatement.26
The day I discovered I have a limit to the amount of crap and abuse I can take. The following day I handed in my notice at a place I had worked for 7 years. That was 3.5 years ago, have been happily freelancing ever since.1
At the moment I'm trying to optimize a slow old MySQL query from a project I made several years ago. The execution time is in excess of 55 seconds. Not good :(
After about an hour of experimenting I finally set a good index and reduced the time to < 3 seconds.
Security fail here. I've just started a PPI claim and have been provided a link to a so called "very secure" client area.
There are no username or passwords and the screenshot is not a first time sign up screen.
All I need to login is a surname, postcode and DOB - all information easy enough to find online.
Pretty bad IMO, esp, so considering the effort required to add a proper login using a username/password combination.
I mean I'm logged in now and have no option to set an account password :|3
I really hate api response variable names like this. I mean why type "targetitemid" when "target_item_id" is so much more readable?8
OsCommerce is literally the most awful piece of software ever. Granted, I'm migrating a version from 2007, but even still.
The admin area has a screen to set related products to a target product.
The page takes an age to load, even longer to save and is god awful to use from a UI POV.
Why may you ask?
The OsCommerce devs decided to display a flat list, which check boxes of ALL products in the database.
So for the site in question, that's a single list of 167,000 products, without pagination. Some of the worst development/design on a single page I've seen since last week when I inherited a god awful butchered Wordpress site :|
Arghhh, rant time :|
So yesterday I completed a database migration of 167,000 products from an old ecommerce system to a new one. Everything was brought over, orders, customer addresses, everything, really chuffed :)
The only thing the client picked up on was the lack of his spammy "meta keywords" data that I intentionally did not import. I mean the tag isn't used and a list of 40 comma separated random words you'd like to rank for isn;t going to help the sites SEO on bit.
Anyway, the client is now moaning a lot and insisting I add them in. Even after I explained that the meta keywords is gone for good reasons he insists on keeping the data.
Soooo, pointless :|
(note the tags for the sake of satire :) )4