Amazon has a new schemaless database web service (remember, you can't spell "schemaless" without "shemales"), which is cool but has some serious problems from a REST and general web architecture perspective. The weird thing is that by my count this is the fourth time this has happened. (Here's last time.) This despite the following mitigating factors:
- Amazon's web service team is relatively open and approachable.
- This is a design flaw that can easily lead to destroyed data, not an academic imperfection.
- Outsiders have been loudly complaining about this class of problem since Amazon's first web service was exposed in 2004.
- The second time this happened (Amazon SQS), Amazon fixed it in response to complaints. So it's not like they're committed to this bad design.
- The design of Amazon S3 is very solid. It has everything except connectedness/HaEoAS. It came out almost two years ago.
Reading the tea leaves it looks like Amazon has some internal framework that takes a set of functions, and generates code for a web service that handles calls to those functions through HTTP GET or SOAP. If people complain and an Amazon coder gets around to it, said coder can generate or write a proper resource-oriented interface to the same underlying code, but that's not what's generated by default. S3 and the web service that controls EC2 were done by different teams who didn't use or didn't know about this framework.

![No comments [No comments]](/nb/assets/no-comments.png)
![1 comments [Comments]](/nb/assets/comments.png)