More than a year ago I started on an article series where I wanted to debunk the myths of software development. It had 39 articles, and the name of the series was literally "Myth busting". The purpose with the articles was to go through all superstitious belief systems I had identified amongst software developers during more than 40 years of software development, to "get things real". The 22nd of March 2023 Amazon more or less publicly admitted that I was right all along. You can find some of my "epic articles" below.
- You should probably fire your Kafka developer
- DDD is mostly superstitious rubbish
- CQRS is Software Development Schizophrenia
- Why waterfall is superior to Agile
- OOP a software development psychosis
- Design Patterns is a symptom of a sick programming language
The series gathered so much negative attention that one of the managers at DEV had to send me a PM on LinkedIn encouraging me to discontinue it - Which I did for the record. Publicly slaughtering every single superstitious assumption amongst the software development community carries a price. However, one of the most prestigious software development teams at Amazon have now publicly admitted more or less that I was right. The team threw out 90% of their existing micro service based code, and re-created their entire platform based upon the idea of KISS, and in the process made it 10x as scalable, 10x more manageable, and 10x more stable. If you read my article series today, you will easily recognise that roughly 50% of my articles are discussing micro service based architecture, either indirectly or directly.
I wish I was a better man, not having the needs to say this out loud, but unfortunately I am not - So I am just going to say it as it is.
I told you so ...
- Read Amazon's article here
- 30 million software developers were wrong, and I was right! π
Top comments (12)
Regarding your series of articles attracting too much negative attention, my writing experience is that this gets much better when you start writing in the first person.
Consider the same content written under those two angles
With the first angle everyone in the tiny minority that use micro Services for good reasons will come and fight you
With the second angle, you talk about you, a subject on which you are the ultimate expert, and you give permission to everyone who had bad feelings about micro services without putting the words on it to live free and happy outside of the industry dogma.
Here is an example article that wouldn't work written under the first angle
I am a lazy developer
Jean-Michel Fayard π«π·π©πͺπ¬π§πͺπΈπ¨π΄ γ» Apr 3 γ» 7 min read
I see your point, but when it's an objective truth, it's an objective truth, and people need to hear it as such - Regardless of how painful it is ...
I'm not sure that's how humans work.
Do you always hear objective painful truths in all areas of your life?
I sure don't.
Point taken; I'm fat and ugly, and you're right :D
When it comes to programming, I generally assume youβre right even if itβs controversialπ
But I think what Jean-Michel said in his comment is a really good point! People donβt wanna read about how what theyβre doing is wrong, but theyβre more open to reading how someone else made a mistake by doing whatever theyβre also doing. Some people are always gonna be angry, but if itβs a more personal thing I donβt think as many people would be that angry.
The difference is Β«this guy is basically saying Iβm stupidΒ» and Β«this guy is admitting his own mistake and it happens to be something I currently doΒ»
very well put!
Thank you! :)
Maybe I need to start out all my articles with "I'm fat and ugly, but I'm still right" :D
We consciously avoided the Microservices route in favor of a modular monolith at pervious company, and I'm glad we made our life simple instead of assuming we would need to scale at Netflix scale real soon (tm)
Well, you've been following me for quite some time Jean-Michel, I like to think I had some "weight" in the arguments that were passed down as you made that decision :)
Regardless, bravo!!
The headline for the article is very misleading, Amazon has architectural advantage for monolith here to scale There is a common misconception that microservices are always the better choice over monolithic architecture, but this is not always the case. In fact, the best solution for a given situation depends on a variety of factors, such as the use case, the current state of the software, and the desired outcomes
Technically you're right, but a more accurate way of saying it is that micro services results in 10x more expensive projects and should be avoided at all costs, and 99% of all projects never need it ...