AJAX, short for Asynchronous JavaScript and XML, is a technique for building web applications that can update parts of a page by exchanging small amounts of data with the server in the background, rather than reloading the entire page on every interaction. The term was coined in a February 18, 2005 essay by Jesse James Garrett of Adaptive Path, “Ajax: A New Approach to Web Applications.”
In that essay, Garrett describes Ajax not as a single technology but as a combination of several existing ones working together: standards-based presentation using HTML and CSS, dynamic display and interaction through the Document Object Model, data interchange and manipulation using XML, asynchronous data retrieval using the XMLHttpRequest object, and JavaScript binding everything together.
The key insight is asynchrony. In the classic web model, every user action that touches the server triggers a full page request and a wait for a new page to load. Garrett’s essay points out that an Ajax application instead inserts an “Ajax engine” between the user and the server, so the interface can keep responding while data loads quietly in the background.
The essay cites Google Maps and Google Suggest as early examples of this approach, applications that felt fluid and responsive in ways traditional web pages did not. Naming the technique gave developers a shared vocabulary, and Ajax quickly became a defining pattern of the interactive Web. Over time the XML data in many Ajax applications was replaced by JSON, but the underlying asynchronous technique remained.