One point(though I will admit this is the cynical part of my brain speaking) immediately jumps to mind.
If the server goes down, you can blame Microsoft. Even the least technical person can’t blame you for that. If you create your own data center however, if it goes down, you may potentially be on the chopping block if service is interrupted.
Self preservation is a strong motivator, perhaps the strongest in a business environment.
> Self preservation is a strong motivator, perhaps the strongest in a business environment.
And it's the most bullshit one. Outsourcing the risk does not mean avoiding it, it means however putting it out of control.
This is a typical manager bullshit attitude "nobody got fired to buy IBM" that generally lead to adopt unadapted, bloated, overpriced solutions to trivial problems. Just because they do not have the balls to do things properly.
Running out of its responsibilities should be a criteria to get fired when things go badly wrong.
The outsource of the 737 MAX MCAS code to India today is a perfect example of that
Agreed that outsourcing risk does not free you from the responsibilities. However, for many many services you have to rely on others to provide the service better than you could do yourself, as you are limited in time, money and other resources. For running production grade databases at startups, it's much more cost-efficient to run on AWS RDS than to hire a systems engineering team with 24/7 standby. For more trivial systems you might be right and managers might be cowards. However, you have to realize it's a spectrum.
Whether you're running it yourself or you outsource it, things will go wrong at some time. When this happens, and you run it yourself, you also have to explain why it went wrong in a post-mortem or RCA. The problem is that your customers have no point of reference for your explanation (how likely is it that this occurs again?). In my experience, the following message goes down a lot smoother: "This is an Azure/AWS/GCP outage which affected not just us, but 1000s of other companies. We rely on {provider} to continuously learn from their mistakes and improve their service and they've shown this in the past. Here's their post-mortem report about this outage.". Note that not all cloud providers fit this bill.
> However, for many many services you have to rely on others to provide the service better than you could do yourself, as you are limited in time, money and other resources.
I do not criticized the fact of outsourcing when an outsourced service does a better job. This is normal and should be like that.
What I am criticizing however, is outsourcing even when local/home made/OSS solutions are a better and cheaper fit even considering SLA.... just to avoid responsibilities.
This is in my experience common, especially if the management has no technical background, no trust in his team and fear its upper layer.
Yes, surprisingly enough, people look out for their own self interests.
What makes outsourcing hardware different from the dozens of other software as a service vendors that most companies depend on?
Why spend the time developing competency in managing servers if that doesn’t give you a competitive advantage.
But, going with the biggest most stable vendor is usually good. If you bought IBM hardware in the 70s you can still buy new hardware that supports your software. If you went with their competitors - not so much.
> But, going with the biggest most stable vendor is usually good. If you bought IBM hardware in the 70s you can still buy new hardware that supports your software. If you went with their competitors - not so much.
For 20 times the cost of commodities x86 that you should have bought by doing the right thing.
And this 20 times the cost will very likely also please your own competitors because you will yourself be less competitive.
That's how you finish with entire airline industry or bank still running on COBOL with no possibility of migration.
How much will it cost to rewrite everything? What were they suppose to choose in the 70s? Do you think that all of the people still using IBM and running legacy code are dumb or just maybe they did a cost benefit analysis and decided they didn’t need to rewrite everything in Node and React?
Maybe you should ask why some sector that "fear" failures more than anything else (banks, aviations) are still trapped into these systems while everyone else is not.
This is exactly related to what I was saying before.
Bullshit means something is not true. People choosing to go with a vendor to avoid the risk of being blamed for failure, thereby reducing their chances of being fired, is a true phenomenon. And one that works. So how is it bullshit?
If the server goes down, you can blame Microsoft. Even the least technical person can’t blame you for that. If you create your own data center however, if it goes down, you may potentially be on the chopping block if service is interrupted.
Self preservation is a strong motivator, perhaps the strongest in a business environment.