I participated in a class last Spring that assessed
CORBA 1.1 and OLE/COM and we concluded that CORBA
was superior by a small margin, but that neither
system really seemed to offer a rock-solid distributed
objects solution.
Since then, however, I have seen the Common Object Services
Specification and the C++ Language Mapping, as well as other
CORBA 2.0 components and I feel that CORBA has really
pulled ahead of COM/OLE.
There are a number of features that COM/OLE simply does not
address adequately or does so with a poor solution. CORBA
IMHO does a much better job of addressing those issues such
as naming across object domains.
I agree with Prasad in his assertion that ISV's should pay
attention to CORBA and start working with it now as opposed
to allowing ourselves to end up with COM/OLE based on a single
aspect: granularity.
CORBA is designed as an architecture that really is open and
extensible at all levels (within certain interface-compatibility
constraints) The objects created in a CORBA system can be very
fine-grained and can define their own interfaces to boot. One
fundamental flaw with COM/OLE is that you have to pick pre-defined
interfaces and have your application implement them. In other
words, Microsoft not only dictates the standard, they determine
what object interfaces are necessary. Assuming they would approve
each new interface, how long will that process take? It would
seem that you could lose competitive advantage in a market waiting
for the wheels to turn at Microsoft HQ. Plus, once the new interface
is approved, how long will it take until everyone's applications can
recognize and utilize it?
I don't personally have much of an axe to grind one way or another
(despite how I may sound) and I do a fair bit of work on WindowsNT,
but I would advocate CORBA on the basis of being a technologically
superior solution that, if adopted, will save us numerous headaches
down the line.
It also seems that the main reason CORBA hasn't caught on yet with
the development and web communities is that there is no source-level,
free implementation available. If I had the time, and some cash I
would love to put it together myself, but I lack the latter and
therefore the former. Another reason I see CORBA taking a while to
catch on is the delay between standards submission and approval
and when that information is available to non-members. I understand
that OMG has to make operating expenses, but charging people for
documents that cost them nothing to distribute through the web is
shooting themselves in the foot. If I'm not a member of OMG I can
only access documents that are almost a year old. If the OMG moves
at anything approximating the speed of the web, they are miles past
the published 2.0 CORBA specs and only an elite group of companies
can view what is going on behind the curtain at the OMG. As an ISV
it doesn't make sense for me to become a member because I don't really
want to take the time to go to all the meetings and put my $0.02 in.
That's what membership should be about. If you have issues and
concerns that you want to raise then you have to pay to play.
However, for the rest of us who simply want to use CORBA, withholding
the latest information simply contributes to the sense that it is
a small group of powerful companies that are dictating the direction
of CORBA and that they have the inside track. Therefore, I can't
know enough to make a value-added contribution to the market.
So, in a very large nutshell, that's my opinion. Please feel
free to respond by thread or private email. Thanks!
Adam McClure
Center for Space Construction
[email protected]