Usually, when it comes to a business cloud decision, you're going to go with one of the big players: Amazon Web Services (AWS), Google Cloud Services, IBM Cloud, or Microsoft Azure. You know their names.
But the bigger clouds aren't always suitable for everyone or every job.
For example, with hyperscale clouds, it's effortless to get locked into a particular cloud.
Say you're working with serverless computing. If AWS is your provider, you're set with either Lambda or Fargate. But, say you think you can pay less money and get more bang for the buck using Google Cloud Run. Guess what? You'll need to spend a lot of time, money and effort porting your Lambda application stack to Cloud Run or vice versa.
Complex cloud applications are not — I repeat — not portable.
Or let's say your AWS serverless guru takes a job elsewhere. Good luck finding another serverless expert. They're few and hard to find.
Instead, think small.
You might be better off going with a smaller cloud provider that, instead of upselling you on high-end, complex services, provides you with the basics. Sure, sometimes you need access to Azure's more than 200 different services and products. But sometimes, you only need many Linux virtual machines (VM)s or Docker containers.
For those times, I suggest you look at alternative clouds. These include providers such as Digital Ocean, Linode, OVHcloud, Rackspace, and Vultr. Of course, they're far from being the same. But they share some characteristics that can make them better options for small businesses.
For instance, their offerings tend to be simpler and easier for you and your teams to get your arms around. I'm a cloud expert, and honestly, even I can't keep track of all of AWS's offerings.
Which one should you use for your particular needs? Well, pay me big money, tell me what you need, and I'll have an intelligent answer for you in a few weeks.
That's weeks, not days.
Now, do you have people in your company that can master the technical and financial complexities of a hyper cloud? I doubt it. Take a trivial example. If I told you, you needed AWS Route 53, which you probably do, by the way, would you have a clue what I'm talking about without clicking on the name? Probably not.
(It's DNS, by the way.)
In a Linode blog post, Blair Lyon, Akamai's head of cloud experience, explained it this way: "SMBs need to focus on cloud compute, storage and networking capabilities. Those are the core primitives they need. Cloud compute is the virtual machines: shared and dedicated GPUs and other constructs, like Kubernetes and containers. Then you have storage, which is everything from backups to block storage and object storage. SMBs also need networking to be able to provide scale, lean on load balancers, and leverage other features that make it easy to run applications in the cloud. …There is a misconception that you need the hundreds of services that big cloud providers want you to buy. But in reality, for SMBs to run applications, they just need these core capabilities."
Lyon is right.
With a smaller cloud provider, your people will already know their way around Linux, PHP/Perl/Python, MariaDB, and Nginx, the LAMP stack — in short, they can get productive work done without mastering high-end cloud complexities.
I like simple. Simple works.
That's not to say these alternative clouds are always right. They're not. Sometimes, you need complex arrays of services to get the job done.
Or, more simply, if you have a small business with operations scattered worldwide, you need a cloud with availability zones (AZ) across the globe.
I suggest that before you buy into a major international cloud, take a long, hard look at the smaller cloud providers.
I suspect many small business owners will find that a small local cloud might better fit your needs.