As you get older you take for granted lessons learned much earlier in your career. Then when someone asks why such-and-such is the case you do a double take, and have to engage the question with integrity and fairness. If someone suggests that pentagonal wheels are better than round ones it’s worth at least a few moments reflection.
So I admit it. My basic assumption is that standards, be they de facto or de jure, are inevitable in pretty much all areas of technology. Trivially, though not conclusively, I would note that this is simply a pattern I have observed. We have standard protocols at every layer of the network stack. We have standard API’s to operating systems. We have compatibility standards for laptop computers. We have standard connectors for IO buses. There are standards in database systems, in middleware, in document formats, in eCommerce choreographies and in digital audio formats. I am pleased at the local standards in electrical outlets, but not at the state of global inconsistency – my assumption is that this will change. Once you start down the list it is hard to find things for which there are not standards, or in which there are not some emerging standards. These standards may take a year or two to establish themselves (eg J2EE took 12-18 months), but I have assumed an inevitability of standards in the kinds of things that companies like StreamBase do. Including in CEP.
An observed inevitability often reflects an economic reality. The principle is that markets generally move towards the eradication of inefficiencies. If standards-based approaches are more efficient for customers than proprietary ones then standards will win, over some time period. An example might serve us here: In a recent case of a customer switching their solution from another SQL-style CEP product to StreamBase as they moved from prototyping work to their deployment architecture, the replacement took about two or three days. You read that right. With very little retraining of people, minor changes around SQL syntax (and to be fair some differences in detail semantics), replacement of the Stream Processing/CEP server, and not much else the customer had switched vendors. If that sounds like the pattern you’ve seen with SQL databases, J2EE application servers, CORBA systems, or JMS servers, then that’s because the example is identical to what was seen in those markets.
When you go back and ask yourself why standards tend to emerge in technology you have to note that proprietary solutions involve enormously greater costs around vendor lock-in. By contrast standards force price/performance competition, and the customer wins. I believe there may be circumstances in which pentagonal wheels are better (moon landers?), but in the general case circular wheels are an inevitable solution.
For the record: StreamBase is committed to standards. We funded the development of the initial StreamSQL spec by all of the leading academics in the field of Stream Processing, including but not limited to Professor Mike Stonebraker and the four other professors that were founders of StreamBase. We put the StreamSQL spec into the public domain. We are working diligently with competitors, partners and customers to iterate that specification, including of course the commitment to invest to keep StreamBase compliant with whatever is decided. The fruits of this work will become apparent over forthcoming months.
Stay tuned!