[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: The Three Myths of XML
- From: XML Everywhere <firstname.lastname@example.org>
- To: email@example.com
- Date: Mon, 18 Jun 2001 09:39:21 -0700
I hear you. I have never tried to retrofit
pre-XML code to code that uses XML
everywhere. All of my XML work has
involved new projects or new
sub-projects, which is a luxury.
I read another email where you said Java serialization
works great for you. Dealing with typed data
and XML is a pain, especially for
floating point values. Will XSD solve
this? Will parsers ever support XSD?
The answer to both questions is "eventually". For now
there's the conversion functions
in programming languages such as "atoi" etc.
It works but it's tedious. Serialization
libraries elminate all of this extra work
and therefore is very attractive.
Both MFC and Java have their own
binary serialization built in. Java's
implementation is arguably better
-- after all, it was written years later and
it works on most platforms. But I
don't code in MFC or Java so what choice
do I have? XML is the best choice.
Being able to create a persistent serialized
document with a text editor has been
an enormous help. Even basic
DTD validation ensures that I'm writing
at least semi-correct documents. I
have used various binary serialization libraries
and I don't enjoy writing code
to create a sample serialized document,
and I especially don't enjoy having to
write all of the persistence code myself
(save file/read file). It's trivial to
write a XML file to disk and XML APIs let
you open a URL quite easily.
XML allows me to separate clients
from servers a lot more seamlessly,
and I don't have to wait for the clients
(even if they are stupid test apps)
to be finished before I can test my
server, because I can just create
sample input messages by hand.
You also mentioned that you tried
using HTTP in your RPC layer and
experienced horrible performance. Unless
you convert your app to using coarse-
grained transactions, this is inevitable.
The overhead of HTTP,
even with "keep connections alive",
is enormous. Again, you must have the luxury of
being able to start from scratch, designing
everything around a high-latency, low-
reliability network. For existing apps
that is simply not possible. Even then,
RPC is quite viable inside the firewall. I
use it all the time in the form of COM+.
But almost all developers have come to
the conclusion that COM+ and other
RPC methods don't work very well
over the Internet. Direct
socket connections don't so work good (sic)
over the Internet.
I couldn't disagree with you more
about sticking with marking text up.
My production apps encode data with XML every
minute of every day and XML works
great. Is it better than other tried and true
methods? I'd say yes, because
I can send XML messages to a log file, for
example, when an error occurs, so I
can investigate the problem later. I actually do that
quite often. This is simply pointless when
you're using binary serialization libraries.
When you use binary serialization you just have
to ignore those odd intermittent
problems and keep your fingers crossed.
If they never happen to you, consider yourself lucky.
But does this justify ripping out
tried and true methods just for the sake
of using XML? Of course not. Without
logging, it just takes you longer to find
the problem, but you'll find it eventually.
If your bosses can't weigh pros and cons,
I'd say you're working in hell (most
of us are -- you're not alone) and you're
justified to be bitter, but it's not XML's
fault at all.
XML is neither a panacea nor a
pariah. Those who advocate XML should
only do so when they have real coding
experience under their belt. Unfortunately,
most of the hot air bags do not. They
did the same thing with RPC, and you can
bet they'll hype the next technology that
----- Original Message -----
From: "Alaric Snell" <firstname.lastname@example.org>
To: "The Deviants" <email@example.com>
Sent: Monday, June 18, 2001 7:17 AM
Subject: Re: The Three Myths of XML
Quoting Uche Ogbuji <firstname.lastname@example.org>:
> You described Clark's article precisely: "satire". I don't think
> are many people in positions of dangerous influence who ascribe to the
> described "magical thinking".
There are... I've been burnt by them. Ever wondered why I'm so cynical about
XML? I've had to shoehorn it into situations that it's totally unsuited to.
Stick with marking text up!