« .NET LINQ | Main | PDC - PDC Goods Tips and Tricks »

Microsoft Sparkle First Impressions

Microsoft finally demonstrated publicly a new application, part of the Microsoft Expression “suite”, which is targeted at designers to create rich Windows Presentation Foundation applications (FKA, Avalon). The new designer tool, code named Sparkle, is remarkably full featured considering its still somewhat preliminary state.

Sparkle has been labeled as the “interactive designer.” The current plan is that Sparkle will become part of the typical software development workflow, but it will be on the designer’s desktop, not the developers. Sparkle understands MSBUILD scripts and CSPROJs from Visual Studio natively so that a designer can directly interact with a development project (of course, this is good and bad, but it’s definitely something that is important to support).

I had an opportunity to experiment with Sparkle during a hands-on lab and talk briefly with some of the testers and program managers about the project. First off, it’s not available today (as of Sept 2005), and the release schedule isn’t public. No betas on the schedule, but they definitely will be coming.

The UI is sort of a mix between Visual Studio and Adobe Illustrator (maybe some Macromedia products as well, but …). It should be relatively easy for a designer to jump in and understand the basics of doing design with the tool. Sparkle was full of many useful modules which made doing data-binding and common tasks very easy. The UI did seem ‘washed-out’ though … too white. Maybe they’ll support skins (they should — the tool is natively written in C# and XAML!).

I followed a script, and didn’t have an opportunity to explore outside of the script, so my experience was limited to only things that Microsoft wanted me to see and try.

What I saw and tried though was very impressive. With only a couple of clicks, I was able to data bind an XML document to a UI, automatically create a list (box), and show the title field in the list without any complicated set of steps. Even cooler was how easy it was to databind a “detail” pane for the items in the list. My XAML skills have grown weak over the past months … but the tool made it possible to not know the details of XAML. Unlike Acrylic (another member of the Expressions product suite), Sparkle natively understands how to do animations and not just static displays. Arcylic is all about creating static images and pages. Sparkle is all about creating the application experience.

Sparkle seems to be reasonably well designed. Certainly it will be possible to create simple XAML-based user interfaces very quickly, but more complicated applications are likely to require some training, especially for non-technical designers — especially as it relates to how to work with the developers to produce a fully functional XAML application with minimal time and effort. I’m sure for most designers they welcome this change, but it will take some time. There’s probably an opportunity for some good books and training for designers so that they can get up to speed on this new tool and how to use the more powerful features of XAML within Sparkle.

All in all, Sparkle is a very welcome (and necessary) addition to the Windows Presentation Foundation tool set. XAMLPad (and relatives), Notepad, and XML schema-based Visual Studio intellisense just don’t cut it any more.

Demos (although as of this writing, there isn’t one for Sparkle).

I do hope this “sparks” some competition though. The only products shouldn’t come from Microsoft.

Update: Video from Channel 9. (I haven’t seen it, bandwidth starved here at the PDC).

Help support my web site by searching and buying through Amazon.com (in assocation with Amazon.com).