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
Feed
All
Post Types
- Rants
- Jokes/Memes
- Questions
- Collabs
- devRant
- Random
- Undefined
Cancel
All
-
So, you start with a PHP website.
Nah, no hating on PHP here, this is not about language design or performance or strict type systems...
This is about architecture.
No backend web framework, just "plain PHP".
Well, I can deal with that. As long as there is some consistency, I wouldn't even mind maintaining a PHP4 site with Y2K-era HTML4 and zero Javascript.
That sounds like fucking paradise to me right now. 😍
But no, of course it was updated to PHP7, using Laravel, and a main.js file was created. GREAT.... right? Yes. Sure. Totally cool. Gotta stay with the times. But there's still remnants of that ancient framework-less website underneath. So we enter an era of Laravel + Blade templates, with a little sprinkle of raw imported PHP files here and there.
Fine. Ancient PHP + Laravel + Blade + main.js + bootstrap.css. Whatever. I can still handle this. 🤨
But then the Frontend hipsters swoosh back their shawls, sip from their caramel lattes, and start whining: "We want React! We want SPA! No more BootstrapCSS, we're going to launch our own suite of SASS styles! IT'S BETTER".
OK, so we create REST endpoints, and the little monkeys who spend their time animating spinners to cover up all the XHR fuckups are satisfied. But they only care about the top most visited pages, so we ALSO need to keep our Blade templated HTML. We now have about 200 SPA/REST routes, and about 350 classic PHP/Blade pages.
So we enter the Era of Ancient PHP + Laravel + Blade + main.js + bootstrap.css + hipster.sass + REST + React + SPA 😑
Now the Backend grizzlies wake from their hibernation, growling: We have nearly 25 million lines of PHP! Monoliths are evil! Did you know Netflix uses microservices? If we break everything into tiny chunks of code, all our problems will be solved! Let's use DDD! Let's use messaging pipelines! Let's use caching! Let's use big data! Let's use search indexes!... Good right? Sure. Whatever.
OK, so we enter the Era of Ancient PHP + Laravel + Blade + main.js + bootstrap.css + hipster.sass + REST + React + SPA + Redis + RabbitMQ + Cassandra + Elastic 😫
Our monolith starts pooping out little microservices. Some polished pieces turn into pretty little gems... but the obese monolith keeps swelling as well, while simultaneously pooping out more and more little ugly turds at an ever faster rate.
Management rushes in: "Forget about frontend and microservices! We need a desktop app! We need mobile apps! I read in a magazine that the era of the web is over!"
OK, so we enter the Era of Ancient PHP + Laravel + Blade + main.js + bootstrap.css + hipster.sass + REST + GraphQL + React + SPA + Redis + RabbitMQ + Google pub/sub + Neo4J + Cassandra + Elastic + UWP + Android + iOS 😠
"Do you have a monolith or microservices" -- "Yes"
"Which database do you use" -- "Yes"
"Which API standard do you follow" -- "Yes"
"Do you use a CI/building service?" -- "Yes, 3"
"Which Laravel version do you use?" -- "Nine" -- "What, Laravel 9, that isn't even out yet?" -- "No, nine different versions, depends on the services"
"Besides PHP, do you use any Python, Ruby, NodeJS, C#, Golang, or Java?" -- "Not OR, AND. So that's a yes. And bash. Oh and Perl. Oh... and a bit of LUA I think?"
2% of pages are still served by raw, framework-less PHP.31 -
HTML - hot tomato monkey language
CSS - crazy stupid script
PHP - per hour pay
JS - just scream
JAVA - just a valid acronym
C# - see sharply
Objective C - OOP cash
C - cash
C++ - cash++19 -
Meeting with client.
Me: our solution does not require a central server, any computer (windows, Mac or Linux) on which you install our software can act both as a client and a server
Client: no we need to have all our data on our server
Me: sure, you can install our software on any computer
Client: no, we need it on our server
Me: ok then, we can make the needed changes to install our software on your server, it will cost an additional fee though
Client: very good then17 -
Meeting with smooth suit guy:
"So, our company has pivoted"
I hate everything about this guy, not having slept well at all, I fucking snapped:
"Pivoted? Oh wow, what a wonderfully refined word to describe that your asinine business model smacked flat into the mud, that your obtuse bubble of vague ideas popped and your childish dreams of piles of undeserved gold got caught up by the hard reality that your product does not add any tangible value -- yet you tricked your sheepish retarded investors once again to fall for a new hype-filled pitch deck? Congratulations. At least you probably snort enough coke to keep believing in yourself..."
The guy nervously wiped his nose, stuttered, and walked off looking angry and a little confused.
So it turns out, my boss is apparently the major "sheepish retarded investor" in this company.
Today I got a mail from him. I expected fire and fury, nuclear ICBMs crashing into my desk.
"Thanks for your feedback, this is why I invite you to meetings. Could you take a look at their new pitch slides and preliminary API docs for me?"15 -
!rant
My wife just had our first child today. I guess I'll have to share my rubber duck from now on.11 -
Boy: I love You
Girl: I have a boyfriend
Boy: sudo I love You
Girl: Please enter root password:
Boy: 123456789
Girl: Wrong. Please enter root password:
Boy: root
Girl: Wrong. Please enter root password:
Boy: qwerty
Girl: Wrong. You have tried 3 times.
Girl: I have boyfriend.
Boy: Dammit.
Girl: Command not found.22 -
One of my worst meetings, as the sheer rage was unbelievable.
Backstory:
Architect: "Stop duplicating code", "stop copy pasting code", "We need to reuse code more", "We need to look at a new pattern for unit tests" etc.
Meeting:
Architect: What did you want to talk about?
Me: I built a really simple lightweight library to solve a lot of our problems. Its built to make unit testing our code much easier, devs only need to change a small bit of how they work.
Architect: I like the pattern a lot, looks great ... but why a library? can we not just copy the code from project to project?
... do you have a twin or something?2 -
The times when we coded in C# on weekends at the university and it was a 4-hour nonstop process. I LOVED it. That was one of the only times I've felt in control or competent in anything.11











