How many more examples do we need for this to sink in?
How many more examples do we need for this to sink in?
Back when it was more traditional to buy a software licences and self-host rather than pay a rolling subscription to an XaaS, a service going dark just meant that you were shut out of updates but not the software itself. Sure you'd still eventually need to migrate away but at least you could then do it on your own terms.
I think people often underestimate the value of being able to manage their own destiny. They key point here is "manage" though: you have to actually do it - it's an active process.
If, on the other hand, you simply stick your head in the sand and ignore the situation it will eventually get to the point where it becomes extremely difficult and expensive to deal with due to a variety of factors such as no clear migration path, loss of institutional knowledge, and so on. I name no names, but worked for one UK company in particular with form here.
I'm not making an argument against SaaS (we use a few of them), but it's important to understand the trade-offs you're making in terms of ceding control.
Further, some of the biggest value they will provide is being able to see transactions between vendors. So eg calculating an IP address reputation score by seeing bursts of fraudulent purchases. That is impossible to do in house only.
But that's not what either I or the GP were talking about: we were talking about hosting a product that you'd purchased from another vendor on your own infrastructure.
The obvious downside to that is you don't have real time updates (as well as the usual other benefits that SaaS brings), which is why SaaS suites this kind of business well. But it can be done and was sometimes done this way "back in the old days".
Distributing the database to customers is still workable despite this drawback - antivirus systems are a common example.
I don't agree with that. Having the database only allows bad actors to see if they've been added to the database - not the business logic of how they ended up in that database.
You could argue that knowing you've been added to the database is still an advantage, which is true. But those same bad actors could still test the system with SaaS solutions too. eg when one acquires stolen bank cards it is common to use those details to make small payments for things like food delivery to test if those card have been blocked or not.
I wouldn't say it's preferable for the customer. It's just one of many options.
> but it's obvious why a vendor wouldn't be keen
Yes, SaaS obviously has benefits for vendors too but what's most preferable to them is making money. If every customer refused to do business with SaaS then vendors wouldn't prefer providing SaaS solutions (yes, I know I said "solutions solutions" :P). The reason SaaS is so prolific is because it offers advantages to customers as well.
When has SaaS stood for anything besides Software as a Service? Because software as a solution could describe almost any business model?
Granted there are more cases of when SaaS et al works than when it does not. And I do agree with you that it's no ok to shaft paid customers in this way. But that doesn't mean that it doesn't still happen. This is why I've have to consider the self-hosted verses XaaS debate myself writing Business Continuity / Disaster Recovery / et al plans.
I really dislike this idea that it's our responsibility to ignore inflammatory tones and trolling, instead of it being the responsibility of the poster to communicate clearer.
Electricity and water are heavily regulated and often government owned, not run by Silicon Valley cowboys.
My food supply is a self organising network that can route around any single point of failure. This is about as far removed from SaaS as you can get.
Yet, you still get Puerto Rico (electricity grid recovery failures of a few levels), and Flint (no clean water for you, because no).
Any usage kf SaaS would require a solid contract in place and a plan B (and C, and D, etc) to reach even a fraction the reliability of e.g electricity or food.
Choosing the potential downtime is not a failure, if you considered your options.
At the moment everyone is trying to do a land grab, but once that phase is over and the market consolidates on 2 or 3 cloud providers and sysadmin skills have disappeared we'll see what a disaster it is.
And if that happens people (I'm looking at YOU, software and devops engineers, with your damned sketchy business cases, desperate to move projects onto AWS mostly so you can bolster your CVs) will only have themselves to blame.
Fortunately I suspect there are enough of us jaded and sceptical types around to avoid it.
If they aren't, either they're incompetent, the CTO is, or you don't really have a company yet.
https://github.com/terraform-providers/terraform-provider-aw...
If you are a small company, the difference isn't worth the risk and the expense. If you are a large company you can probable negotiate with Amazon.
That doesn't even take into account all of the dependencies that your developers have taken on AWS services....
I think you are confusing "agnostic" with "compatible with lots of different providers", but will require a total rewrite if you want to switch providers.
Two things about that -- hardly anyone ever changes infrastructure just to save a little money and their code has to be so generic that they can't take advantage of all of the features of the platform.
The chances are far greater that your company will go out of business way before Amazon stops offering AWS. Theory is great that Terraform allows you to seamlessly move infrastructure between cloud providers, but the amount of risk and regression testing it takes to do so would make it a non starter for most companies.
This isn't just about cloud provider lock-in, but something you need to do to have a good DR strategy.
Back on that Christmas Day that Linode got DDOSed, my company was 100% on their infrastructure. I only had to work a couple of hours that day because I had worked and planned in advance to launch our infrastructure on another host. I saved my company from a multi-million dollar loss that day.
If all you're doing is hosting a bunch of VPS's, you're really not saving yourself too much over just using a bunch of colocated servers. You can also get much cheaper, less reliable, less geographic diverse hosting somewhere else.
But I would have my head handed to me if I even suggested to a company to base their entire infrastructure on Linode instead of AWS, Azure, or even GCP.
Managing tens of millions of dollars in physical and cloud infrastructure at multiple providers/dcs for a publicly traded company like I am now? No, that's not the reason to use cloud infrastructure at all. Cloud in this case is more about capacity planning and avoiding managing hardware inventory than anything.
I know their video encoding platform is heavily tied to AWS because the teams that built it optimized for cost (which for them makes a certain amount of sense) and they massively parallelize the encoding work. I talked to some of their engineers at re:Invent last year and it was kind of interesting. They aren't using a lot of AWS-specific stuff though, just AWS EC2 reserved instances.
I don't think that just because they're Netflix that everything they're doing is correct. This can't possibly be true.
I dare say the AWS sales pitch is even more effective at that level: "Increase your agility, reduce your operational overhead, scale out with the push of a button. Be like Netflix and Apple."
Most executives aren't well-equipped to probe the sharp corners that aren't in the pitch.
Does your business depend on Amazon Transcribe (or any other AWS-only service)? Do you have engineers competent to turn around an equivalent product for you in a short release window? No? (Don't lie to yourself. It's no.) Congratulations, you are now Amazon's bitch.
I (as the sole programmer) made that decision early on.
AWS is a none starter because of the gradual vendor lockin (also nature of our business means growth/scalability is very easily predicted).
But their business is built on providing this service. At what point would Amazon, Google or Microsoft say "we don't want that $xB in revenue, just turn it off. NOW!
Is that what you're suggesting is the future?
More seriously I can see cloud going the way of telecoms in that there would be a provider of last resort if a telco goes bust another operator takes over to provide service.
Of course, it's a competitive market, so the other two providers would eat their lunch.
He has written multiple deployment options. Kubernetes, Docker swarm, bare VMs, etc. He has tested all of them and written installation tools that can deploy to any of them.
For exactly the reason you imply, he doesn't trust any of these options to always be available. I think this mentality has a lot to do with why his service scales so well.
There's more to building a long-term, sustainable business than optimizing revenue at any cost. And part of that "more" is exactly the work you to do insure against future risks.
The old saying that no one ever got fired for choosing IBM could be applied equally to AWS. The companies that chose IBM in the 70s and 80s can still buy new compatible systems. The companies that chose Stratus or VAX, not so much.
Even businesses that chose Microsoft technology in the 90s when they were the clear leader have had a relatively painless upgrade and support path. They abandoned VB6 15 years ago, but you can still wrap your VB6 code as a COM object and interact with C#.
I’m saying that it is the safer bet to go with the largest provider with the largest customer base. In the 80s that would be IBM, in the 90s, MS over SUN (and the royal claustrof%%% that Java has become under Oracle) or Borland.
Let's look at yesterday's equivalent to AWS- Sun Grid. Sun was viewed back during the first dotcom era in much the same way that AWS is today. All that it would take to completely bork it would be an economic catastrophe that mirrors the first dotcom bubble. Obviously, Sun Grid is no more.
[1] https://news.netcraft.com/archives/2004/11/16/solaris_remain...
You can still buy Solaris based systems today but you would have plenty of time to migrate. But seeing the writing on the wall you would have plenty of time to migrate.
I think you're committing something of a "fallacy of the excluded middle" here. Those aren't the only two things that can happen. AWS could, for example, continue offering the service but not to you. We've already heard stories of AWS accounts being closed for various reasons, and it's hardly a stretch to imagine a CloudFront / Daily Stormer kind of scenario where Amazon decides to punt you for taking an unpopular political position, etc.
I would even say that your company going out of business is a bigger risk than depending on AWS.
I would say that I disagree, in at least some cases.
Whatever his salary is as an engineer, he is definitely underpaid.
[1] I would much rather work on a work related project using a new to me technology and if it requires longer hours to complete it, I’m find with putting in the extra time. It seems like more of a win, I get to learn a new technology, get to see it actually be used by others, and it will be helpful during either review time or worse case a resume builder.
Screwed? Maybe, maybe not. At risk? Abso-fucking-lutely. There are plenty of stories out there of companies who had their AWS accounts shut-down for some random reason, plenty of stories of AWS outages, etc. Even if Amazon does't pull a "Smyte", there's plenty of risk associated with being on (or "solely on") AWS.
By and large, anytime you are completely dependent on someone else's platform, you are increasing risk by putting your destiny in someone else's hands.
Contracts can be valuable but often they are over valued.
Companies also are not physical items that can disappear due to natural disasters.
The only ways they can disappear is by closing down, and that does mean honoring contracts, and by going bankrupt and that means using all leftover assets to satisfy all the parties whose contracts you’re breaking. And no, you can’t just transfer all assets away and leave a shell to go bankrupt because that is fraud and the judge can nullify the transfers.
Also, such risks can be insured.
Also, such risks can be mitigated in various ways - I recall having a contract where the source code of any product version delivered to us would be held in escrow at a third party, and in case the supplier went out of business or a bunch of other conditions, we'd get their code and legal rights to use/modify/maintain it ourselves or through some contractor.
A contract is between you and some entity - if you want to protect yourself against that entity "dying", then that can be done by a contract with someone else (e.g. insurer, escrow, etc) who can make you whole even if that entity is dead.
Your company isnt going to die without it (its not like Hootsuite losing access to the Twitter API or Heroku cut off from aWS) But it might be more effective with it.