They're a billion times saner, they have a very simple REST API that just takes a couple GET parameters and spits out nice JSON. I built a wrapper in scala using the dispatch http library and json4s in about 15 minutes, most of that was writing a couple functions to handle the difference between the formatting conventions used by DigitalOcean's JSON and scala/java standards ("droplet_id" vs "dropletId").
Meanwhile AWS has this nasty outdated SOAP API that you don't want to touch by hand with a 10-foot pole, you had better have a good AWS library for your existing language of choice or know how to make sense of a WSDL.
> AWS has this nasty outdated SOAP API that you don't want to touch by hand with a 10-foot pole, you had better have a good AWS library for your existing language of choice or know how to make sense of a WSDL.
Um, no. Every AWS service has a REST API. The only difficult thing is calculating authentication headers, but that's nitpicky for a good reason.
S3's API is extremely RESTful -- not perfect, but really good. Some of Amazon's newer APIs aren't as RESTful, but they're usually still better than what many people call "REST" today (i.e. "Hey it's not SOAP, so who cares if every flipping thing is a GET request, it must be REST!").
Ironically, your comment on the outdated SOAP API is based on knowledge that is quite outdated. AWS has had a REST API for basically the entire existence of DO.
Meanwhile AWS has this nasty outdated SOAP API that you don't want to touch by hand with a 10-foot pole, you had better have a good AWS library for your existing language of choice or know how to make sense of a WSDL.