Welcome!

Wireless Authors: Roger Strukhoff, Liz McMillan, Kevin Benedict, Pat Romanski, Yakov Fain

Related Topics: AJAX & REA, Java, .NET, Adobe Flex, Silverlight, AJAXWorld RIA Conference & Expo

AJAX & REA: Article

Rich Internet Applications: Has Microsoft Finally Seen the (Silver) Light?

Even web developers that are comfortable with AJAX or Flex will soon need to immerse themselves in Silverlight

In response to the proliferation of other frameworks used to create rich Internet applications such as Flex from Adobe (formerly from Macromedia) and AJAX-based frameworks, Microsoft Silverlight was recently introduced.

All three of these applications, as well as the others on the market, enable a web developer to create an interface on a web page that is much more robust than traditional HTML-based pages once were. Extending the limits of HTTP/HTML, these technologies use proprietary rendering engines running within the browser, and XML as the major language with which to communicate with servers.

Microsoft’s entry into the arena of rich Internet applications represents the company’s desire to create its own version of the technology that extends the reach of their .NET framework.

What Are Rich Internet Applications?
Rich Internet applications provide an end user with an interface that is more responsive than traditional applications. Many of the frameworks used to create these applications, including both Microsoft Silverlight and Flex, bring more of the processing to the client rather than leaving it on a centralized server. The user’s browser does not exchange large, monolithic blocks of information, but rather sends small pieces of data at a time, usually asynchronously. And this means that only relevant pieces of the interface need to updated, allowing users to do more, and do it more quickly, than traditional web applications allow. For this reason, more and more web applications use rich Internet technology of some type to give the end user an optimal experience.

There are of course many other frameworks for rich Internet applications in use today, but Flex, AJAX, and Microsoft Silverlight are three that are more commonly known, and each merits a more in-depth look.

Flex
Currently, Flex has the largest market share of any other framework for rich Internet applications, with a penetration of around 90 percent, something that Microsoft Silverlight is challenging. Flex is built on Flash technology, which was originally designed to manage multimedia functionality. The Flash plug in, which is supported by most major browsers, and is freely available for download, runs its programs in what is known as a “sandbox” - a separate entity from the browser itself, and a secure environment that protects the user. When used properly, Flex enables a website to behave like a thick client application (one that exists solely on a user’s computer rather than on the Internet).

As with any client-side technology, there are drawbacks. Not all browsers start out with the Flash plug in installed, and Flash is also updated from time to time. In either case, the end user is required to download a new version if he or she reaches a page that requires it. Other frameworks for rich Internet applications have the same issue, which is seen by some as a drawback since not all users will (or are permitted to) download the plug in, and in many cases will navigate away from the page entirely.

Microsoft Silverlight
Microsoft Silverlight was created to compete with Flex and with other frameworks for rich Internet applications that are already in use. It is based on .NET technology and Windows Presentation Foundation (WPF), which is a part of .NET 3.0. While .NET is a Windows-centric technology, Microsoft Silverlight offers a lightweight version of .NET that is cross platform (running on the Mac OS as well as Windows) and that runs in a browser sandbox.

AJAX
AJAX stands for Asynchronous JavaScript and XML. It is a programming interface that is slowly gaining acceptance by some of the larger web presences, including Google (which leverages AJAX heavily in its Mail and Maps applications). As with the other frameworks for rich Internet applications and technologies in existence, AJAX gives a developer the ability to create a web page that behaves like a thick client application. However, it requires an understanding of the JavaScript language. In addition, not all browsers handle Javascript in the same way, and many users disable JavaScript in their browsers, both drawbacks of AJAX when compared to other frameworks.

The Benefits and Drawbacks of Microsoft Silverlight
The main drawback of Microsoft Silverlight at the current time is that it is not as widely used as Flex, and therefore could cause users to leave a web page using it rather than download the necessary plug in. Using Microsoft Silverlight would require a developer to leave behind the application with the greatest number of users and embrace a newer, untested application (with, admittedly, a well-respected and trusted company - Microsoft - behind it).

However, Microsoft Silverlight is very appealing for developers who already know .NET. While a developer would have to learn Flash and Flex from square one, he may already have an in-depth understanding of .NET and could therefore jump right into using Silverlight. Since .NET is already very pervasive in the web development world, Silverlight could easily grab market share in the future.

Conclusion
Even web developers that are comfortable with AJAX or Flex (or other frameworks used for creating rich Internet applications) will soon need to immerse themselves in Microsoft Silverlight, while new developers will want to learn about Microsoft Silverlight from the start. Because of its foundation with .NET, Microsoft Silverlight has a smaller learning curve than many other frameworks used to create rich Internet applications.

While it may take the average user some time to warm up to the technology used with Silverlight, Microsoft is a formidable company and is likely to make inroads with its product in the near future and to establish it as an important application to know over the long term. Anyone wanting to stay ahead of the curve when it comes to rich Internet applications will do well to learn about Silverlight now rather than later.

More Stories By Charlie Fink

Charlie Fink is Vice President of Product Development and Delivery for WestLake Training + Development(http://westlaketraining.com). He has been designing and developing leading software solutions for over 15 years and has successfully managed a large number of software projects, including enterprise development, complex data migrations, and decision support systems (DSS). As a project manager, Fink has also developed and lead client training focused on use and support of custom software systems.

Comments (1) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
mSantos 04/08/08 03:42:21 PM EDT

Chris Pirillo has the same exact article on his website, posted a full two weeks before this article(http://www.lockergnome.com/web/2008/01/14/rich-internet-applications-has...). What gives, man?