At the recent launch of Visual Studio 2010 and Silverlight 4 at DevConnections in Las Vegas I posed this question to some of my fellow speakers: “If you were brand-new to Silverlight and wanted to learn, what would you do?” “You’d be screwed,” was a consistent response, as was “It would be very difficult without a big learning curve and a lot of work finding the right resources to get started because there aren’t any.” I agreed whole-heartedly, and then explained why I have begged to do Silverlight beginner sessions at conferences for the last couple years. The Dev Connections conference organizers have always agreed with me so I have done a few pretty successful and well-attended Silverlight beginner sessions. And I finally have talked the Microsoft folks into letting me do a beginner session at TechEd 2010 this June in New Orleans, and I’m pretty excited about that. But, there is an inherent problem: there is only so much I can cover in an hour and fifteen minute conference session. The session is designed to inspire developers to get excited and put in the time with all the guidance and resources I give them. I give the attendees of my session a full blown CRUD (Create, Read, Update, Delete) application built on the AdvenutureWorks2008 SQL Server sample database. We built this app at InterKnowlogy for training purposes. We’re not a training company, but many of our customers talk us into customized trainings. The application is a learning tool so it is easy to follow and learn. And I know the attendees love it because they tell me so in emails.
Why do I tell you all this? Well, back to my conversation with my fellow speakers. I would sum up the quandary of learning Silverlight by saying, “You’d eventually Internet search your way to www.Silverlight.net and then flail for a few hours and give up.”
The Good News
However, there is good news. Microsoft just released the free Silverlight 4 Training Kit. Because it has just been released I haven’t been through all of it yet, but I have to tell you the modules I have been through already are great. The Silverlight 4 Training Kit was designed, authored, and built by John Papa, Senior Silverlight Technical Evangelist for Microsoft and Adam Kinney, Technical Evangelist at Microsoft who focuses on Expression Studio and Silverlight. According to the whitepaper in the training kit, John and Adam got help from the Microsoft Silverlight product team, the Windows Communication Foundation (WCF) RIA Services team, and the Expression Blend team.
What I just love about the Silverlight 4 training kit is that you can download it so that it installs and runs offline/ locally on your machine, so you can use it without having the dependency of an Internet connection. I know this is not applicable to everyone, but my most productive and uninterrupted time to leverage something like this training kit is on an airplane. I think it is just great that this team abstracted all the resources (except the videos–see below) into an 87mb download that can be installed on your computer so that you can use it where you don’t have access to a high bandwidth Internet connection. Of course, you can also get to all the resources in the Silverlight 4 Training kit online with a high bandwidth Internet connection, and you don’t have to install anything. I wish all training releases were available in both these manners.
What’s In the Silverlight 4 Training Kit
In both the local and online versions, the Silverlight 4 training kit starts with a long (over 60 pages) Technical Feature Overview whitepaper. This is not where you should start if you’re a beginner, but it is a comprehensive listing and explanation of the technical features of Silverlight 4, and it is a valuable reference you’ll use once you are up and running.
I recommend that you start in the hands-on labs and modules. The Silverlight 4 training kit includes 5 hands-on labs and 8 modules that, if you give them the time, will give you the foundation you need to be an effective Silverlight developer.
The hands-on labs include painstakingly detailed documents guiding you through each step of learning features of the Silverlight 4 stack by helping you build a small Silverlight application. Each module also includes the source code. They are:
- Silverlight RichTextBox Lab
- MultiTouch in Silverlight Lab
- Silverlight Validation, Binding, DataForm, and DataGrid Lab
- Out of Browser with COM Interop Lab
- Webcam in Silverlight Lab
The modules include videos and lab documents that guide you through a number of areas in Silverlight 4 for building business applications. They are:
- Module 1–Introduction
- Module 2–Event Manager using WCF RIA Services
- Module 3–User Registration with Authentication, Validation, Rich Text, Styling, and Commands
- Module 4–User Profile with Drop Target, Webcam, Clipboard
- Module 5–Schedule Planner with Grouping and Right Click
- Module 6–Printing the Schedule
- Module 7–Event Dashboard Running Out of Browser
- Module 8–Advanced Out of Browser and MEF
Now, let me save you some hassle and frustration. The offline version of the Silverlight 4 training kit doesn’t include the videos. The Offline version still references online links to the videos. I’m pretty sure that is because including the videos in the offline package would bloat it to many gigabytes. But, just realize that the videos do not include download links so you will need a high bandwidth Internet connection to watch them.
A Fantastic Start
Like many places in the .NET stack we are most certainly not yet in “Getting Started Training Nirvana,”but resources like The Silverlight 4 Training kit are not only a fantastic start, and they’re badly needed. Although I have not yet talked to John Papa and Adam Kinney about the Silverlight 4 training kit they and their team built, I bet they’d say, “I wish we had more time to keep going with it!” And I hope that Microsoft will give them more time for a second version. Like software where an application is never done, a resource like this is never done; it can always be augmented and improved. However, this one sure is a great start.