Microsoft Silverlight has been gaining momentum for a while and so has HTML5 especially more recently. This makes for a compelling case to pit Silverlight vs HTML5 in this test for supremacy.
What is Microsoft Silverlight?
Microsoft Silverlight is a cross-browser, cross-platform plug-in for delivering .NET based media experiences and rich interactive applications for the Web. Silverlight supports AJAX, VB, C#, Python, and Ruby, and integrates with existing Web applications to bring rich experiences to the user.
What is HTML5?
HTML5 is a language for structuring and displaying web pages and other world wide web based content. HTML5 introduces open web standards for desktop and mobile based applications and introduces features that allow creation of rich content and persistence which is common with desktop applications.
Though described using different words, the final presentation of both these mediums is remarkably similar despite the fact that they both present quite a few differences as well.
Usage and Content Delivery
Silverlight is available as a standalone executable on your desktop as well as a web browser plug-in. It works on most major browsers for Microsoft Windows and Mac OS X desktop operating systems as well as Windows Phone 7 and Symbian OS for mobile platforms.
HTML5 on the other hand is also available as a cross-browser cross-platform standard. It runs only within web browsers or applications that have a web rendering engine that supports the standard. These include current versions for major browsers including Firefox, Safari, Chrome, Opera and Internet Explorer among others. HTML5 is also available on browsers on several Operating Systems including those supported by Silverlight as well as Linux, Android and iOS.
The HTML5 specifications can be described as incomplete or rather as a work in progress while Silverlight can be regarded as stable.
Silverlight applications are generally expected to look and work the same on all supported platforms and browsers while HTML5 may have differences based on the support given by the browser in use.
Silverlight must be installed in your compatible browser while HTML5 is built into your compatible browser.
As described above, Silverlight is somewhat limited in the choices of platforms in which it can be used. Unlike HTML5, Silverlight is not compatible with devices such as the Android based tablets and smartphones. The same goes for those using the Blackberry. iPhone, iPad and iPod users are also left out when it comes to accessing Silverlight content. On the Desktop, even though Silverlight is not supported on Linux operating systems there is development of an implementation called Mono Moonlight that will add support to Firefox browsers on Linux.
The standard specification of HTML5 supports a 2D graphics creation canvas. This allows for complex 2D drawing even to the levels of impersonating 3D spaces. This can be done using sprites and various 2D textures.
Of the Major web browsers Internet explorer does not support WebGL, while Safari supports it but has it switched off by default.
Even though HTML5 supports video content the current specification do not state which video formats can be played by the user agent and has left that up to the agent with the exception of Ogg formats.
Microsoft Silverlight is a proprietary technology that has clear definitions of supported media regardless of the platform that is used. With installation of third-party codecs, audio and video format support is practically unlimited in Silverlight.
Silverlight is significantly faster than HTML5 with its content being developed on the .NET platform with languages such as C#. In fullscreen mode Silverlight provides full keyboard access for rich applications.
Video can be streamed in HD format that plays back smoothly on any device that is running Silverlight. With HTML5 there is no definition on the format of the video and similar capabilities are left to the individual vendors.
Silverlight comes with built-in controls suitable for building business applications. These controls can also be skinned and styled as seen fit by the developer. In HTML5 you would have to use third-party libraries such as Ext Js to achieve the same.
In addition to the built-in controls, Silverlight has mature and dedicated development tools such as Microsoft Visual Studio to aid in design and development of Silverlight applications. HTML5 pretty much leaves you on your own to use an IDE that your have been accustomed to.
Silverlight grants access to the file System where you can save content to your documents folder, open other applications such as Microsoft Office and even open Microsoft Outlook to send emails all from within the Silverlight applications. HTML5 works within the browser sandbox and therefore has to adhere to the security design of the web browser. HTML5 allows local storage although this does not come close to what Silverlight is capable of.
The Winner is...
Generally HTML5 is still unstable and no final draft has been published on the specifications for the standard. The browser market is still fragmented and differences still abound in the way each browser supports different features of HTML5.
Silverlight on the other hand with its propriety nature is more stable and more suitable for rich experiences of the web and for building business applications that work the same across all platforms where Silverlight is supported.
Both Silverlight and HTML5 are available for free. With the maturity and the advanced capabilities of Silverlight, when it comes to the wars on Silverlight vs HTML5, Silverlight takes the crown.
- Moonlight, www.mono-project.com/moonlight
- HTML5 Specification, dev.w3.org/html5/spec/Overview.html
- WebGL, www.khronos.org/webgl/
- Microsoft Silverlight, www.microsoft.com/silverlight/
HTML5 Logo by W3C
- Image credits, www.microsoft.com/presspass/imagegallery/products/