[
Lists Home |
Date Index |
Thread Index
]
"People complain about the DOM, but they don't embrace alternatives. For all the work
that people have done to provide alternatives such as JDOM, dom4j, XOM,
etc. in the Java world, the typical users and the major Java players still use
DOM, warts and all." I'm not at all convinced this is true, but I
don't have any information at my fingertips to dispute it. Would anyone
care to present facts on one side or the other?
It's impossible to get
facts about the how many developers are using different technologies: all one
can do is share personal impressions.
There's a logic flaw in
the first sentence above: the people who complain probably do embrace
alternatives; it's the people who don't complain who don't. And the vast
majority of developers don't complain. They just put up with all the lousy stuff
that's thrown at them. Many of them probably don't even recognize that it's
lousy, others just expect technology to be lousy, that's how they earn their
living, by making lousy technology work. After all, even on this list we all
know that XML itself is not exactly flawless, yet we put up with
it.
But if this is true, why have cleaner, programming language-friendly
alternatives failed to displace the dear old DOM as the dominant XML
programming model after all these years? I have a few hypotheses (and
these are MY hypotheses, not some FUD from Evil Empire
Central Command, so blame me for any stupidities and the blatant
exaggerations).
- Duh, the network effect. A mediocre standard beats a better
non-standard every time.
- Serious XML developers use XSLT for the heavy
lifting and simply don't worry about APIs any more.
- Sun and IBM haven't included any of the alternatives in their
distributions, so the masses don't even know these things exist, or fear being
stranded in a backwater if they do adopt one.
- Compiled languages are *so* last century, all the interesting XML
processing alternatives are in the dynamic languages world. [E4X | Python | Ruby | PHP | Scala ] rulez, who cares
about any of that stuff anymore?
Thoughts on any of these hypotheses, anyone?
I don't see much of your option 4. The
others are all perfectly valid. DOM is part of the JDK so it must be
mainstream. There's also a 5: A lot of Java users think that data binding is
the right way to do things. And a 6: in many large companies
technology choices are made by people with very limited technical
knowledge - certainly not by programmers.
Michael Kay
http://www.saxonica.com/
|