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 - "clueless client"
-
I absolutely HATE "web developers" who call you in to fix their FooBar'd mess, yet can't stop themselves from dictating what you should and shouldn't do, especially when they have no idea what they're doing.
So I get called in to a job improving the performance of a Magento site (and let's just say I have no love for Magento for a number of reasons) because this "developer" enabled Redis and expected everything to be lightning fast. Maybe he thought "Redis" was the name of a magical sorcerer living in the server. A master conjurer capable of weaving mystical time-altering spells to inexplicably improve the performance. Who knows?
This guy claims he spent "months" trying to figure out why the website couldn't load faster than 7 seconds at best, and his employer is demanding a resolution so he stops losing conversions. I usually try to avoid Magento because of all the headaches that come with it, but I figured "sure, why not?" I mean, he built the website less than a year ago, so how bad can it really be? Well...let's see how fast you all can facepalm:
1.) The website was built brand new on Magento 1.9.2.4...what? I mean, if this were built a few years back, that would be a different story, but building a fresh Magento website in 2017 in 1.x? I asked him why he did that...his answer absolutely floored me: "because PHP 5.5 was the best choice at the time for speed and performance..." What?!
2.) The ONLY optimization done on the website was Redis cache being enabled. No merged CSS/JS, no use of a CDN, no image optimization, no gzip, no expires rules. Just Redis...
3.) Now to say the website was poorly coded was an understatement. This wasn't the worst coding I've seen, but it was far from acceptable. There was no organization whatsoever. Templates and skin assets are being called from across 12 different locations on the server, making tracking down and finding a snippet to fix downright annoying.
But not only that, the home page itself had 83 custom database queries to load the products on the page. He said this was so he could load products from several different categories and custom tables to show on the page. I asked him why he didn't just call a few join queries, and he had no idea what I was talking about.
4.) Almost every image on the website was a .PNG file, 2000x2000 px and lossless. The home page alone was 22MB just from images.
There were several other issues, but those 4 should be enough to paint a good picture. The client wanted this all done in a week for less than $500. We laughed. But we agreed on the price only because of a long relationship and because they have some referrals they got us in the door with. But we told them it would get done on our time, not theirs. So I copied the website to our server as a test bed and got to work.
After numerous hours of bug fixes, recoding queries, disabling Redis and opting for higher innodb cache (more on that later), image optimization, js/css/html combining, render-unblocking and minification, lazyloading images tweaking Magento to work with PHP7, installing OpCache and setting up basic htaccess optimizations, we smash the loading time down to 1.2 seconds total, and most of that time was for external JavaScript plugins deemed "necessary". Time to First Byte went from a staggering 2.2 seconds to about 45ms. Needless to say, we kicked its ass.
So I show their developer the changes and he's stunned. He says he'll tell the hosting provider create a new server set up to migrate the optimized site over and cut over to, because taking the live website down for maintenance for even an hour or two in the middle of the night is "unacceptable".
So trying to be cool about it, I tell him I'd be happy to configure the server to the exact specifications needed. He says "we can't do that". I look at him confused. "What do you mean we 'can't'?" He tells me that even though this is a dedicated server, the provider doesn't allow any access other than a jailed shell account and cPanel access. What?! This is a company averaging 3 million+ per year in revenue. Why don't they have an IT manager overseeing everything? Apparently for them, they're too cheap for that, so they went with a "managed dedicated server", "managed" apparently meaning "you only get to use it like a shared host".
So after countless phone calls arguing with the hosting provider, they agree to make our changes. Then the client's developer starts getting nasty out of nowhere. He says my optimizations are not acceptable because I'm not using Redis cache, and now the client is threatening to walk away without paying us.
So I guess the overall message from this rant is not so much about the situation, but the developer and countless others like him that are clueless, but try to speak from a position of authority.
If we as developers don't stop challenging each other in a measuring contest and learn to let go when we need help, we can get a lot more done and prevent losing clients. </rant>14 -
At the data restaurant:
Chef: Our freezer is broken and our pots and pans are rusty. We need to refactor our kitchen.
Manager: Bring me a detailed plan on why we need each equipment, what can we do with each, three price estimates for each item from different vendors, a business case for the technical activities required and an extremely detailed timeline. Oh, and do not stop doing your job while doing all this paperwork.
Chef: ...
Boss: ...
Some time later a customer gets to the restaurant.
Waiter: This VIP wants a burguer.
Boss: Go make the burger!
Chef: Our frying pan is rusty and we do not have most of the ingredients. I told you we need to refactor our kitchen. And that I cannot work while doing that mountain of paperwork you wanted!
Boss: Let's do it like this, fix the tech mumbo jumbo just enough to make this VIP's burguer. Then we can talk about the rest.
The chef then runs to the grocery store and back and prepares to make a health hazard hurried burguer with a rusty pan.
Waiter: We got six more clients waiting.
Boss: They are hungry! Stop whatever useless nonsense you were doing and cook their requests!
Cook: Stop cooking the order of the client who got here first?
Boss: The others are urgent!
Cook: This one had said so as well, but fine. What do they want?
Waiter: Two more burgers, a new kind of modern gaseous dessert, two whole chickens and an eleven seat sofa.
Chef: Why would they even ask for a sofa?!? We are a restaurant!
Boss: They don't care about your Linux techno bullshit! They just want their orders!
Cook: Their orders make no sense!
Boss: You know nothing about the client's needs!
Cook: ...
Boss: ...
That is how I feel every time I have to deal with a boss who can't tell a PostgreSQL database from a robots.txt file.
Or everytime someone assumes we have a pristine SQL table with every single column imaginable.
Or that a couple hundred terabytes of cold storage data must be scanned entirely in a fraction of a second on a shoestring budget.
Or that years of never stored historical data can be retrieved from the limbo.
Or when I'm told that refactoring has no ROI.
Fuck data stack cluelessness.
Fuck clients that lack of basic logical skills.5 -
I SENT YOU THE EXACT SIGNUP URL ON NETLIFY
I TOLD YOU STEP BY STEP WHAT WOULD HAPPEN, AND HOW I CAN TRANSFER THE SITE TO YOU
AND NOW YOU COME TO ME COMPLAINING YOU DON'T UNDERSTAND??!?!?!?!
fucking toxic clients I swear, never again
this is what I get for doing something for free for an acquaintances friend
if you can't handle ownership of your own website, maybe get the hell out of the internet
🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡🎪🤡9 -
Being a developer is like being a mechanic at a car manufacturer. Except that everybody else in the company is completely clueless about how a car actually works and the client doesn't have a license.1
-
I've been lurking around this place for months now and never found a reason to make an account. Well, now I just did.
I was browsing freelancer.com looking for projects and I found one. Guy wants a website for booking seats, with a shopping cart and whatever. At the end, he mentions the only restrictions are we can't use ajax and json.
I made a bid explaining that the very site he was on(the freelancer website) made more then 25 ajax requests when loading a page, and that most if not all of them were transferring data in json.
I'm wondering what do they need that many requests for, but that's already another issue.
Now I'm curious to see if he answers back7 -
Great (but clueless) client. I went to a meeting with the client to discuss a way forward for his website revamp. First off he showed me his idea, which was a visual of the Windows desktop, with folders for different sections of the website, click on a folder and it opens revealing the different website pages. It went on basically describing how windows works. When he'd finished I said, with a cheeky smile, "that must be one of the fucking shityest ideas I've ever heard". We both started laughing.3
-
Is it just me or are all the stoopid people in middle management? Why do these clueless people always impose completely nonsense requirements? Like 'You have to process all entered client data but you are not allowed to store it, nowhere, because of GDPR, storing data is evil!' But when customer logs on all his not persisted data has to be pushed to the frontend immediately. WTF THIS IS CRAZY5