The WPF Journey - Beginning Baby Steps

About a year and a half ago I picked up a copy of Windows Presentation Foundation Unleashed based on a suggestion from a Microsoft rep at a mini code camp they held for businesses in my business sector. I enjoyed the WPF/Silverlight discussion they had, especially since it gave me a chance to ask some questions on the subject, but aside from buying the book I made little actual effort in trying to learn WPF since then.

Skip to a year and a half after I bought the WPF book, and I am now two weeks in to my journey of learning WPF. The book I bought turns out to be pretty k-rad (and apparently still very much in-date), and the second generation of tools (Expression Blend 2 and VS2008) are now available to make the journey a bit less bumpy.

So far the journey has been relatively painless, and somewhat entertaining. Diving head first into Blend turned out to be a bit of overkill since it was generating XAML code I couldn't possibly understand, but it was pretty awesome too in that I quickly saw the familiar items from Flash like keyframes, tweening, and vector based graphics. Trying to figure out XAML by hand in Blend sucked (due to a lack of intellisense), so that is where I got my hands dirty with the XAML editor in VS2008 - talk about 'no frills'. Luckily I have now settled on a small tool called Kaxaml - intellisense, small footprint, and split view previewing - just what the doctor ordered.

A couple of days ago I listened to the podcast on hanselman.com with a developer and a designer talking about their work with XAML. This podcast was pretty interesting since I view myself as someone stuck somewhere in the middle, but the most interesting part of the whole podcast (aside from the Kaxaml suggestion) was the comment by the designer that he thinks XAML will primarily be written/tweaked by hand, and that he now reads and writes it just like he would CSS or HTML. It seems very daunting to look at the XAML generated by Blend and think that I might ever have to maintain that by hand, but then again so does a huge page of HTML when you have no idea what you are looking at - especially HTML generated by a tool like Dreamweaver.

So, if your following along with me in my WPF journey, go grab a good book, watch some WPF videos here or Blend videos here, pickup Kaxaml, and start creating some UI's by hand - I'll post a couple of my first tries soon for you all to laugh at.