|Home » Industry Watch (» The Technological » Hall of Monkeys » Heroes Banquet)
Oh that's not the way we do it! When our programs get too slow we just throw more hardware at them!
- Microsoft employee guesting a Mensa SIG do
XML is pretty neat. The entire OS X defaults system runs on it. It's pure text and has almost no limitations whatsoever. Objects of all sorts - including binary data - can be aggregated and even nested within each other. Every PLIST file in every Preferences directory is stored as XML. It's great stuff.
XML conforms to the paradigm laid down years ago by the mentor of the fathers of Unix Doug McIlroy: it keeps everything in old 7-bit ASCII text so anyone anywhere can understand anyone else anywhere else.
Ken Thompson invented the UTF-8 we use today on a placemat at a diner on 2 September 1992. With UTF-8 even Unicode can be transported across the Internet in 7-bit ASCII. Anything can.
It doesn't matter if you're born in Korea, or Japan, or Thailand; it doesn't even matter if you're born in the United States: 7-bit ASCII - those 128 characters and no more - constitute the lingua franca of the Internet and keep things flowing day in and day out. Without a hitch.
XML uses 7-bit ASCII and has similar standards for encoding the impossible. It all works - wonderfully.
Now come lamers, pressuring the W3C to make XML binary. They say XML is too slow. They want a 'binary' format instead.
HTML is text-based; so is electronic mail; so are the POP3 and SMTP protocols; so's FTP; so is nearly every protocol used on the World Wide Web today.
Your browser sends a 'GET' command in plain ASCII text to a remote site to get a page for you to view; your mail client sends similar plain ASCII text commands and even your JPEG attachments as formatted plain ASCII text. Your mail client sends a similar set of commands to get your messages, and any attachments come as plain 7-bit ASCII text and are effortlessly decoded so you can see a few holiday pics.
It's all done in text. And because it's all text, everyone can read it. Every human being and every machine. [It's possible to interface directly with web servers, POP servers, FTP servers, SMTP servers and more with plain text you type in at your own keyboard. Yes, Patricia, it's true.]
When it comes to XML, 'text-based' means even more: it means you can go into your XML files and edit them in a crisis situation. It means you will understand what's there.
Your brethren on Windows can't do this. They have a binary monster called the 'Registry' - a repository for every dirty trick the criminal hacker gangs have been able to dream up, a repository for clever shareware authors as well who think they have a right to hide data on those machines without their owners knowing it.
It's a mess and the single most dangerous part of that wannabe operating system.
And Microsoft have also done the unbelievable in creating their own 'binary' format for electronic mail. They send and receive mail as they're supposed to - in 7-bit ASCII - but then within that virus honeycomb known as Outlook store everything in great big binary BLOBs - and have thereby created further risks for program and system hangs and crashes. Give them an inch and they will give you a blue screen - 'de novo innovation', the cornerstone of Redmond.
Windows users can't correct a corrupt Registry. It's all binary and it's a jungle. There are special editors - they're not text-based - and Microsoft specifically do not advise people using them. [Yes, why do they exist in such case? Good question, next question, Patricia.]
Just like with the Windows Registry, with 'binary XML' you won't grasp a thing - you'll most likely lack even an editor with which you can look at the files.
You'll lose control. It won't be your computer anymore. And as soon as you lose control, look for Bill Gates hiding right around the corner.
You'll be back to Square Zero again and hear that spooky sound as the lid on Pandora's Box creaks open, ushering in a new era of Microsoft-engendered nightmares.
Systems with thousands of hiding places for interlopers; systems riddled by instability - one bit in error and it all comes tumbling down; systems that can't be recovered by a simple user-initiated dig and fix expedition.
It'll be lights out all over again. MS ActiveDarkness®.
Don't ask if MS are behind this - would it matter if they were? Give them an inch and watch how 'binary' XML usurps the 'real' XML and operating systems fall into line. Watch how Bill makes things horrid all over again.
We've had it good; we didn't need Windows and we got the best operating system in the world for both kitchen table and shop. We have by far the best user settings in existence. The entire Internet universe runs on 7-bit ASCII plain readable text and we think it's good as it is, thank you.
And we don't need more speed that a binary format could give us. If your programs are too slow, stop complaining: learn to be a real programmer instead. No system, at any time ever, was stopped by what someone perceived as lagging hardware. Microsoft have practiced the exact opposite for all these years - and for all these years got away with it.
People are starting to learn sloppy Microsoft programming is no good and even dangerous, but people now need to learn that Internet standards as they are today determine what freedoms they will have tomorrow. Binary XML, put in the pathway of Bill Gates, might be exactly what that virtual knight has been waiting for. We must see he never gets it.
Tim Berners-Lee has shown remarkably good judgement up to now. He developed the text-based HTTP protocol and then donated it to the world; he sits today atop the World Wide Web Consortium (w3c.org) and manages the web he and he alone created. And for the most part he does a great job.
But if he doesn't squash this binary XML monster before it grows too big to kill, we'll all suffer.
Write to Tim and tell him how strongly you oppose binary XML.
[If you do write Sir Tim, make your letter short and to the point, be nice about it, and use your real name. Why? Because this guy is one of the good guys: he gave you the web for free and he's a 'real' knight - as opposed to that other 'de novo innovation' stolen kind from Redmond. Thank you. Ed.]
Postscript: 30 March 2005
Someone very close to the top of the W3C and Sir Tim himself would like to point out the following.
- Correspondence sent to Sir Tim through this article was polite and well received.
- Although Sir Tim is the titular head of the W3C, he does not call all the shots; he is not a dictator. Standards are created through a process.
- Currently there is a debate on binary XML - which is why the matter hit the media in the first place.
- There are a number of places where the issues in the binary XML debate can be read. A good starting point might be the following URL.
- If you feel you can add something to the debate, then add it - but see if you can find out what the opposition is saying too.
The W3C pride themselves on respecting clear argument rather than vote count; if that be the case, there can't be a lot to be worried about.
PlistEdit: It's Your Computer