Welcome!

Coach Wei

Subscribe to Coach Wei: eMailAlertsEmail Alerts
Get Coach Wei via: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Related Topics: RIA Developer's Journal, Apache Web Server Journal, SOA & WOA Magazine, Java Developer Magazine, AJAX World RIA Conference

RIA & Ajax: Article

AJAX, Java, Flash, and .NET

Rich Internet applications market place

The diverse nature of enterprise application requirements, combined with the clear strengths and weaknesses of different RIA technologies, lead to the inevitable conclusion that "one size does not fit all."

No single RIA development approach is ideal for all enterprise environments. Some requirements are better met by scripting-based RIA approaches, while others require OOP. And in these two categories, a particular application need will be better served by AJAX versus Flash, or by Java versus .NET. In short, all four of these RIA technologies are likely to co-exist in many enterprise environments for the near future.

Interesting New Developments
All RIA solutions are fundamentally constrained by their underlying technology - AJAX, Flash, Java, or .NET. If a developer picks Flex to develop his RIA, he has to live with the pros as well as cons of Flash. Likewise, if a developer picks an AJAX toolkit to develop his RIA, she must live with the various challenges associated with DHTML and JavaScript. As we mentioned earlier, among the four technologies, each has its strengths and weaknesses. One of the major goals of enterprise IT departments is "common flexibility" - providing standardization and simplification across different business applications and initiatives, while enabling flexibility for innovation within business units. Different business units have different programmer skills and therefore need different types of applications. As a result, dictating the use of one RIA technology across a large organization is unlikely to work well.

There's been a very interesting development in the RIA marketplace recently: cross-technology RIA solutions. Both Laszlo Systems and Nexaweb recently announced that their products are supporting more than one technology so that the same application can be delivered and rendered on different technology platforms. Laszlo supports both Flash and AJAX (DHTML). Nexaweb supports Java and AJAX. With this development, developers don't have to fight the "religious war" of JavaScript versus Java, Java versus .NET, or .NET versus Flash. Such development accommodates not only different developer skill sets, but also opens the door to combining the benefits of scripting-based approaches with those of OOP-based approaches, delivering optimal results.

Figure 7 shows cross-technology RIA solution architecture.

Listing 2 is a sample application written using a cross-technology RIA solution. It is an RSS reader that would read RSS feeds from Yahoo and display all the feeds in a table. The code is Listing 2 and the UI screen display is shown in Figure 8.

Enterprise RIA Adoption Today
Though still in an evolutionary stage, RIAs have been adopted and proven at many leading organizations over the world. Many companies have adopted RIAs as the foundation for their business applications and achieved great success.

How broadly have RIAs been adopted? Though there are no industry-recognized statistics available, numbers from RIA solution vendors provide some insight. For example, Adobe claims that Flex has about 300 customers. Nexaweb claims that its platform has been deployed to over 4,000 enterprises.

It is also meaningful to look at which industries are adopting RIA. According to a market study done by Nexaweb in October 2005, RIA adoption spans a wide range of industries, with no single one dominating. Financial services leads with a 17% share, followed closely by healthcare, hospitability, and consumer products. (See Figure 9)

From an application profile perspective, companies adopt RIA solutions for many different kinds of applications, including internal IT applications, B2B applications, B2C applications, and B2C Web sites. According to the same Nexaweb research, 48% of the RIAs deployed today are enterprise business applications, either B2B or internal, while 45% of them are deployed as consumer applications. (See Figure 10)

Conclusion
To leverage the Internet for competitive advantage and lower operating costs, businesses need RIA solutions to overcome the inherent limitations of the Web as a platform for developing, deploying, and maintaining business applications.

There are different approaches based on Java, .NET, AJAX, and Flash for RIA solutions, and each approach has its strengths and weaknesses. Given the diverse application requirements in enterprise environments, no single approach will be able to span all enterprise environments. In the end, all four approaches will co-exist serving different application requirements.

Though different RIA solutions may be based on different technology approaches, the programming model centered on a declarative UI is common. The real differentiator is application logic development, which is determined by the RIA approach used by the chosen RIA solution. In the end, the application logic development determines application maintenance and scalability.

