It's an understatement to say that AJAX is hot right now. There's a lot of hype; no one can argue that. It went from a geek buzzword in February to being profiled on CNN in October. So, let's look at why AJAX is here now, and why it's going to continue to grow and will definitely still be around for a while. So, in late-night talk show style, I've put together a top 10 list.
Top Ten Reasons for AJAX
- XAML, XUL, XForms...Not Yet.
- Server Technology Agnostic
- Web 2.0
- Adoption Is Strong with Industry Leaders
- Plays Nicely with Flex and Flash
- Low Incremental Cost
- Benefits of Regular Web Applications
- Cross Browser and Cross Platform
- Usability and User Experience Are King
And the top reason....
- Open Standards Based
Now on to the details...
1. Open Standards
Let's start at the top. AJAX is based on open standards supported by many browsers and platforms; this means there's no fear of vendor lock-in. Most of the technologies that make up AJAX have been used extensively for years. These aren't hot, new, untested technologies that will only work most of the time. Browsers are a trusted application platform for most users and enterprises now; this wasn't the case five years ago. One of the turning points for AJAX was the Mozilla 1.0 release that FireFox is based on and supported the XML HTTP Request Object. This allowed the same asynchronous data transfer that had been possible in IE for years. That support and FireFox's rapid adoption really helped people understand that cross-browser rich Internet applications were possible.
- XML is a widely used standard from the W3C http://www.w3.org/XML/.
- HTML: http://www.w3.org/MarkUp/.
- CSS: http://www.w3.org/Style/CSS/.
- XML HTTP Request Object is supported in Internet Explorer, Mozilla-based, Safari, and Opera browsers.
Developers and designers are beginning to realize not only the large role user-experience plays in market success, but how it affects the cost of ownership. The success of AJAX-based applications such as Google Maps over more traditional alternatives like MapQuest show that success can come to products that provide better user experience. AJAX is playing a leading role in making Web applications usable. It allows pages to request small bits of information from the server instead of whole pages. This incremental updating of pages eliminates the page refresh problem and slow response that have plagued Web applications since their inception.
People have learned they need decent user interfaces and are willing to invest in it. The bottom line here is that if users can get things done faster there's value in that whether the application is an internal intranet application, or a public Web service.
3. Cross-Browser and Cross-Platform Compatibility
IE and Mozilla-based FireFox have the lion's share of the market and are arguably the easiest browsers on which to build AJAX Web applications, but now it's possible to build AJAX-based rich Internet applications that work on most modern Web browsers. This is an important reason why AJAX has become so popular. Although many developers were aware this was possibly years ago with Internet Explorer, it was overlooked because of the vendor lock-in factor. Thanks, Mozilla and FireFox.
4. Benefits of Regular Web Applications
AJAX is the face of today's Web applicationsand Web applications enjoy certain benefits over desktop-based ones. These include a lower cost of deployment, easier support, shorter development times, and no installation; these are just some of the benefits that have caused businesses and consumers to adopt Web-based applications since the late 90s. AJAX will only help Web applications get better and achieve more for end users.
5. Incremental Skills, Tools and Technologies Upgrade
Because AJAX is based on de facto standards that have been around for several years, many developers have at least been exposed to the technologies required to build AJAX applications. This means it's not huge learning curve for development teams to shift from vanilla HTML and form-based applications to rich AJAX style applications. It also means that development teams working on Web applications can incrementally upgrade their user interfaces to AJAX; it doesn't require a wholesale upgrade and re-write of their Web applications. Given the large investments that have been made in deploying browser-based applications since the late 90s, it's very appealing to be able to leverage existing systems and improve the user experience.
6. Works with Flex and Flash
Much of the development community is locked in a heated debate of Flash vs. AJAX. There are definitely advantages and disadvantages to both technologies in different situations, but there's also a lot of synergy and opportunity for them to work together. Many developers and vendors have realized this and have implemented some really great software using both AJAX and Flash in harmony. Macromedia is also keen to see these technologies work together.
Widespread adoption of AJAX by industry leaders proves market acceptance and validity of this technology group. Everybody is jumping on the bandwagon, including Google, Yahoo, Amazon, and Microsoft (to name a few). It was really Google Maps that captured the attention of Web developers. When people began to investigate how Google was able to deliver such an incredible user experience in the browser without any plug-ins, they found AJAX under the hood.
Of course, it's not enough for Google to do something for AJAX to make the leap to mainstream enterprise. But, if you look at the customer list of AJAX development companies such as eBusiness Applications (www.ebusinessapps.com) or Tibco (http://www.tibco.com), you'll see Fortune 500 enterprises including major financial institutions, government agencies, airlines, and other major industries adopting AJAX and they were doing so before the term "AJAX" was coined.
8. Web 2.0
Love it or hate it. The Web 2.0 movement is in full swing and turning the heads of programmers, VCs, marketers, and end users alike. This is definitely helping AJAX adoption for the time being; when the hype eventually dies down, it will be interesting to see what happens. AJAX interfaces are a key component of many Web 2.0 applications from BackPack to Google Maps. Likely the hype will help accelerate the adoption of AJAX and the usability benefits will keep it around. One of the key principles of Web 2.0 is using the Web as a platform for application development, instead of merely Web pages. Highly usable and interactive user interfaces are a key part of any application platform.
9. AJAX is Server Agnostic
Much like how AJAX is browser independent, it's also perfectly compatible with any standard Web server and server-side language. PHP, ASP. ASP.Net, Perl, JSP, Cold Fusion, and so forthtake your pick and start building. This has helped move AJAX along because all Web developers can use and talk about a common presentation layer.
10. Next-Generation RIA Technologies for the Web Aren't Here Yet
It would be great to build applications today in XUL, but because it's not supported by 90% of the browsers out there, it's not considered a practical solution for most purposes (yet). However, AJAX programmers should keep an eye on technologies such as XAML and XUL. There is no doubt these technologies would make it easier to develop rich Internet applications, but they are in conflict with each other and don't have the same market penetration or momentum yet.
AJAX is great for improving the usability of the Eeb applications that are there today. AJAX is not perfect, it's not "rocket science," and many developers and technology companies are trying better technologies for RIA all the time. The fact of the matter is that AJAX is here today and working, it's cross-browser and cross-platform, and both users and developers like what it can do. High profile AJAX applications like Google Maps have emerged as clear leaders in their field (who uses MapQuest anymore?). Likewise, leading Fortune 500 enterprises are using AJAX and are even contributing tools back to the community. In general, the industry has agreed on the underlying AJAX technologies and is using them. Renewed emphasis on rich Internet applications and a key advancement in browser technologies has made AJAX not simply a new tool in the developer's toolkit, but a phenomenon that is changing the way Web applications are written. Nobody can say for sure with what or when it will be replaced as the preferred platform for rich Internet applications, but many factors support a sustained AJAX presence over the next couple years.
About the Author
Andre Charland has been involved in Internet software development for over ten years. He is the President and Co-Founder of eBusiness Applications (www.ebusinessapps.com), which he founded in 1998 with Dave Johnson. His primary areas of expertise include usability, marketing, project management, and component-based software development methodologies. All formal education has been from Simon Fraser University in Vancouver, BC where he studied computer science and business administration. Andre has been involved in hundreds of Internet projects in the role of programmer, manager, and strategist to designer.