Dr. Dobb's Journal November 2002
Dear DDJ,
Methinks the Good Editor doth apologize too much! I am referring to Michael Swaine's "Realizable Fantasies" (DDJ, September 2001) installment in the always entertaining "Programming Paradigms." He writes as if the Semantic Web needs defending. Frankly, if anyone has to apologize, it's the proponents of XML, as it is. The Semantic Webor something very like itis the only development that can save XML and its kin from oblivion.
"What?" you say. "With Microsoft and half the enterprise vendors in the world shouting their support of XML in neon?" With Bob Cringely devoting two weeks of columns to the subject (http://www.pbs.org/cringely/pulpit/pulpit20010412.html and http://www.pbs.org/cringely/pulpit/pulpit20010419.html) and with .NET, in its recent CD incarnation, mailed to the entire Western world along with a cover letter from Bill? And with DDJ's coverage of the better-parts-of-XML on its site at http://www.ddj.com/topics/xml/? And with even major XML articles in the same issue, at http://www.ddj.com/articles/2001/0109/0109toc.htm?
The fact is that XML is in serious danger of succumbing to the "New Kid in Town" mass psychosis that sweeps promising software technologies into town, and then out again, without slowing down to say "Hi." Somehow, we all can't seem to resist the temptation to hype the technology, hoping to pry free some venture capital, supportive funding, or maybe just a few purchase orders. Then, when the rubber doesn't meet the road, it's dumped. Fast.
XML's success was always predicated upon industry groups defining semanticmeaning as implemented in procedures, mostly softwareinterpretations for XML utterances. The idea, actually reasonable, is that each niche group would convene and hammer out standard tags usable for the niche interest. They'd publish, everyone would sign on, and we'd have Capitalist Heaven. There are efforts making good progress towards this in some areas; for instance, the Business Process Management Initiative (http://www.bpmi.org/index.esp) cited on DDJ's own XML site. SOAP is another good step (see http://technetcast.ddj.com/tnc_play_stream.html?stream_id=553).
But will all these efforts converge in a wonderful, ecstatic fusion of web-based capability with the rollout of Microsoft's .NET? No. How about later this decade? Unlikely. Why? Because XML and these efforts in themselves cannot define how receiving processes should respond when they get something outside of their scope, even if it is expressed using tags and values within their scope. How do we fix that? Something like Berners-Lee's Semantic Web.
So, to me, it seems that without Semantic Webor something very similarXML and its kin will have [a] brief day in the hot sun and come crashing to the ground, leaving business managers once more shaking their heads. To me, it seems that Mr. Swain needn't apologize at all. The folks who should explain where the Pixie Dust is coming from are the folks trying to get everyone to sign on to XML.
Jan Theodore Galkowski
jtgalkowski@alum.mit.edu
Dear DDJ,
I'm of course pleased that in his June 2002 column, Al Stevens gave my book C++ By Example a plug, which is most generous of him. Looking at my royalty statements, it appears that I am going to be no competition to anyone, anyway. I was sad to hear that Al couldn't get the (modified) Quincythe site (http://home.mweb.co.za/sd/sdonovan/faq.htm) was down for about a week when I was out of the country, which is Murphy's Law once again.
Anyway, it's up and running again, and I thought DDJ readers might be interested to see the two programs talking together. This was, and remains, a hack, since it was software development while under book contract, which is the worst kind. A sensible design would make "named UnderC" (the C++ interpreter) yet another kind of Compiler class; in this version, it's just spliced in.
Steve Donovan
sdonovan@mweb.co.za
Dear DDJ,
So far as Ken White makes any discernible point at all in his article "DBMS: Past, Present, and Future" ( DDJ, August 2001), he seems to be starting with the assumption that SQL is the embodiment of relational database technology. SQL has nothing to do with relational databases and indeed SQL stands today as an insurmountable barrier to ever exploiting a large fraction of the power that is latent in the relational model. If relational database technology is under pressure now, it's not because RDBMSs can't do the job, it's because SQL can't do the job.
The lesson ought to be clear. SQL was adopted for System/R as a convenient shortcut at the time. It was just good enough to be better than nothing at all, and at least its most elementary features could be quickly and easily exploited without bothering to learn too much. Which is why, to this day, most programmers still seem to use an RDBMS as little more than a flat-file access method and also why SQL is widely used. It is also the reason why so many systems based on SQL (and relational databases) are so dreadful.
Rather than being cheered that XML is a pragmatic solution to real-world distributed database problems, we should be chilled to the bone that it seems to be even more of an ad hoc solution than SQL was, and that its popularity is being predicted on the basis that you don't need to know much. SQL is killing the relational model (indeed, has made it hardly worth saving), and XML may well do the same for distributed databases. As we adopt it, we'd be wise to assume a relatively short, useful lifetime, during which it will pretty much fail to live up to the hype. None of this is to deny its likely usefulness for exchanging metadata though.
Roy Hann
rhann@RationalCommerce.com
Dear DDJ,
Further to the controversy about shared libraries, I agree (sort of) with Jeff Dunteman that they are probably not necessary on modern, fairly high-end single user machines like most desktop PCs, and certainly cause enormous problems on Windows systems due to poor implementation. However, on multiuser machines (like most UNIX boxes and mainframes), shared libraries and, even more important, fully reentrant programs are essential. Nothing will slow a machine down as effectively as having 30 copies of the same word processor in memory servicing each of 30 different users. Just ask anyone who ever had to use Data General's Complete Electronic Office, which ran on their MV-series minicomputers. I realize this is a fairly archaic example, but the underlying principle is still applicable.
David Irving
David.Irving@santos.com.au
DDJ