The Blog

Should I pick DigitalOcean or AWS for my next project?

Calendar Icon 10.25.2019
aws-section-divider

If you’re asking this question sincerely, there’s absolutely no question—you should pick DigitalOcean.

This may be a surprising thing to read on a site called “Last Week in AWS”—and more than a little suspicious if you’re familiar with their once and future sponsorship of both my newsletter and podcast

But hear me out. 

First, I’ve received no compensation of any kind for this article. I suspect I will receive email, though!

Second, this site (like my consulting work) has always been about giving people the guidance I’d take myself if I were in their shoes. 

So, here’s my thought process that leads to the above conclusion.

Simplicity

If you’ve only ever managed servers in an on-premises environment, you can get up and running with DigitalOcean in less than an hour—and things will be relatively straightforward to you. They don’t have 150 service offerings; they only have a handful.

The point here is that you won’t have to spend 12 weeks going to Cloud School to absorb a zillion ancillary services (e.g., VPC, IAM, S3, ELB, Auto Scaling, etc.) just to be able to SSH into an instance.

I’ve been using AWS for a decade (heavily for half of that), and I still find myself getting confused, lost, or otherwise unsure of my path on a far more frequent basis than I’d like. 

With DigitalOcean, that isn’t really a concern.

Billing


In a move that’s apparently anathema to AWS, DigitalOcean’s billing is fixed-fee, per month, incurred hourly up to a cap. 

There are overage charges for excessive bandwidth use, sure. But they’re a penny per gigabyte over a baseline that starts at 1TB per node per month. 

Surprises, then, are on the order of “tens of dollars”—not “15 grand because you drastically misunderstood something.” Plus, you’ll automatically be alerted if you exceed your allowance before you’re charged.

With DigitalOcean, you know exactly what something will cost before you provision it. If you hire me to optimize your DigitalOcean bill, you’re effectively paying me to perform basic arithmetic.

What About Lightsail?

AWS released a product called Lightsail in the relatively recent past, and this offering seems modeled after DigitalOcean in a number of key ways. It’s straightforward to get up and running, it’s fixed-fee, and there’s even a migration road to get from Lightsail to EC2 when that becomes appropriate. 

That said. . .you can feel the strain on AWS’s part to make this offering work. 

The terms and conditions almost seethe with rage around the specific circumstances in which they can either turn your instances off or else start charging you in their normal byzantine fashion. 

It’s not a bad offering. But it’s very clearly viewed as more of an onramp to using more “mainstream” AWS services than it is a viable standalone solution in its own right.

To me, that makes it a less appealing offering than DigitalOcean. Your mileage may vary.

When AWS makes sense

All this said, I do most of my work on AWS. 

That’s because the things I do require more than baseline “building blocks” of infrastructure. I do complex things that interact in very strange ways with other services. 

I’m weird. I know.

More commonly, people generally seem to spin up relatively small-scale environments on DigitalOcean. I can talk about managing five or ten droplets, but not hundreds or thousands of them. At that scale, AWS has the better tooling, better offering—and steeper learning curve.

People often wonder if I hate AWS. I do not. 

People equally often wonder if I’m an AWS fanboy. I don’t believe I’m that, either. 

I’m just an advocate for the best tool for the job. 

If the points I’ve made above resonate with your use case, it’s entirely possible that the best tool for that job is DigitalOcean. What do you think?

aws-section-divider