Part II – HTML and AJAX
A few years ago, a third option for creating rich Internet applications began to grow in popularity. Instead of using a plug-in to the browser as with Flash/Flex and Silverlight, this new approach used existing technologies: HTML, the basic language of the web; Cascading Style Sheets (CSS), a language for controlling the layout and look-and-feel of a web page, and JavaScript, a scripting language built into virtually every browser. This solution, not entirely accurately, is often referred to as an AJAX solution. AJAX standards for “Asynchronous JavaScript and XML” which is a wordy way of saying that when a web page loads you can use JavaScript to get additional information from the server and use it to update parts of the web page without having to reload the entire page. That feature – being able to update a portion of a page without having to reload the entire page – is important, but is not the only ability needed to build rich Internet applications.
Sometimes this third option is lumped under the term “HTML5,” which is a not-yet-complete standard for the next version of HTML. HTML5 will add many capabilities to browsers, but it is not yet finalized.
When our government client was making the decision to go with Silverlight, the AJAX choice was interesting and promising but didn’t have nearly the prominence that it does today. Since they were standardizing on .NET applications, Silverlight was a reasonable choice.
Several things have happened since then.
First, Steve Jobs made it very clear that Flash was never going to have a place on the iPhone or other Apple devices. That limited the appeal of using the Flash/Flex approach for RIA’s.
Second, according to several reports and general knowledge within the industry, Microsoft began moving away from Silverlight. It has been reported that the current version of Silverlight, version 5, could well be the last. That doesn’t mean Silverlight will vanish instantly, but it does give a pretty good indication that it is not a technology of the future.
Third, HTML5 and the AJAX solution have advanced tremendously. Steve Jobs, when he said that Flash would not be on the iPhone or iPad, also indicated that the future for Apple would be the AJAX solution. Around the same time, Microsoft also began talking about the important role that the AJAX solution will play in Windows 8 – not just for web applications but for Windows applications as well.
There are good reasons for Apple and Microsoft to talk about using the AJAX solution – it is an appealing option that has been a growth area for quite some time. New ways to use the key AJAX solution technologies are showing up constantly and interactions that used to require Flash or Silverlight can now be accomplished using HTML5/AJAX technologies.
One of the important selling points for Silverlight and Flash/Flex had been that they provided a way to give the user a consistent experience no matter the web browser. Whether they were in Firefox, Internet Explorer or Chrome, Flex applications look and feel largely the same. A corollary to this is that developers could write one application, and it would run the same way across all supported browsers.
That was not true with AJAX applications – each browser had its own quirks which made writing applications significantly more complicated. But today, many of the AJAX libraries, which are now available for free, are designed to smooth out the differences between browsers so one application can run pretty much consistently across browsers. What’s more, the AJAX approach is also adaptable to mobile platforms.
Stay tuned for Part III of this article coming soon.