Client Pay Portal

Silverlight – A developer’s perspective

Since 2007 Silverlight has been popping up on sites and become a powerful tool for dynamic, robust web development. More and more companies are deciding to deliver content using this technology to generate interactive and captivating web experiences. From an end user’s perspective it’s as simple as downloading a small plug-in (which now comes installed on Windows 7) and the web lights up. But what about developing for Silverlight? I’ll give you some first hand recounts of ups and downs of development using this new and emerging technology.


Silverlight was released in 2007. The first iteration was rather basic and cumbersome, in my opinion. Driven by thousands of lines of precompiled JavaScript, developers were left to hunt and forage for functionality to try and find something that worked. 3rd party text editors (Notepad ++) and Notepad (still my favorite on-the-fly editor) were pretty much the standard for development environments. I found it difficult to debug applications and resolve coding issues. Needless to say Microsoft would need to address this if Silverlight was to catch on.


My first development project was a relatively simple task: a basic animation for Previously we had used Flash (as was the industry standard and only real option) for this site. Once I started development using Silverlight, I immediately saw the benefits. I used several online demos as guides and was able to create a dynamic home page animation with interactive elements. Using Silverlight 1.0 I quickly became familiar with Silverlight’s element structure and functionality. Whereas all code was done via JavaScript, it was much less confining than the proprietary Flash development method. Additionally, I created a dynamic video player for the site using Silverlight.


Enter Silverlight 2.0. To cheers of anyone who had developed with 1.0, Silverlight 2.0 was an enormous upgrade from the previous version. The implementation of .NET compatibility allowed .NET developers to quickly create/edit code from inside Visual Studio. This immediately added to the appeal of Silverlight as .NET developers could program in a familiar environment and end the countess hours of scanning JavaScript code. The introduction of the Expression Studio greatly aided the graphic development aspects with new and exciting tools. The new elements included with the release allowed for more interactive and intuitive applications.


Since that humble 1.0 application, I have completed several other projects of varying complexity. For, I added a home page animation with dynamic logos accessed via LINQ to XML with Using Visual Studio. Using Expression Blend 2.0, I was able to create/edit several storyboards with ease and call them dynamically from my code. For other sites I have created a dynamic training system to deliver audio/video training and testing to thousands of users. That application has multiple classes and elements to create a rich, robust experience for the user at a fraction of the development cost from the previous Flash method. All this was accomplished through the simple (in my opinion) development method of Silverlight.


Microsoft’s continuing development into the Silverlight toolset aids developers greatly. I personally use a combination of applications to complete my development. I prefer to do all coding in Visual Studio 2008, layout/design using Expression Blend 3, and video encoding using Expression Encoder 3. All of these have a family look/feel that .NET developers should easily be able to work with. I can quickly debug applications using Visual Studio to minimize downtime.


While Silverlight does allow rapid, dynamic development, it does have a few downsides that limit its use. First is the lack of database connectivity. Many developers find this is a severe hindrance. I typically will develop a web service for all of my Silverlight applications, which suits my needs well. Another issue the lack of printing support. This particular issue is to be resolved in Silverlight 4.0, but anyone who attempted this in previous versions got very familiar with web services and binary streams. There are several other nuances with Silverlight that developers have to conform to. While most of these are minimal, some find them to be too restrictive and bothersome.


Personally, I love developing in Silverlight. I find it very easy to accomplish nearly every task and the Expression Studio toolset is constantly being updated to provide more functionality. I find it much simpler than Flash development and the integration with Visual Studio allows me to quickly develop complex .NET code to accompany my applications. I look forward to future projects and the exciting enhancements to come.


Wiz E. Wig, Mascot & Director of Magic
Wiz E. Wig

Director of Magic