I liked, really liked, Jim Webber‘s Notes from the Aussie Architectural Astronaut Assembly but do have a small 409 Conflict with the assertion “REST isn’t simple”. It is true you have to be a protocol weenie or an unconscious idiot before you can comfortably use phrases such as “hypertext is the engine of application state”, but there are levels of understanding which are still useful: plumbing is complex, but you don’t need to understand it to flush a loo or make a cup of tea. As for
409, although I’ve encountered it in the wild using Subversion, I somehow doubt many would advocate WebDAV as the best pattern for REST and I know my mental model of how it “works” would break down under Jim’s detailed questioning. So I’d swerve using
409 in much the same way Jim swerves ETag, Sam’s REST litmus test. Jim’s asking “do you really need sub-second responses and correctness?” is my favorite approach because if things are getting tricksy, your best tactic is to simplify.
Such admissions obviously put me firmly in amongst the REST chattering classes, but I think that’s OK because the Web has survived and continues to grow like Topsy despite the ignorance of the gory details amongst most developers, and inspite of so much bad magic specified by vendors and baked into b0rked software. The Web not only suffers ignorant fools like me gladly, it continues to absorb us in every sense.