Patrick Logan wonders what I’m referring to when I use the
word success
in this paragraph from What WS-* Got Wrong:
From the beginning, WS-* has been approached incorrectly. The approach that we’re advocating is to first embrace and understand existing web architecture and then to gradually enhance (constrain) it to meet the needs of new requirements. We advocate this not because we think it’s a better way to be successful, we think it’s the only way to be successful.
That’s some claim! Is “success” even defined in this case? -Patrick
Success
is the widespread adoption of some form of interoperable
communications between coordinated and uncoordinated machine agents over
large network bodies.
What I was trying to say here is that my beef with WS-* has less to do with architectural and technical issues and more to do with pragmatism and practicality. I’m fully aware that these technologies could be adopted and would work more or less as specified. My problem is that WS-* won’t be adopted in any significant way because it does not exhibit the traits necessary for a technology to be adopted on a large scale.
If someone personally coordinated 200 people in various organizations, I’m sure they could implement solutions on top of WS- given a long enough time-frame. If 200 people are working separately, and are left to their own devices, in a more organic, web-like environment, WS- has much less chance of being used successfully.
I see REST vs WS-* as a simple case of worse is better (except in many ways I think REST is the more technically correct so bonus points there). It does exhibit the traits required for technology to be widely adopted and what’s more, it already has been widely adopted.