here's a brief history of the term "restful" came about:
- having to use different email clients and different file server clients for each and every service sucks ass
- here comes the web browser: without having to download plugins, i can go to webmail, i can use a forum, i can share files, all with the same program.
- you can click "open in new tab" halfway through a list, and not lose your place, which is kinda cool if you think about it.
- [thesis voice] what if we called that detail "representational state transfer"
- let's write a really impenetrable thesis about how cool it is we can do this, and what sorts of constraints got us there
[two hours later] people discover the thesis and re-enact the fall of the tower of babel:
- hey, this "one client for every service" thing is cool, let's write a million different apis which all need special unique clients, and call it "restful".
- you're wrong, i am 100% sure that using rest means "make it look more like webdav". everything must be crud. here is 100 page spec on pagination in json.
- actually, never mind all that. what if we had one browser per website instead
as much as i think about grabbing a broken table leg and screaming "WHERE IS THE REPRESENTATION OF STATE AND HOW IS IT BEING TRANSFERRED" there isn't much point:
- the term 'restful' is a complete lost cause, there's no real immediate benefit to having a precise technical understanding, and the misconception is far easier to understand
- the loudest advocates for '100% original thesis restful' are often just as wrong as everyone else, as they still don't end up with "a thing you can use a browser with"
- people started using 'hypermedia' instead, but in practice it's almost as ill defined, with long running arguments about the correct types of urls and methods
the thing that's funny though? the thesis is a really bad way to understand how a browser works, anyway.
the thesis is actually about a methodology for understanding systems by means of layering constraints, using a browser as a key example. unfortunately, this methodology doesn't really seem to work, given that no-one actually understands rest or restful very well.
to the point where the name 'rest' now means something entirely different. it's almost as-if the thesis itself is anti-mimetic.
