Top > DaveNet archive > 1999 > Aliens or Micro-Organisms > The rest of this piece is the answer
1. Lynn, seriously, thanks for asking. I actually owe it all to Adam Bosworth at Microsoft. In 1997 he made two trips down to see me to show me what he thought XML was going to do. On the second visit we opened up the Frontier 5 object db outliner, and played around with building an XML tree in the database. It looked good. I made my decision right then and there.
2. As far as why it's important, and how I knew it would be (or why I believe it will be), it's simply that interchange formats are important. The first one I worked with was DIF, Data Interchange Format, which was the format that VisiCalc used. Then there was RTF, Rich Text Format, which was the format that Microsoft Word used. Then we did our own, called Dot-Head, which was the way of moving information between our outliners at Living Videotext.
3. Even HTML can be an interchange format. Early versions of Netscape stored bookmarks in HTML and parsed them into a menu when it booted. That was different from using HTML as a display format, although you *could* display the bookmarks in a browser if you knew how to trick it into doing it.
4. There's a long history of using text-based formats to represent information that's stored inside a program in binary structures. In a sense, this is what I do, take text and turn it into binary structures, and spit out text.
5. XML is a grand vision. It says that instead of having a billion incompatible text interchange formats, let's have just one. Did I understand the appeal of this immediately? Yes. Why? Because I know that users want to move stuff between programs. Did I believe in XML when I first heard about it? No. I thought it was going to fragment into a billion different dialects and that supporting XML was silly, because except for a few syntactic similarities XML was destined to be fragmented. Do I believe now that XML will unify into a single interchange format? Maybe. Human nature hasn't changed. People still like to blaze their own trails, and forget to look to see if anyone has gone down the path before them. Big companies think the world revolves around them, and little companies do too. This is how billions of incompatible formats come into being.
6. But there's cause for hope! What's amazing about XML-RPC is that it's catching fire *right now*, in a bunch of diverse communities. In the last week, Python and Java came on-line with both clients and servers. Yesterday a Shockwave client. And the Perl version was taken out of mothballs, and of course the Frontier version keeps on ticking.
7. What Bosworth showed me was that at least at part of Microsoft got the idea that they could take a back seat to defining the formats and support it with their software. He challenged me to overcome my objections and give it one more try. I decided to do it because I was 42 years old, and was pretty sure that in my career I wouldn't get another chance at doing this.
8. I see XML as potentially the Ice-Nine of the software world, that if it's properly supported and understood, that lock-in disappears. I know that many Frontier users will get what they want, for example, a way to deploy dynamic Frontier-managed sites on various flavors of Unix. I think it will suck the greed out of the software business, and allow users to have real choice, and make the big companies relevant only if they produce excellent software. I admired Microsoft's courage at being willing to operate in such a world.
9. At least we'll have a way to move stuff between Frontier, Perl, Python, Java and the other environments that get servers. So it was worth it. Will we get IBM, Oracle, Apple, Sun, Macromedia and Adobe to care about compatibility with Frontier, Python, Perl and Java? Well, maybe, you never know. It ain't over till it's over, right? We'll see.
      Click here to see the XML version of this information.
11/20/2008; 1:51:18 AM Eastern.
Refresh.