I've added two slides to just about every presentation I give on programming Silverlight.
The first is labeled "What you want me to show you…
The second is labeled "What I'm going to show you…
Because Silverlight is capable of delivering extremely rich client side experiences, developers are, naturally, eager to learn how to create beautiful, engaging applications. The problem is that we don't yet have a drag-and-drop-Masters-Of-Fine-Arts control.
The reality is that some aspects of web sites will be built by designers, some by developers (read: coders) and some by a new breed of web-developers who have skills in both camps.
For a lot of us, though, coding for Silverlight will be about…. coding! And that means understanding the architecture of a Silverlight application (how does the XAML file relate to the event handling code file, and how do they relate to the rest of the application) and then doing what we've always done: making the application and business logic work.
The good news (or at least I think it is good news) is that to be a good Silverlight programmer, we do not need to suddenly become great User Interface / Vector Graphics designers. We don't want to deliver product that look like they were designed by a 4 year old, but writing world-class code is a full time job; creating world-class beautiful pages is, arguably, a different full time job.
To do our jobs, we need to understand the fundamentals of XAML, and the best way to do that is to look at fairly simple XAML, whether it is written by hand or by a tool such as Expression Blend. That is why I tend to demo with triangles and Little green men.
Having said that, programmers can make tremendous use of Expression Blend and I hope to begin a series of videos in which I use Blend from the perspective of a developer – creating (for example) buttons that look much nicer than I could code by hand and in much less time.
More on that idea in a post very soon.