June 12, 2009

First look: Microsoft Silverlight 3 challenges Adobe AIR

Redmond's much-enhanced rich Internet application platform also runs on Windows or Mac desktops, online or offline

Bottom Line
Microsoft Silverlight 3 is catching up to the capabilities of Adobe Flash, Flex, and AIR in all the areas where Silverlight was behind. Silverlight 3 applications can run in or out of the browser, online or offline, with much improved audio, video, and 3-D graphics.

Recently I've been hearing from Adobe on a regular basis about adoptions of the Adobe Flash Platform by large media organizations, such as Clear Channel Radio and MLB.com, for streaming media content to the Web both live and on demand. I've been hearing rather less from Microsoft about Silverlight adoptions.

I think that part of the reason is that Adobe leapfrogged Microsoft last winter in the area of media support, particularly H.264/Advanced Audio Coding (AAC) audio and full HD video playback. These and many other capabilities are included in Silverlight 3, which is currently in a beta that does not include a "go live" license, but will most likely be released in July.

[ See related Test Center reviews: Silverlight 2 | Adobe AIR | Adobe Flex Builder | Curl | Visual Studio 2010 preview. ]

Another area where Flash and Flex were ahead of Silverlight is Windows and Macintosh desktop operation. A number of desktop Flex/AIR applications have become popular, especially Twitter clients; examples include TweetDeck, Twhirl, DestroyTwitter, and Seesmic Desktop. (Let's ignore the memory leak issues they all have in common for the moment.)

Out of the browser
Silverlight 2 didn't have a viable way to run on a desktop; the best a developer could do along those lines was to build a desktop WPF (Windows Presentation Foundation) application based loosely on a corresponding Silverlight RIA (rich Internet application). Silverlight 3 addresses those issues very nicely, with easy ways to install Silverlight applications on a desktop, update them in place, detect Internet connectivity state changes, and store information locally and securely.

The Expression Blend 3 Preview can import Adobe files and has its own code editor -- big improvements from previous versions.

The sample from the previous image (part of a memory card game) running in a browser.

What else was wrong with Silverlight 2? From a developer's point of view, no single tool covered all needs; Expression Blend 2 did graphical XAML design but couldn't edit code, and Visual Studio 2008 did code editing and XAML editing and preview, but couldn't do graphical XAML design. That will be fixed in Expression Blend 3 and Visual Studio 2010, both of which have solid betas. For designers, the Expression Blend 3 Preview already imports Adobe Photoshop and Illustrator files, another lack in Blend 2, and will add "SketchFlow" prototyping and interactive behaviors in a future release.

In addition, Silverlight 2 lacked 3-D graphics, pixel shader effects, writing to bitmaps, animation effects, themes, decent data binding, and a reasonable assortment of controls. Those deficiencies are all fixed in Silverlight 3.

Rich and obscure
One problem area that Flash and Silverlight have had in common is SEO (search engine optimization). A search engine such as Google can only see the text on a Web page; RIA applications historically have not displayed usable text or allowed external links to states "deep" inside the animation, concentrating instead on their forte -- flashy graphics. Recently there's been some improvement in SEO for Flash and Flex, using external JavaScript objects such as SWFObject (for dynamic loading) and SWFAddress (for deep linking), at least for those who to take the trouble to revamp their Flash sites; Silverlight 3 addresses both SEO and deep linking internally.

Silverlight has long been strong on execution speed and language support. Both of those are getting better still in version 3.

I do not expect many Adobe shops to give up their Flash, Flex, and AIR for Silverlight 3. I do expect many Microsoft shops to do more RIAs with Silverlight now that it's more capable and to create lightweight browser/desktop Silverlight 3 applications where they might have fashioned heavier-weight Windows Forms or WPF client applications. Some mixed but Microsoft-oriented shops might phase out their Adobe work in favor of Silverlight on integration grounds, but some won't. Meanwhile, the next generation of streaming media adoptions are likely to be closely contested, now that the two technologies are near parity.

Of course, in a few months everything will change again. Stay tuned.

Microsoft Silverlight 3 beta
ProsSilverlight 3 applications can run in or out of the browser, online or offline. Much improved audio and HD video support. 3-D graphics and pixel shading effects. Many more controls, with enhanced data support. Expression Blend can import Adobe Photoshop and Illustrator files.
ConsNo go-live license for the beta; need to wait for release, probably in July.
CostFree
PlatformsDevelopment: Windows XP SP2 or later with Visual Studio 2008 SP1 or Visual Web Developer Express 2008 SP1. Runtime: Windows XP SP2 or later, or Intel-based Mac OS X.
Close

On Twitter now

Rich Internet application development tools

Powered by Twitter

White Paper

D2D Virtual Tape Library Replication Primer

This whitepaper explains the terminology and concepts behind Data Replication technologies and establishes some sizing rules through worked examples. Learn the new paradigm in disaster tolerance—protect data anywhere.

Download now »

White Paper

An Alternative to Virtualization for Datacenter Cost Savings

Server virtualization is a popular option for dealing with mounting datacenter costs. Another equally promising approach is the use of an Application Delivery Controller. Citrix NetScaler provides a low-cost way for organizations to reduce their server count and accrue cost savings from a reduction in space, cooling, power and personnel.

Download now »

White Paper

Why Your Firewall, VPN, and IEEE 802.11i Aren't Enough to Protect Your Network

The emergence of WLANs has created a new breed of security threats to enterprise networks.

Included in HP ProCurve WLAN solutions is security technology that alleviates threats from WLANs through:
* Monitoring wireless activity inside and out of the enterprise
* Classifying WLAN transmissions into harmful and harmless
* Preventing transmissions that pose a security threat to the enterprise network
* Locating participating devices for physical remediation

Download now »

White Paper

Bringing the Edge to the Data Center

Effectively address data protection challenges, implementing solutions that help store and protect business–critical data while cutting costs and improving efficiency and reliability.

Download now »
DaveLindhout 12-Jun-09 4:56am
I've had spotty success with Silverlight 2. Just this week I had trouble viewing video on Microsoft's Mobile 6.1 page.In trying to resolve my problem, I read of other people having similar problems with other video. I could view some of those pages just fine.

This inconsistency is not good. It may be fine for an intranet in a Microsoft shop, but it won't work on the Internet. Some people even tried the beta of Silverlight 3, but it didn't seem to help. Those inconsistencies drive developers crazy and need to be addressed for Silverlight to truly succeed.

Anonymoose 13-Jun-09 4:53am
Silverlight undoubtedly plays a role in the shrinking number of development teams still forced to use only Microsofts Technology. And good for Microsoft for continuing to improve their products. But Adobe's FLEX and FLASH products are so far ahead I wonder if you have ever developed in Flash or Silverlight? Frankly, you look like your re-printing Microsoft's marketing material.
bartczernicki 13-Jun-09 10:28am
This article (like many others) are completely missing the point. They are comparing specific features (printing etc) which in the grand scheme of things matter very little since you are on the web and have 100 workarounds. Silverlight 2 has only been around since October 2008. Silverlight's MAIN advantage is its integration potential. Examples: - native Silverlight integration with web parts in SharePoint. Already in 2007 and being enhanced in 2010. - integration with Microsoft enterprise map services. You can integrate Silverlight directly with a simple control and almost zero coding. - Smooth streaming (Netflix, Olympics)..can stream 720p/1080p or lower automatically to the client and adapting if the bandwith of the user drops. - Cloud computing. Want your Silverlight app running on the cloud..no problem...Microsoft Azure allows you to surface Silverlight apps with auto-scaling services automatically - Integration with Microsoft enterprise services (WCF, REST, ADO.NET Data Services) is native. Developer tools and integration is seemless...this is not your "consume basic XML (POX) crap" - Windows Mobile 7 has a Silverlight (XAML based) UI that developers can extend with multi-touch, 3D, animations (think iPhone) This has JUST begun. You will see Silverlight integrated across the board. I don't know if you are a .NET shop and can use a technology (Silverlight) and have the potential to target: desktop, cloud, mobile and web. Furthermore, integrate into SharePoint, use Smooth streaming etc. That is a pretty powerful arguement for the technology. Where is a Adobe's cloud initiative? Where is Adobe's web server? Where is Adobe's collaboration server (SharePoint)? Where is Adobe's Mobile platform? Adobe has the market advantage and many vendors integrate with it. However, how long will that last? Look at Apple simply BLOCKING Flash from being on the iPhone..that should scare the crap out of Flash developers. Adobe has the features and the market >>>> Silverlight. Hands down. However, note its just features. Silverlight has the performance and integration >>>> Flash/Flex (Flash doesn't support basic multithreading). Simple food for thought: Flash/Flex are on version 10 and Silverlight is on version 3. Even though they are 7 versions back...they are pretty damn close in the feature set to Flash. Don't look at features and look that the POTENTIAL of the technology (like integration capabilities which Adobe simple lacks).

Sign up to receive InfoWorld Resource Alerts

Subscribe to the Developer World Newsletter

Receive a weekly roundup about the art and science of software development.

©1994-2009 Infoworld, Inc.