4 ms·
I think calling REST a religion is pretty unfair, and an emotive response rather than being an argument against it. In any situation if you want to refute some
by sh1mmer 18y ago
I think calling REST a religion is pretty unfair, and an emotive response rather than being an argument against it.
In any situation if you want to refute something a well balanced argument is much more productive, rather than name calling.
The Lenski/Schlafly dialogue is a great example of this (http://www.conservapedia.com/Conservapedia:Lenski_dialog http://www.conservapedia.com/Conservapedia:Lenski_dialog). Lenski gives a compelling argument by refuting Schlafly point by point, not by attacking his religion. While the language is emotive, Lenski backs it with real points, not with the style of rhetoric Schlafly uses.
So far I see very little real discussion in this thread about why RPC is better than REST architectures.
- gruseom 18y agoI think calling REST a religion is pretty unfair If "religion" here means what it usually means in tech discussions, namely a rigid attachment to an allegedly "right" way of doing things, then I don't think it's unfair at all. I bought the O'Reilly book on REST expecting to learn a lot about web app design, and was really taken aback to find that it was 80% dogma. Having assumed that REST=good, the authors then praise or reject various designs not for what they actually do, but for how closely they adhere to REST. For example, they criticize delicious and flickr for not being proper REST apps, which is pretty amusing. Incidentally, I don't think the point here is that RPC is better than REST. There are more than two choices. The point is that conforming to REST for its own sake is an example of dogmatic thinking.
- sh1mmer 18y agoPersonally I found the ORA REST book did a good job of explaining some of the key problems that using HTTP RESTfully solves and the benefits that brings. I think one of the key points of the book was that Flickr and Delicious could do better with their implementations of a REST API. Just because something is successful doesn't make it optimal. I absolutely that adhering to something for it's own sake is stupid and dogmatic, I think that suggesting improvements to an implementation based on known benefits of an architecture is perfectly valid.
- gruseom 18y agoBut their suggestions had nothing to do with making Flickr and Delicious better - only more conformant to REST. Which was just my point: you have to assume that "REST = good" in order to call that "better". Personally, I'd rather learn about web app design by studying Flickr, Delicious, and Gmail than by making an assumption like that and then limiting my thinking to what it allows. Another amusing thing about that book is how hard they had to struggle to find real-world examples that passed their REST purity test. If I recall correctly, that's the only reason why Flickr and Delicious even came up.
- marijn 18y agoWhich book are you referring to? Googling brought me right back to this very comment.
- gruseom 18y agoI'm talking about http://oreilly.com/catalog/9780596529260/ http://oreilly.com/catalog/9780596529260/. If anyone here wants a copy, email me. I've still got mine lying around.
- gleb 18y agoI disagree. Dogma/religion fits REST very well. It's also a very useful way to describe it, and the concept of religion is very rich and carries a lot of information in it. Religion is a set of beliefs based on some core principles which cannot be experimentally tested. The beliefs system itself it resilient to refutation, and can "self-heal" if any of its predictions are proven false. While core principles cannot be proven false, they may require some suspension of disbelief from a reasonable person. By their very nature such sets of beliefs are very powerful, and tend to spread and persist. The flip side is that religion has proven to be an inefficient way to generate progress (while, say, science has proven to be efficient). REST relies on base belief of "resources" and "neglected HTTP verbs", and, by reference, "religion of HTTP." It has its scripture of Roy Fielding dissertation. It's also hard to pin to anything (try to figure out what REST actually is from it's wikipedia article). A relevant snippet from Richard Feynman was posted here a while back: http://www.collectedthoughts.com/quote.aspx?id=11302 http://www.collectedthoughts.com/quote.aspx?id=11302 Btw, REST certainly does have some useful beliefs in. It is a nice convention for pretty urls, for example. This does not require a suspension of disbelief.
- sh1mmer 18y agoYou describe religion as a set of beliefs based on some core principles which cannot be experimentally tested. You suggest that based on the Wikipedia article it's hard to figure out what REST actually is. Wikipedia defines REST as something adhering to some key design principles: 1)Application state and functionality abstracted into resources 2)Uniquely addressable resources using a universal syntax for use in hypermedia links 3)A uniform interface for resources for the transfer of state between the client and the resource. 4)A protocol which is client/server, stateless, cacheable and layered. That seems like a pretty specific design criteria to me, and not at all dogmatic. Moreover, there have been a number of comparisons of REST Vs. Other architectural styles (see http://www.mnot.net/blog/2005/11/07/REST_vs http://www.mnot.net/blog/2005/11/07/REST_vs). And a number of benefits of adhering to REST can be shown. That said, obviously, like everything else it's not perfect, but it's easy for you to refer to people who advocate the architectural style as a working practice because you clearly don't fully understand it yet given quotes like, It is a nice convention for pretty urls, for example. As URL/URI style has not one iota to do with REST other than resources are uniquely addressable.