> Vendor lock-in from a single vendor? Wildly expensive capex and opex? Impossibility for people to know any of the tech involved without you sending them on a course to learn about it or them already having experience with it?
Is this a trick question? The answer is 'yes' to all three.
For AWS, it isn't. Outside of a few narrow exceptions, there is no vendor lock-in into a single vendor. (A container that can run into Lambda can run into Google Cloud Run just fine).
There is no capex with AWS.
There's a free tier and it's freely accessible to anyone. Anyone, and I mean anyone, can start learning it if they want to.
Good luck getting access to a mainframe to play around to see how and what works. Or finding any useful tutorials from this century.
On the mainframe renewal projects I have done, the mainframes have been leased. Hence there is no "CapEx" in the sense you mean it. On the enterprise cloud transformation projects I have done, there has been a substantial development cost ("CapEx") to get to the point where you can just drop in a .zip file. So the CapEx/OpEx question is complex.
The grandpa developer delivered a function, not a .zip file. Nowadays the developer needs to deliver a .zip file -- because the developer is responsible for wrapping the function in something that executes the function -- often SpringBoot in corporate environment.
He could use AWS Lambdas, but that locks them in. Also, you need to worry about restart times, and price/performance is high, because there are many layers of virtualization.
But the biggest loss is that in "best-of-breed architecture" (bunch microservices running in Kubernetes) the developers have in practice no way of guaranteeing data integrity. Systems are in perpetually inconsistent state (called "eventual consistency") and we just pretend the problem does not exist.
The grandpa developer could develop functions that would call other functions, and all would be executed within a transaction. It would be within his means to maintain data integrity.
For the individual developer, the situation is much better. I can get my Django application to be hosted on fly.io in no time and it is quite cheap. I think the cost of running services is temporarily subsidized by influx of VC money, but that will eventually change.
Is this a trick question? The answer is 'yes' to all three.