Silverlight for the Newbie!

It is been really long I have worked on Web development – close to 2 years and I really miss every bit of it. I have moved on to a world where it is just business logic. Though this is more challenging – as it involves developing performance efficient and highly object oriented codes, I still miss the art of developing rich User Experience(UX).  Words “Ajax”,”Silverlight” and few others revolve around me every night, as I take lot of time reading about them and mostly few minutes before my nap. And hence I started to explore myself. Since I had worked on Ajax and WPF before, it was not that difficult for me to understand. The intention of this post is to help the newbie get started with the Microsoft’s Magic Web Wand called Silverlight – “Light up the Web!”.

What is Silverlight?

When the internet was born, it was primarily used for sharing static content over the network with the help of a simple web browser. But things have changed over a period of time. Internet moved on from static content –to- dynamic content –to- rich user experience. Let it be shopping online, social networking, banking or any other web activities, user demands a rich Experience. And thus the Silverlight. Silverlight is a client runtime which provides rich user experience. It runs on user’s browser with limited capabilities on the user’s system resources. It is a free downloadable one time installer. It supports all the latest browsers like IE, Mozilla, Safari etc on Windows, Mac, and Linux platforms.

Let us tackle couple of questions to understand better:

  1. Why Silverlight?
    Think about developing a website for a multimedia company/ad-agency where you need to show a gist of their actual work, do you think their clients at their web page expect to see some static content and get impressed of their work? Of course no, they want to see things more lively. Now think of developing a dynamic web page, which should create less load on the server, perform better on the client, show animations, stream videos, etc. I am sure this is not an impossible task, with Javascript and any server side code this is very much possible. But think of the time it takes to develop one. One more important thing which comes to your mind the moment you think about Javascript is browser and platform compatibility. Think of writing “If-else” statements over and again. Silverlight solves all these problems. You don’t have to worry about the client platform or the browser, you don’t have to think of including different players for the video streaming, and most importantly you don’t need to know javascript. All you need to know is simple C# and XAML and you are good to light up the web.
  2. How is it different from Ajax?
    Imagine the lines of code you need to write in Ajax to make an animation, stream media, etc. Since Silverlight uses WPF’s Subset UI programming, you can use the markup language XAML to do things for you. At user point of view Silverlight only differs from the point of execution – Silverlight uses the runtime to execute whereas a Ajax executes inside the web browser. Both the technologies are given equal prominence by Microsoft. With all of these technologies in place we are closely bridging the gap between a web application and a stand alone desktop application.
  3. Why should one not use Flash instead of Silverlight?
    The answer is pretty simple – Do you want to learn flash, or depend on a flash programmer to finish your application? Or simply add few more lines of code in XAML and C# – you may land up doing things better than a designer.

Versions of Silverlight(Release):

  • Silverlight 1.0
  • Silverlight 2.0
  • Silverlight 3.0

Prerequisites for development:

  1. Make sure you have .net 3.5 SP1 and above
  2. If you are using Visual Studio 2008 (any edition) – make sure you have VS 2008 SP1 installed.
  3. Install the Visual Studio tools for  Microsoft Silverlight 3 and SDK

In this post I have limited to the introduction in simple terms.

More posts to come on Silverlight architecture, CLR usage, WPF Subset UI usage etc.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.