This past week, a veritable bomb of XAML-related info exploded in the Microsoft offices in St. Louis as XamlFest came to town. This two-day training seminar featured John Pelak, a Microsoft Architect Evangelist from Boston and a whole lot of XAML coding.
XamlFest is a training program that was created to introduce developers and designers to eXtensible Application Markup Language and the Microsoft technologies that use it, namely Windows Presentation Foundation (WPF) and Silverlight 2. More so than other technologies, this kind of program is necessary because designing and building applications using XAML is very different from previous UI technologies. XAML is extremely powerful and getting your hands around what it can do and how it does it can be intimidating. Thus, the XamlFest agenda takes you through an introduction to the XAML language and how it is used in WPF and Silverlight. It also shows you how you can use Visual Studio 2008 and Expression Blend 2 to develop more quickly and efficiently.
The event was attended by approximately 60 people both days, filling the training room at the Microsoft office to near capacity. Those who attended were primarily developers, but there were a few designers in the mix as well. John kicked things off on Thursday morning by showing some demonstrations of WPF applications, giving the attendees a solid feel for what can be done with the technology. After that, it was all WPF. We focused on laying out an interface in XAML using containers and controls, and then how to use .NET managed code (in this case, C#) to implement functionality for those controls. Right after lunch, I did a walk-through of Expression Blend 2, a designer-centric tool for doing visual XAML design. This talk covered productivity tips and tricks in the Blend UI, custom style and resource management, custom control development and UI animation using storyboards and the timeline tools. Finally, John took us home on day one with a great overview of databinding in WPF using custom collections and lists.
Day two was completely focused on Silverlight. We started off with an overview of Silverlight 2 and moved quickly into building a Silverlight application. We worked through the basics of how Silverlight applications are built inside of a web page and moved quickly to showing how we could pragmatically port the WPF application we worked on the day before to Silverlight 2. While not everything works the same, we were able to, over the course of the morning, replicate all the functionality of the previous day’s application and even add a few additional features. John finished up right before lunch, so I took over for the afternoon session.
As it was a Friday, I thought we’d have some fun and work on a “real” application using the skills presented over the previous day-and-a-half. I laid out a project to build my band, Lake 32, a media management application for our web site. Basically, I wanted a Silverlight 2 application that would bind to an underlying data sources for music, video and pictures, as well as a means to let people sign-up for our electronic newsletter. I encouraged everyone to form into groups and work together to develop a visual concept and collaborate to design and develop the application. The kicker is that the teams have a week to submit their application to a Live Mesh folder I setup for them and the best designed application, to be judged by the guys in the band, will be put on our home page. I was excited that most of the group stuck around and worked on this, the final team packing up three hours later. I can’t wait to see what all these teams come up with!
I had several conversations with XamlFest attendees over the course of the two days and everyone seems to have enjoyed the training and got a lot out of it. John did a fantastic job engaging the group and getting them to code along with him. I know I speak for many that the words, “This is wicked cool! Ship it!” spoken in a thick New England accent will stick with me for a long time to come. I mean, I said it to my kids this weekend when they rearranged some furniture in my library. They didn’t get it, but I don’t care.
While this XamlFest is over, John and will be working together to try and put this event on in other cities throughout the central region of the country, and hopefully XamlFest will be coming to your town soon. I’d like to personally thank all the folks in St. Louis for coming and participating in this event. It never ceases to amaze me what a vibrant and engaged community we have here in St. Louis. Until next time, XAML ON!