Cross-technology RIA solutions are exciting new developments. Such solutions should enable enterprises to adopt a common model and framework to meet different application requirements, while still enabling innovation and accommodating different developer skill sets.

Though relatively young, enterprise RIA solutions have already been adopted by many companies in many different industries led by the financial services. As RIA solutions are further developed, RIA adoption in enterprise environments will continue to grow.

Resources

More Stories By Coach Wei

Coach Wei is founder and CEO of Yottaa, a web performance optimization company. He is also founder and Chairman of Nexaweb, an enterprise application modernization software company. Coding, running, magic, robot, big data, speed...are among his favorite list of things (not necessarily in that order. His coding capability is really at PowerPoint level right now). Caffeine, doing something entrepreneurial and getting out of sleeping are three reasons that he gets up in the morning and gets really excited.

Comments (7) 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
Joe 09/20/06 04:43:35 AM EDT

I would like to point to a new framework I found for doing RIA the object oriented way but still resulting in standard DHTML/AJAX. Check this live sample here http://samples.visualwebgui.com/mainform.wgx and find more info here http://www.visualwebgui.com.

n d 09/19/06 04:00:34 PM EDT

Enterprise Rich Internet Applications (RIAs) are the next evolution of business application development. There are four different approaches to RIA development - AJAX, Java, Flash, and .NET - and many different RIA solutions available today. This article answers the following questions: What are enterprise RIAs? Which approach should you use? Which solutions are appropriate for you? And how are RIAs being adopted today?

j j 09/19/06 03:34:31 PM EDT

Enterprise Rich Internet Applications (RIAs) are the next evolution of business application development. There are four different approaches to RIA development - AJAX, Java, Flash, and .NET - and many different RIA solutions available today. This article answers the following questions: What are enterprise RIAs? Which approach should you use? Which solutions are appropriate for you? And how are RIAs being adopted today?

j j 09/19/06 03:28:22 PM EDT

Enterprise Rich Internet Applications (RIAs) are the next evolution of business application development. There are four different approaches to RIA development - AJAX, Java, Flash, and .NET - and many different RIA solutions available today. This article answers the following questions: What are enterprise RIAs? Which approach should you use? Which solutions are appropriate for you? And how are RIAs being adopted today?

AJAX SUX 08/27/06 03:39:39 AM EDT

AJAX SUX.
Javascript is the number 1 culprit of popup ads, browser hijackers, virus infectors, pop unders, browser crashes, hangs, gaudy annoying banner advertisements, flashing blinking ad-rotators, dumb rollover buttons, forms that don't work, ONLOAD crap, window resizers, dorky little mouse pointer trails that look like little bouncing balls following your little mousie all around like a junior high school myspace page caliber web programmer, stupid little purple scrollbars, incompatible browsers, exploit hooks, automatic download links that don't work, etc etc.

In fact, there is now a world wide movement to get RID OF JAVASCRIPT. Javascript is on its way out. People are already annoyed with it and are boycotting sites and advertisers that use Javascript and they are preferring sites that use normal standard HTML.

any websites that continute to use Javascript are dumped and nobody visits them and those companies using gratuitous and unnecessary Javascript on their sites are blacklisted. Form buttons, form validators, anything. Any programmer using Javascript = Loser.

Greg Holmberg 08/01/06 01:35:05 PM EDT

As usual, Wei conveniently leaves off the list one of the best designed and most efficient solutions in the Java-based category: UltraLightClient from Canoo.

http://www.canoo.com/ulc

The server-side API is almost identical to the Swing API, the network protocol is highly optimized and puts just 1/10th the data on the network as HTML, and there is a plug-in to Eclipse for GUI building.

JDJ News Desk 07/28/06 11:02:36 AM EDT

Enterprise Rich Internet Applications (RIAs) are the next evolution of business application development. There are four different approaches to RIA development - AJAX, Java, Flash, and .NET - and many different RIA solutions available today. This article answers the following questions: What are enterprise RIAs? Which approach should you use? Which solutions are appropriate for you? And how are RIAs being adopted today?