When the Web Services Architecture WG closed down, I took the opportunity to ask working group members what their reasons were for not using REST as a base for Web services. I continue to hear, on an almost daily basis, about how the Web is for humans, so that’s what I expected to hear. Instead, to my surprise and elation, I heard comments such as this from Roger Cutler;
Although I have not put the time and effort into studying it enough to be very sure, what I have seen of the REST-like solutions you have proposed or described to problems addressed by Web services indicates to me that it COULD have been done that way and that it would have worked. In fact, it’s even possible that it would have worked better and that it would have been better had it been done that way. I don’t really know that this is the case, but I think it’s possible it might be. I also think it’s utterly irrelevant. What’s done is done, and the world ain’t goin that way. In hindsight there are many, many places in the way all sorts of things have developed in the world that might have been done better or more directly. The progress of human affairs is imperfect at best. I personally participate in those imperfections.
A couple of other people responded, basically agreeing with Roger.
This is an important milestone, I’d say. It seems to signify the end of the “REST Wars”, as some Web services folks now accept that there are RESTful solutions to application-to-application integration over the Internet. Stage one is complete.
Stage two – which I’ve been arguing alongside stage one, but can now apparently focus upon more intently – is about software architecture; that unless your architecture has the properties your environment requires, you will fail. Even pervasive agreement on an architecture lacking in those properties is an insufficient condition for success.
Onward to stage two! Let’s hope this one doesn’t take another four years of effort (that message was my first message critiquing Web services, AFAICT).