Reviews

Review: Xamlon

Xamlon 0.9 Beta 5
Free
Xamlon
www.xamlon.com

Xamlon provides further proof (as if any were needed) that small companies can be more nimble than Microsoft. The comapny's eponymous product allows you to use XAML to create user interfaces today. Although it's still in beta, they're clearly well ahead of Microsoft just at the moment.

A bit of background: XAML is the XML-based markup language that Microsoft announced in October 2003 for developing user interfaces in Windows "Longhorn". (Microsoft has more recently announced that this model will be available on Windows XP and 2003 as well). At the time, the Xamlon folks had already developed an XML-based user interface product for another product. So, they took what they had, incorporated Microsoft's tags, and came up with Xamlon - a XAML implementation suitable for any operating system from Windows 98 forward, but available much sooner than Longhorn.

XAML uses XML tags to specify a user interface. For example, here's a simple bit of XAML that specifies two circles inside of a border:


<Border xmlns="http://schemas.microsoft.com/2003/xaml" 
  Width="400" Height="400" BorderThickness="5"
	BorderBrush="Black">
	<Canvas Width="100%" Height="100%">
		<Ellipse RadiusX="100" RadiusY="100" CenterX="140" 
		  CenterY="140" Fill="#330000FF" />
		<Ellipse RadiusX="100" RadiusY="100" CenterX="260" 
		  CenterY="260" Fill="#33993300" />
	</Canvas>
</Border>

The goal of Xamlon is 100% XAML compatability: any XAML that runs on Longhorn should also run on Xamlon. So far the company has released a number of betas, and their most recent edition takes a huge leap forward: it now includes an add-in for Visual Studio .NET that lets you design XAML user interfaces using the IDE. This is well ahead of anything that Microsoft has done yet, though no doubt Redmond has something similar up their sleeve.

It took me all of two minutes to write "Hello XAML" given the tools in this beta release. There are also plenty of demos to get you started understanding the XAML markup language, though the product documentation is sketchy at best at the moment. Xamlon uses a runtime interpreter to turn XML code into a user interface. Their ultimate plan is to distribute the runtime free, with a developer license and a free noncommercial use version.

If you're planning to still be doing Windows development in a few years, you'll likely need to know XAML. To get started now, you could install the alpha version of Longhorn and beat your head against the wall when you run into problems. Or you could install Xamlon on any box with the .NET Framework SDK, and get started much mroe easily. I know which I'd choose.