07/08/08 :: [SOA] the (other) REST is a Fraud and Everyone knows it. [permalink]
Stu responded to my post yesterday showing that I did not quote Matt properly. He was correct. However, after reviewing Matt's response, it is not that clear that he disagrees with Eric's view of REST since several of his points simply corroborate Eric's quote. So until he clarifies, I'll stand by what I wrote.
Stu also took issue when I questioned the integrity of some of the members of the (other) REST community.
Let me start by saying that IT is dying. No, Nick Carr did not kill it. No, it is not dying because "It does not matter". It is dying because IT can't do its job. IT can't do it's job because ever since we left the mainframe era IT has been served sub-optimal technologies, developed in a hurry by people largely incompetent (on the business side), sometimes simply greedy, that didn't give a damn about what they were chartered to do. 90% of the people I met on the vendor side match this description. This system was fueled by an ever lower barrier of entry: everyone and their brother could and did build "solutions", "frameworks" and "tools". Let's face it, vendors, small, medium or large, have always been concerned by the big bucks rather than delivering value. I would argue that the only reason why the business did not get rid of IT altogether is "Core Data". Core Data provides enough visibility into the business and this is the last thread which keeps IT within the walls of corporate. There are of course organizational issues within IT which contribute to its lack of value, but believe me, these would be minor annoyances if IT could deliver what the business needs. IT should not matter, the business only matters.
But, here we are in 2008: as a result of IT's debacle, G2000 companies are actually failing at an alarming rate. The French Societe Generale lost 7 billion because of IT and sloppy information system architectures (IT does matter). How many more of these do you need to open your eyes wide shut? The (other) REST community is about to axe the hand that fed it (and us) for so many years.
The situation is dire. The (other) REST is the ultimate moose trap: the (other) REST costs nothing, you don't even need to learn it, as you know it already, your developers are going to love it... The reality is that the (other) REST community who simply and only dreams of a universal middleware technology (who said again the business needs that?) could very well be the final blow to IT by creating "uniformly unmanageable information systems".
Now, when you say with your polished language that:
I think anyone claiming that contracts and governance are unnecessary complexities are sorely mistaken ... I also note have never seen any reputable member of the REST community suggest any such thing. I have seen advocacy for using more general and uniform contracts, but not avoiding contracts altogether.
I want to throw up. How could someone not question someone's integrity after this? The contract question was discussed for years. How many more years do we need until you guys stop spreading deeply and totally flawed arguments in the industry? A "uniform" contract is not a contract. Ron Schmelzer said in 2006:
The real challenge to applying REST as a means to implement loosely-coupled Services is that REST has no explicit contract to define behavior, which means that all behaviors are implied. In REST, the data pumped through a GET, PUT, or POST operation contain all the semantics necessary to understand how a Service behaves.
Therefore, REST isn’t appropriate for organizations that wish to take a contract-first development approach aimed at maximizing reuse and composition, in addition to loose coupling. And that’s the rub with REST – SOA aims to reuse not just the resource, but also the operation and the composition as well.
Any CompSci 101 student should be able to understand these two paragraphs, this discussion could have been closed years ago, yet the (other) REST community -that includes you- is trying desperately to keep it open and deceive scores of developers.
It took a comment by Roy himself to finalize the debate on the uniform interface vs contracts. Now did the (other) REST community advertized the results of this final discussion? no. This went right under the carpet. How convenient. This is integrity at its best.
I have personally spent countless hours to get Stefan or Steve to articulate the rationale behind their assertions that ultimately proved to be deeply and totally flawed. Did they talk about it? no. This the kind of things that matters to me. I have discussed REST versioning with Stefan several times, did he ever mention the discussions I had with Pete Williams? no, this is the kind of things that matters to me. I did however noticed that as a result Steve is not talking about "uniform" interfaces anymore, and Tim Bray toned down significantly his rhetoric on "the end of SOA" or "WS-*". I have shown over and over that I was capable of a logical discussion be it with Teo, John Heintz, Subbu, yourself or Pete Williams. Can you honestly say that the leaders of the (other) REST community are capable of such logical discussions?
Stu do you honestly think that any other engineering discipline (civil, aerospace, electrical, automotive, chemical...) would tolerate this level of discussion? no !! bridges would collapse, aircrafts would crash, cars would roll over, people would get electrocuted,... I let you contemplate the Société Générale 7 billion loss. Maybe after all we should grow up as an engineering discipline, because there won't be much discipline left in a few years.
The (other) REST is a fraud, a major fraud, like so many in the past (Business Process Execution Languages comes to mind as another example). You know very well that you will have to somehow recreate the REST-* stack. It will take years, and enormous resources while delaying the emergence of a new programming model so critically needed in IT. You know that, you can't deny it. You are doing the exact same coup d'état that WS-* did to ebXML and we lost 5 years there. How many years do you think IT is ready to loose on disserting on the merits of a "contract"? The (other) REST as it stands today is complete BS.
Now, Steve complains of being "stalked". But who is stalking who? (Roy's) REST has nothing to do with WS-*. They have completely different domains of application. What is the (other) REST community doing all the time? they are criticizing everything that is not "RESTful" (though Roy has to remind them what RESTful really means). Remember the SimpleDB saga? how about this post I wrote on InfoQ? How childish were the comments from the (other) REST community on an otherwise scientific review of REST vs WS-*? How many times the (other) REST community went after WS-*, SOA? without any justification, with completely flawed arguments. How many times?
Stu, if you are who I think you are, you would not be talking like this. It is time to face these issues (contracts, versioning, loose coupling, resource centric programming model, security, reliability, transactions, management... that are so critical to SOA and the renaissance of IT) and clean up your own community. Both you and I (and many others) know where the path lies, there is no question about it, so why not walking it with a solid rationale for a change? Would you dare?