Ever since the PDC, I've been hearing stuff like this about XAML:
- Why didn't Microsoft run with [insert XML application here] instead of XAML? Why did they create a brand new markup language?
- Why doesn't Microsoft switch to [insert XML application here] instead of XAML?
The first item doesn't shock me too much. I listened to quite a few conversations at the PDC over whether or not Microsoft should have just used SVG. It makes sense to question the choice of markup language, and the question of why Microsoft chose to create its own is a good one.
However, what's done is done. I rather like XAML. After about three minutes with it, I felt at home. In fact as soon as I saw it in action during the PDC keynote, I felt like I "got it." It makes sense to me. But, that isn't what matters.
The situation as of February, 2004, is that XAML is integrated up to its little angle-bracket neck now. Take it for a spin, and you'll experience the satisfyingly uber-tight coupling between the language and the plumbing with which it interfaces.
So, XAML is good, and XAML is what Microsoft chose.
This leads to the second item in the list - the one in which people suggest that Microsoft switch to [XML application X].
All I have to say is this: Are you completely out of your freaking skull?
I'm not going to pretend to be an expert on [XML application X], but I don't need to be in this case.
Take XUL, for instance. I've encountered people who've suggested that XUL be used in the place of XAML, and it blows my mind.
The first reaction I have is that the person making the suggestion hasn't:
1. Used XAML
2. Used Longhorn
3. Read a three minute XAML 101 tutorial
4. Seriously considered what problems XUL would solve - in other words, why, in terms of technical merit, it should be used
It drives me nuts because the suggestion is political. Screw the fact that XAML is the perfect hand for a Longhorn shaped glove - it isn't open source, Mozilla something, BSD this and that, and so on.
I'm not saying that XUL is bad - I've used some kick-ass apps that take advantage of XUL. But, XUL has its own uses in its own domain, and that domain isn't the one currently handled by XAML.
Then, beyond the issue of a complete and total lack of a good technical reason to switch to [XML application X], think about what's being suggested:
Rip out XAML and retrofit the system with [XML application X]
All Microsoft cheerleading that I do aside, you should be spanked, long and hard, and preferably with a porcupine that's been coated in cyanide.
Just because you don't like the fact that Microsoft created a new markup language, you want to rip it out and replace it with something else.
Did you stop for even a moment to consider what a monumental task that would be? Why don't you just ask for someone to repaint the Empire State Building? Or have it moved a block over? Or transported to Sweden?
For crying out loud, why don't you just ask for the pancake in the middle of the stack?
XAML, my dear friend, my dear future gas-pumper of America friend, is a real language at this point. It's in its infancy, but the birth is quite over, the language was born a while back, and it’s taking its first few steps.
I have an idea to give you some perspective: Do you have any young children? What do you think it would take to flip-flop their genders at this point? Has it always bothered you that Timmy turned out a boy? Why don't you just fix that?
Finally, let's just think about the arrogance of the suggestion.
I want to rip XUL out of Mozilla and replace it with XAML simply because XUL isn't a Microsoft product - how does that make you feel?