Wow. Just wow. See "LANGSEC explained in a few slogans". Short, easy-to-grasp explanation of why complex protocols create new problems. I'm happy with REST and the stack of stuff under it (HTTP, TCP/IP, etc.) Once upon a time (2001), I invented by own version of a RESTful protocol outside HTTP. That was cool. Very simple, and very fast. But relatively inflexible. The syntax was more like FTP and SMTP; the semantics where mostly just CRUD rules and RESTful state transfers. I was way too dumb to leverage HTTP methods and the genius of a URI.