Free Silverlight Training
My friend Brian Madsen who owns CSharpZealot has teamed up with InnerWorkings to extend a really slick offer for Free Silverlight Training for CSharpZealot members.
In addition, Shawn Wildermuth has been way ahead of the crowd when it comes to Silverlight and has just created two more Silverlight Videos. His ADO Guy site has an entire Section dedicated to Silverlight and well, Shawn is gifted in many areas but when it comes to teaching, no one does it better.
On a similar note, my company recently sponsored an internal Silverlight contest where our different offices are competing to build the best game written in Silverlight. They put there money where their mouth is so the first place prize is pretty impressive. I've had my nose in the keyboard for the past few weeks trying to help my team win. If you're interested in learning Silverlight, one great place to get started is Here. Microsoft really did the right thing with Orcas (VS 2008) and even provides ready to run (almost anyway) VPC images.
Hopefully when I get some time I can start doing some more in depth Silverlight blogging but let me make a few recommendations.
- Use the VPC images for Orcas. The reasons are the same for any other alpha or beta product you'd want to install but outside of isolation and reducing risk, the time factor is huge. Using the VPC images, you can be up and running in under 5 minutes once you have them downloaded. Benefits like this are really hard to quantify but I can tell you personally that at times, getting my environment set up without VPC images was frustrating to say the least.
- Although it's often prudent to learn to code things without all the crutches that a powerful IDE provide, creating Silverlight with Intellisense and a designer is probably not a very effective way to start things. Unless you are really familiar with WPF already, the syntax takes a little getting used to and there's a lot of room to mess things up with typos.
- In addition to Orcas, make sure you pull down Expression Blend and Design. Blend allows you to create Graphics with XAML. I've already had a few Paint.NET and Photoshop fanatics get all over me for plugging Blend, but I think they are off base. I'm not advocating replacing Photoshop or Paint.NET with Blend. Blend however, allows one to create images with XAML. You in turn can look at the XAML that is generated and use it to help understand and learn XAML. If you did much Office automation, you more than likely 'cheated' in the sense that you just ran a macro and saw the code that was generated and used this as a mechanism to learn VBA and get past sticking points. Blend allows you to do the same thing. Sure, hardcore 'real' developers do everything in Notepad but if you want to get up to speed, using a tool to help you draw the effects you want and then being able to disassemble the XAML that was generated will get you where you want to be a LOT faster.
- Pull down each of the items in the Gallery and work through the QuickStarts. These encompass many common kick a55 effects and you can reverse engineer them to see learn how to do quite a bit.
- I have some pretty strong opinions on the books out there but even if a book doesn't address Silverlight specifically (most of them however have updated versions which do include Silverlight), you can still learn quite a bit because you are ultimately going to need to really understand WPF and XAML. I really want to gather my thoughts a little better before making any more book recommendations because although all of the WPF books out there are pretty good, some are a lot more helpful than others when it comes to learning Silverlight
- Read Shawn Wildermuth's Silverlight posts.
Personally, since I'm not a designer and very challenged when it comes to graphics, I had a pretty rough time at the beginning of my learning curve. Little by little though, I'm getting through it and hopefully I'll have some blogworthy material to post soon. As always, if you have any specific questions, please let me know and I'll be glad to answer what I can.