Web2.0 + AJAX: The Loosely-Coupled Web

The Web is a massive, globally accessible and ever growing information repository. Just about any information you can think of can be discovered and retrieved via the Web. Until recently much of this content has been accessible through web sites and web applications that tightly coupled application data, business logic (a.k.a. services), and presentation into HTML pages. Since there were no external interfaces with which to access the information, the only way for third parties to get at the underlying services/data was to “screen scrape” HTML pages in order to extract salient content – a very fragile and time consuming task. This was the world of Web 1.0.

With the emergence of Web 2.0 and AJAX all of this is changing. While buzz and hype abounds, the fact is that these technologies are fundamentally changing how users experience the web, and how developers think about web content. Unlike Web 1.0, Web 2.0 emphasizes decoupling presentation from data. Specifically, presentation logic is implemented using JavaScript which is downloaded and executed by the browser. By utilizing AJAX, this code is able to call into server side APIs that implement necessary business logic and provide access to the underlying information. These APIs are generally implemented by using technologies such as Web Services and REST. This clean decoupling allows developers to build compelling browser based applications that can access, aggregate, and present information from different sources and systems.

The truth is that AJAX is not a necessity for developing applications in a Web 2.0 world. There is nothing preventing server side technologies such as PHP, JSP, or ASP from being used to deliver content to the client in much the same way they have been doing up until now. They most certainly can be crafted to make necessary web services calls and to render retrieved content into HTML. But the reality is that building compelling browser based applications goes beyond simply presenting content to the user as HTML. Users have come to expect rich and dynamic user interfaces – something that traditional web applications have been unable to effectively provide. It is with AJAX (and DHTML – which really ought to be considered part of the moniker) that we are finally able to overcome common end user complaints about web based applications being thin, less capable, less interactive, less feature rich, and thus less usable than their desktop counterparts. Thanks to AJAX, features such as drag and drop, auto-completion, interactive UI components, as well as asynchronous network communications now become standard web application features.

AJAX turns the browser, one the most ubiquitous pieces of software, into a universal application platform for Web 2.0. Ironically, the technologies that comprise AJAX – such as JavaScript, XML, XMLHttpRequest, and DHTML – have been available for quite a number of years, albeit lying relatively dormant. It is in combination with the loosely-coupled Web that they have become so much more relevant and important. Ultimately Web 2.0 and AJAX empower the creation of rich, full featured zero footprint applications that will have a profound effect on how a large segment of software will be delivered, deployed and sold. I personally think that these technologies will have a profound and positive effect on software being delivered as a service, a phenomena that is already gaining momentum in both the industry and the marketplace.

Comments are closed.

Copyright © 2022 Zimbra, Inc. All rights reserved.

All information contained in this blog is intended for informational purposes only. Synacor, Inc. is not responsible or liable in any manner for the use or misuse of any technical content provided herein. No specific or implied warranty is provided in association with the information or application of the information provided herein, including, but not limited to, use, misuse or distribution of such information by any user. The user assumes any and all risk pertaining to the use or distribution in any form of any subject matter contained in this blog.

Legal Information | Privacy Policy | Do Not Sell My Personal Information | CCPA Disclosures