Business problems with programming are not about how to solve problems but how to solve the meta problem: Businesses usually "churn" on developers, they come and leave. It's not that hard to get one set of developers to program something. What's hard is keeping these developers employed for a long time. What's also hard is getting another random new hire to understand the currently written code. This is the meta problem: how to retain the ability to solve the business problem given that your developers keep changing over the years. All the fads that assail programming are targeted at managers, promising them to solve the meta problem, and they all revolve around the promise of turning developers into replaceable cogs. OOP fits this model, so does "microservices" and "containerization" and the pervasiveness of frameworks. The only reason companies use something like, say, ReactJS is because they think everyone is using it. The thing is, none of these "tools" help solve the meta problem, but they (the managers) can't know any better.