Recognising an area of technology without a presence, Microsoft has thrown its considerable weight behind an initiative to make inroads in the area now dominated by Flash with its Silverlight product.

Web developers often frown on the use of technologies like Macromedia Flash or Adobe Shockwave to spice up Web interfaces. Since these technologies are not Web standards, they may not properly work in all browsers. Even so, some developers continue to use these technologies.

What is Silverlight?

Microsoft describes Silverlight as a cross-browser, cross-platform plug-in for delivering the next generation of media experiences and rich interactive applications for the Web. The plug-in is for rendering the applications in your browser. The plug-in is available for the Mac OS (version 10.4.8) and Windows 2000/XP/Vista and Server 2003. The following browsers are supported: Internet Explorer 6 and 7, Firefox 1.5 and 2.0, and Safari.

Silverlight-based applications are developed with eXtensible Application Markup Language (XAML) and JavaScript, and it integrates with existing Web technologies without problems. The UI is defined using XAML with JavaScript handling events. This promotes the concept of separating presentation from development.

The technology

While JavaScript is an established technology, XAML (pronounced "Zammel") is relatively new. XAML is the XML-based markup language that works with the new graphic subsystem delivered with Windows Vista and .NET Framework 3.0. You can define graphical assets, user interfaces, behaviors, animations, and more using XAML.

Silverlight is closely tied to the .NET Framework, but it is self-contained; that is, it does not require Windows or the .NET Framework -- everything is available in the plug-in to handle Silverlight pages. In fact, the XAML used within Silverlight is a subset of the XAML in Windows Vista and the .NET Framework.

Silverlight's XAML focuses on the Web development aspects of the language and leaves out the desktop elements. Silverlight includes a mini Common Language Runtime (CLR) from .NET. This means that a subset of the full .NET platform that runs on desktops can be accessed from within the browser.

Silverlight development

Given the fact that XAML is an XML-based language, you can easily develop XAML (including JavaScript) with your favourite text editor. Visual Studio 2005 supports XAML development as well. In addition, a Silverlight template is available for building Silverlight pages or applications within Visual Studio 2005. The template is part of the Silverlight Software Development Kit.

Once you install the development kit, the template is available within Visual Studio 2005. You select Silverlight JavaScript application as the template when creating a new Visual Studio 2005 project. The XAML is developed, and then a Web form is developed to use the XAML and includes any necessary code. At this point, a Web page is developed that includes the Silverlight control that uses the XAML.

In addition to the XAML support in Silverlight, Microsoft's suite of Expression tools, particularly Microsoft Expression Design and Microsoft Expression Blend, allow designers to assemble graphical artifacts and UIs with XAML as the end result. Also, there is a tool available to convert existing Flash animations to the XAML format. You can learn more about Silverlight development at the Silverlight Developer Center.

My impressions

I have never been a big advocate of Flash or Shockwave when building Web interfaces. One problem with a technology like Flash is learning a whole new development environment, as well as a language with ActionScript. One positive aspect of Silverlight is its usage of existing Microsoft technologies and a tool like Visual Studio 2005 -- technologies and tools that I use every day.

The ability to develop code along with XAML and JavaScript makes Silverlight stand out from other products. For example, a Flash application may need to communicate with a back end Web service to get data, but Silverlight can include the code to handle server communications and data loading.

Silverlight requires a browser plug-in just like competing technologies, so the paradigm hasn't shifted that much. The plug-in requirement raises issues with Web standards and a Web application properly loading in all browsers.

All in all, I am impressed with the Silverlight development model; it allows you to use an XML language and JavaScript to build interfaces, and everything is available through .NET code.

It will be interesting to see if Microsoft can make inroads on the well-established customer bases of both Adobe and Macromedia. Also, it remains to be seen whether user interface developers will embrace the product.

What do you think of Silverlight?

If you have examined Silverlight, what are your thoughts? Do you like including Flash or Shockwave based content in your Web applications? Share your experience with the Web development community.

Wide World of Web This was published in Wide World of Web, check every Wednesday for more stories

Related links

Comments

1

DaGunster - 27/11/07

You said: Web developers often frown on the use of technologies like Macromedia Flash or Adobe Shockwave to spice up Web interfaces.

Really? Flash is everywhere.

You said: Since these technologies are not Web standards, they may not properly work in all browsers.

Really? Flash works exactly the same on Windows, Linux, Mac, on Safari browser, Firefox and ooh yeah IE. And 'ooh', is Silverlight a 'standard'? NOT!

You said: The ability to develop code along with XAML and JavaScript makes Silverlight stand out from other products.

Really? Adobe Flex uses the exact same principle. And it's been around, and, it does not require yet another browser plugin.


You said: For example, a Flash application may need to communicate with a back end Web service to get data, but Silverlight can include the code to handle server communications and data loading.

Really? Why 'but'. Flash and Silverlight will need code to communicate with a back end server. They are both equal here - however - you make it sound that Silverlight has a 'special' solution - and it does not.

Signed - a Visual Studio developer, SQL hack, Adobe Director (Lingo) developer, and budding Adobe Flex programmer. 20year experience.

» Report offensive content

Leave a comment

You must read and type the 6 chars within 0..9 and A..F

* indicates mandatory fields.

1

DaGunster - 27/11/07

You said: Web developers often frown on the use of technologies like Macromedia Flash or Adobe Shockwave to spice up Web ... more

Log in


Sign up | Forgot your password?

  • Staff Aussies to pay more for Win 7

    If you are looking to make some money in these troubled times, perhaps importing copies of Windows 7 could be for you. Read more »

    -- posted by Staff

  • Staff Firefox: Greens want it, 3.5rc2 not up to par

    This week's roundup looks at the situation surrounding a campaign to change Outlook HTML renderer, a Greens MP wants to install Firefox but is restricted and all the photos from the iPhone 3GS launch. Read more »

    -- posted by Staff

  • Chris Duckett Microsoft misses the Outlook point

    Ask designers which mail program is the bane of their existence, and you'll find that Outlook tops the list. The reason why the most popular email reader is also the most painful is simple: it uses Word to render HTML emails. Read more »

    -- posted by Chris Duckett

What's on?