Here's my 2 cents.
CORBA did some things extremely well. They started with a meta-model (IDL) and corresponding wire protocols (GIOP/IIOP). Good so far.
They even defined a few application protocols, although there were as many false starts (persistence, naming) as there were successes (trader).
The fact that security wasn't built in early didn't bode well, as it's hard to imagine building anything interesting without security. With SOAP, we bootstrapped off of SSL/TLS and implementations of a SOAP-specific mechanism (WS-Security) are coming slowly but surely.
For me, the fatal problem for CORBA was that they also tried to tackle standardizing programming models/language bindings.
Ever use CORBA using the C++ language bindings? Yuck.
How about in Java - not so good either.
We made the same mistake when we tried to take DCOM to UNIX. We could have done a protocol-only approach and built on a UNIX-based DCE library, but instead, we brought along a programming model that was designed to the Windows esthetic, not the UNIX one.
Fortunately, we're not taking that approach this time and people can pick their local programming system as they (or their employers) see fit. Our goal in Indigo is to make sure no developer is thinking about WS-*. Does this mean we're "hide the XML" guys - no. XML is our untyped story throughout Indigo. It does mean that the wiring up of WS-Policy/Security/SecConv/Trust/RM/Coordination et al is handled by our plumbing and unless you want to monkey with those headers, you don't have to.
As for the WS-* stack, I'm actually getting increasingly interested in WS-ReliableMessaging. The ability to maintain an end-to-end ordered sequence that survives transport teardown/re-establishment is pretty useful if you're trying to do any kind of conversational work. For the unordered idempotent stuff that Tim was doing before he left this Redmond coil, it's less of an interesting tool.
Posted
Oct 02 2004, 04:50 AM
by
don-box