Boris Mann

Open Source. Community. Decentralized Web. Building dev tools at Fission. Cooks & eats.


Longhorn's Special Sauce

So the Microsoft PDC is now in full swing. Reports are starting to filter back from the mothership, like this one from Marc Canter. He seems quite impressed, especially given some earlier posts.

There are lots of technical bits flying around all over the place that will probably be better summarized a week or so from now. I see XAML as the special sauce, the most important thing that was announced. What is XAML? It’s XML Application Markup Language. Or at least, that’s what it is now – according to Google, it used to be Transactional Authority Markup Language. But on to Microsoft’s XAML: it is XML markup that can define everything from UI to applications.

So, now that this has been revealed, everyone has to ask themselves: what does this mean for [insert-favourite-operating-system]? Read on…

First of all, it’s not like Microsoft has come out with a completely new animal. This is much like Mozilla’s XUL – a markup language that goes beyond HTML to create applications indistinguishable from desktop applications.

Much like Windows-only code in IE (and access to the IE dlls running on Windows), XAML will enable many types of rich media apps…on a Windows desktop. Goodbye, Flash. So now what? What about other platforms? The way I see it, there are a couple of options.

Write XAML-compatible engines: basically, applications/extensions/plug-ins/whatever that enable non-Microsoft clients to run XAML code. I imagine that a lot of XAML will have hooks directly into Longhorn, so it may not be possible to duplicate a lot of the functionality. But, if Microsoft has to add XAML support to older versions of Windows, it might still be feasible.

Develop a compelling alternative platform: I really do think this is XUL – albeit with 2 years of development behind it. There may be different types of “XUL containers” (that is, apps that can run/display/interact with XUL code on the desktop), but the most likely candidate is the browser on non-MS platforms…especially since Mozilla can do this today.

Actually, I think both options will go ahead. Just like .NET has Mono (although neither seem to have gotten very far), there will be a rush to reverse-engineer XAML on alternate platforms. At the same time, XUL development will get a kick in the pants.

I think, perhaps, that someone knew. How else to explain that the newest version of Safari supports XUL? (just a tiny part, but it’s a start). So I think we see that Apple has firmly cast it’s vote into support XUL as it’s answer. This may very well go back into the Linux/open source world with WebCore (based off of Konqueror’s KHTML library).

Time to start learning XUL…

Note to Colin: I bet your market value as a coder just shot up at least 50%! (Colin did extensive XUL development at OEOne (now Axentra)).