| 1. | I like XML because I like choice, not just for me, but for people who use my software. |
| 2. | I like choice because that means I can sell products and services without worrying about being crushed by a platform vendor. I like developing for the Internet, which I think of as the platform without a platform vendor. In other words there's no one who can crush me here. That's good! |
| 3. | Now, for the last six to eight years, developing for the Internet meant developing for the Web. You'd write server applications that run on any operating system that can host HTTP applications, which is basically every operating system. Users of your applications could use any operating system that had a Microsoft or Netscape browser (the two browsers supported by most Web apps) which, again, is most operating systems. |
| 4. | This was great because it meant there was no such thing as Windows or Mac or Unix software, there was just Web software. But like any apparent panacea, it wasn't so great, because the applications had limited user interfaces. There were attempts to fix this by adding Java and DHTML to the browser, but it always came up way short of the user interface techniques that we already knew. |
| 5. | It was a puzzle. Why do I like the Web so much when it's so funky? I spent five years figuring that out. In 1996 I learned that the Web is groupware. Real-world websites are collaborations of designers, writers, programmers, graphics people, and users. Anything short of groupware is going to come up short. |
| 6. | Then we spent two years porting our publishing software to Windows. I hate porting, it's a waste of time, but our home platform, the Macintosh, was in constant confusion, and the people we wanted to reach were using Windows, in droves. So we ported. |
| 7. | Some time in 1998 I decided to start editing my home page, then other parts of my website, in a Web browser. It was fantastic! Before that I had used a check-out-check-in system, the same kind of software that programmers use to manage application development as groupware. |
| 8. | Making the switch to editing in the browser had one huge benefit. I no longer had two locations for my writing. When I noticed a mistake on my site, I clicked the Edit This Page button, made the change, clicked another button and the change was made. I didn't have to memorize two locations for the content, one for reading and one for writing. And there were no mistake-prone 18-step processes for updating the site. Three steps is all it takes, and that's nirvana for a Web writer. |
| 9. | (And even better, I didn't have to bother a grouchy site administrator. I could do all the editing myself.) |
| 10. | Now here's something even weirder. Writing in a Web browser is wonderful but it also sucks. In other words, the Web browser is the best place to edit copy for the Web, but it's also the worst. Why? Because the editing tools in the browser are the worst. No Find-and-Replace or Undo, none of the elegance of the great desktop writing tools of the Mac and Windows. |
| 11. | So how could I get the best of both worlds, a great writing tool with integrated networking? Believe it or not, that's what lead me to XML. |