Sponsored Link •
George Santayana, a notable philosopher, coined the phrase, "Those who do not learn from history are doomed to repeat it." A study of the history of the CORBA standard reveals that for WebService standards, history is again repeating itself.
William Grosso has put together a presentation about the history of the CORBA standard. The presentation focuses on the social and environmental factors that lead to the development of the CORBA standard. There are a lot of parallels in CORBA's history and the emerging web services standards.
CORBA defined in 1989, however vision based on the world of 1985. A world were PCs were just starting to emerge, businesses had dedicated machines with dedicated applications and the corporate network was still being built. The presentation explains that CORBA had several high points:
- Limited Goals
- Standardized Language Mappings
- Very Efficient Protocol
- Key Services Defined Early
- Strong Support for Server Developers
However, Grosso says by the mid 1990s, CORBA hype had outgrown the original ambitions and CORBA proponents were claiming amazing things. He then highlights the low points of CORBA:
- Interoperability Took Too Long
- Specifications evolved slowly
- Reliance on Fat Clients
- Lowest Common Denominator Technology
- Using IDL Too Complicated
- Brittle Design Methodologies
- Very little support for Application Lifecycle
- Bizarre Mystique
- No Support for Network Failures
- RPC Model
If you look at this list, every one of them, except perhaps one, applies to Web Service standards. That leads me to a grim conclusion, for web services, we are doomed to repeat the failures of the past.
Why do standards evolve in this way? Is there something fundamentally wrong in the way we create standards? Jim Waldo has a few keen insights on this matter. One of his main points:
A standards body is often a lousy place in which to invent a technology.
Waldo explains that there may be substantial discussion of technical merit in standard groups but he says that its really lip service. I also think that standards groups tend to choose the lowest common denominator of innovation. That is, standards groups tend to only approve innovation that they all collectively grasp, however in most cases innovation tends to be grasped only by a few.
Another problem is that standards groups tend to create documentation rather than implementation. That is a fatal flaw which I explored in "Be Liberal in What You Accept, Conservative in What You Send". The lack of a standard compliant implementation undermines interoperability, the core essence of standardization.
It's interesting that standards groups give the participants an illusion of choice. Unfortunately, history clearly shows that their fate is preordained. I guess George Santayana, was right when he coined the phrase, "Those who do not learn from history are doomed to repeat it."
|Carlos E. Perez has been an object-oriented practitioner for over a decade. He holds a Bachelor's Degree in Physics and a Master's Degree in Computer Science from the University of Massachusetts. He has polished his craft while working in IBM's Internet Division and IBM's TJ Watson Research Center in Hawthorne, New York. He now works for a startup 1/100,000th the size of his former employer. He writes about topics covering emerging aspect and object oriented paradigms, loosely coupled architecture, open source projects and Java evangelism.|