I just attended sequential talks on XAML (from Rob Relyea of Microsoft) and XUL (from Ben Goodger, Firefox Lead Developer) at the XTech conference. One could argue about whether and how these technologies are in competition, but what struck me most were the differences in focus, approach and design philosophy, which I would summarise as exclusivity vs. inclusivity.
- Portability. The motivation behind XAML seems to be to make it easy to write Windows applications, or web applications in IE. The motivation behind XUL was to provide a first class UI on every platform without having to do the work multiple times – i.e. “we want to be inclusive; let’s work out how we can do that”.
- Localisation. The XUL system is designed to be very easy to localise, and Ben made a point of mentioning it. Firefox 1.0 is available in 40 languages, localised entirely by volunteers. No mention was made of localisation in the XAML presentation.
- Licensing. The XAML presenter dodged the question of whether Free software implementations of XAML are possible. The reference XUL implementation is available to all under a Free licence, the standard (as far as it’s documented) is open, and the authors neither hold nor would enforce patents on it.
Of course, having only heard 45 minutes on XAML, I could be mistaken in some of my understanding. Alternative views or corrections welcome.