3 ms·
Because we can't definitively prove which one is better. There is no formal theory around system design so you get people complaining about how monoliths are e
by byyyy 3y ago
Because we can't definitively prove which one is better.
There is no formal theory around system design so you get people complaining about how monoliths are error prone and way too complex and you get people complaining about microservices with the exact same argument.
The result is that with a period of about a decade the industry just oscillates between the two methodologies in an endless flat circle.
Monoliths will come in vogue again in the 2020s.
- marginalia_nu 3y agoYeah. I think what it boils down to is inexperienced developers and shortsighted product managers are capable of bad design choices in any paradigm. And handing them a new paradigm that's en vogue will all but guarantee they'll mess it up. Perhaps the real crux is that large teams don't build good software. Especially not from the ground up.
- ozim 3y agoFun part is there is no “better” in generic terms. Another fun part is that people on the internet complain but without merit. I cannot judge some project because I usually don’t know the project. So might as well be that monolith or not team was having high attrition or there might be many other things that would affect project.
- byyyy 3y ago>Fun part is there is no “better” in generic terms. No. It goes further then this. We actually don't even know if one is better or not. There is no formal theory that allows us to prove these designs. For example we have formal theory behind algorithm complexity that quantifies runtime cost but no such theory exists for engineering design patterns. We aren't even sure what to quantify. But just because a formal theory doesn't yet exist doesn't mean one can be developed in the future. Until then these system designs will be like history... Always repeating itself.