4 ms·
So what do you call a system that uses more than two HTTP methods (e.g. uses PUT and DELETE as well as GET and POST), and has marginally-more-human-readable URL
by jholman 11y ago
So what do you call a system that uses more than two HTTP methods (e.g. uses PUT and DELETE as well as GET and POST), and has marginally-more-human-readable URLs, but doesn't send self-descriptive representations, doesn't use hypermedia, doesn't Transfer REpresentational State, and probably also isn't stateless?
I mean, statistically speaking, if you have such a system, my bet is that you call that system RESTful. Furthermore, if you have such a system, you vastly outnumber the people building systems that obey Fielding's constraints. So in practice, you win the argument about what "RESTful" means.
Can we please stop legitimizing Rails's whimsical aesthetic choices by pretending that they have something to do with an academically-justified architecture, and just accept that they're just another way of ripping your denim and then safety-pinning it closed, by which you demonstrate that you're not a square and you don't write Java.
- herge 11y agoFrom seeing your arbitrary attack against Ruby on Rails, an 11(!) year old framework, I'm going to guess that you'd be like those guys in the 90's who were saying "almost-ACID" databases were good enough.
- oldmanjay 11y agoArbitrary attacks galore!
- hhariri 11y ago> "So what do you call a system that uses more than two HTTP methods (e.g. uses PUT and DELETE as well as GET and POST), and has marginally-more-human-readable URLs, but doesn't send self-descriptive representations, doesn't use hypermedia, doesn't Transfer REpresentational State, and probably also isn't stateless?" What's wrong with calling it an HTTP API?
- mwcampbell 11y agoREST is what Dr. Fielding says it is, since he coined the term. Anything else can just be called an HTTP API. What does Rails have to do with it?
- gkop 11y agoSometimes it feels like nobody has read Fielding and that people just make up what REST is to be what Rails prescribes.
- dang 11y ago> Can we please stop legitimizing Rails's whimsical aesthetic choices by pretending that they have something to do with an academically-justified architecture, and just accept that they're just another way of ripping your denim and then safety-pinning it closed, by which you demonstrate that you're not a square and you don't write Java. Please don't do this here. Snark like this is good for starting technical flamewars but it invariably lowers the quality of the discussion.
- brazzledazzle 11y agoEven though you're right this line almost made it all worth it in terms of comedic value: "...accept that they're just another way of ripping your denim and then safety-pinning it closed, by which you demonstrate that you're not a square and you don't write Java."
- e12e 11y agoSigh, maybe Client-Server or Remote Data Access?: "3.4.7 Remote Data Access (RDA) The remote data access style [131] is a variant of client-server that spreads the application state across both client and server. A client sends a database query in a standard format, such as SQL, to a remote server. The server allocates a workspace and performs the query, which may result in a very large data set. The client can then make further operations upon the result set (such as table joins) or retrieve the result one piece at a time. The client must know about the data structure of the service to build structure-dependent queries." http://www.ics.uci.edu/~fielding/pubs/dissertation/net_arch_styles.htm#sec_3_4 http://www.ics.uci.edu/~fielding/pubs/dissertation/net_arch_... REST is a very specific architecture, with very specific constraints. Not everything is REST, not everything should be REST. And there's certainly no reason to call things REST, if what one means is simply a client-server application over HTTP. But if what one is building is "just" client-server, perhaps HTTP isn't the best transport.