Vor 20 Jahren: AJAX revolutioniert die Webentwicklung
Am 18. Februar 2005 prägte Jesse Garrett den Begriff AJAX für asynchrone Datenübertragung zwischen Browser und Server. Der Name fiel ihm unter der Dusche ein.
Asynchrone Datenübertragung hat die Art und Weise geändert, wie Nutzer mit Webanwendungen interagieren.
(Bild: Tero Vesalainen/Shutterstock.com)
- Christian Liebel
Vor zwanzig Jahren hat AJAX Webanwendungen eine zuvor nicht gekannte Interaktivität ermöglicht. Das Konzept stammt von Jesse James Garrett. Er gründete 2001 die Agentur Adaptive Path, die ihre Kunden zu User Experience und Design berät. Mit AJAX trug er zum Web 2.0 bei.
In den frĂĽhen 2000ern setzten viele Webanwendungen auf serverseitige Dynamik: Wollten Nutzer die Ansicht wechseln oder eine Aktion ausfĂĽhren, fĂĽhrte dies zu einer serverseitigen Navigation: Der Server verarbeitete die HTTP(S)-Anfrage und schickte anschlieĂźend eine neue HTML-Seite als Antwort zurĂĽck, die im Browser wieder komplett aufgebaut werden musste.
In Anbetracht dieser "Start-Stopp-Natur" des Web blickte Garrett neidisch auf die Entwickler von Desktopanwendungen, die viel schneller und flüssiger reagieren können.
Videos by heise
Gmail und Orkut beeindrucken mit ihrem Interaktionsdesign
Um das Jahr 2004 machte schlieĂźlich ein neuer Typ Webanwendung auf sich aufmerksam, darunter Googles frisch gestarteter E-Mail-Dienst Gmail oder das soziale Netzwerk Orkut.
Diese Anwendungen beeindruckten durch ihr neuartiges Interaktionsdesign und ihre bessere Performance, ermöglicht durch asynchrone Datenübertragung. Statt einen kompletten Seitenwechsel zu erfordern, werden mithilfe von JavaScript HTTP(S)-Anfragen im Hintergrund übertragen. Die Antwort kann Daten oder Fragmente enthalten, die anschließend zur Laufzeit der geladenen Seite eingebunden werden.
(Bild:Â RichOnTech.tv)
Grundlagen waren bereits vorhanden
Als die zuvor genannten Webanwendungen aufkommen, wird Garrett von immer mehr Kunden gefragt, wie sie solche Anwendungen entwickeln können. Weil alternative Ansätze wie Flash langsam waren und ein installiertes Plug-in benötigten, riet er seinen Kunden, bei den Standardtechnologien zu bleiben, die Browser ohne Weiteres verstehen: JavaScript und XML.
Die technischen Grundlagen zur Umsetzung asynchroner Datenübertragung waren da bereits vorhanden: Schon 1999 wurde mit Microsoft Internet Explorer 5 das ActiveX-Objekt Microsoft.XMLHTTP ausgeliefert, ursprünglich entwickelt vom Outlook-Web-Access-Team, um HTTP(S)-Anfragen im Hintergrund ausführen zu können. In Form der JavaScript-Schnittstelle XMLHttpRequest wurde das Konzept später in weiteren Browsern implementiert.
Der Server antwortet auf die Anfrage mit Daten, zum Beispiel im XML-Format, die anschlieĂźend mit JavaScript ĂĽber das Document Object Model (DOM) mit HTML und CSS zur Darstellung gebracht werden.
Der Name entsteht unter der Dusche
In Anbetracht der vielen unterschiedlichen Technologien und Abkürzungen wird Garrett klar: Um das neue Anwendungsmodell zu verbreiten, braucht es einen zugänglichen Namen. Unter der Dusche fällt ihm schließlich ein Name ein, der zudem über eine einprägsame Initialkürzung verfügt: Asynchronous JavaScript and XML, kurz AJAX.
Am 18. Februar 2005 veröffentlichte Garrett den Blogpost Ajax: A New Approach to Web Applications auf dem Unternehmensblog von Adaptive Path. Begeistert berichtet er darin über die neuen Interaktionsmuster in Webanwendungen, die heute vollkommen üblich sind: Dazu gehören etwa Vorschläge während des Tippens bei der Google-Suche oder die Möglichkeit, bei Google Maps die Karte einfach per Maus verschieben zu können. Bei anderen Diensten war das zuvor nur möglich, indem man Pfeile am Rand einer Karte anklickte und auf das Neuladen wartete.
(Bild:Â Wikimedia Commons)
Im Blogpost stellt er das klassische, synchrone, serverseitig dynamisierte Anwendungsmodell dem AJAX-Modell gegenĂĽber. In seinem Vorschlag fĂĽgt er dem Architekturdiagramm der klassischen Webanwendung ein AJAX-Modul hinzu, das via JavaScript ansprechbar ist und Antworten im XML-Format entgegennimmt. Bereits im Q&A-Abschnitt des Blogposts ist zu lesen, dass aber auch andere Formate infrage kommen, wie die heute ĂĽberwiegend eingesetzte JavaScript Object Notation (JSON).
(Bild:Â Jesse James Garrett)
AJAX wurde zum wichtigen Bestandteil des Web 2.0
Das Schlagwort AJAX verbreitete sich schnell. So erwähnte auch Tim O'Reilly das Konzept im viel beachteten Blogpost What Is Web 2.0, der am 30. September 2005 erschien. Dieser Blogpost grenzte das starre alte Web 1.0 vom neuen, interaktiven, kollaborativen und dynamischen Web 2.0 ab.
Im weiteren Verlauf setzten immer mehr Webseiten AJAX-Technologie ein und viele weitere Schnittstellen entstanden, um leistungsfähige Anwendungen für das Web entwickeln zu können.
Der Name vergeht …
Der Begriff AJAX wird heute zunehmend weniger gebraucht. Der Einsatz asynchroner Datenübertragung ist mittlerweile gängige Praxis und da XML als Datenaustauschformat weitestgehend von JSON abgelöst wurde, ist der Name auch nicht mehr wirklich treffend.
Auch die Webtechnologien entwickelten sich weiter: Auf die unhandliche XMLHttpRequest-Schnittstelle folgte die zugänglichere fetch-API. Single-Page-Anwendungen, wie sie sich mit Angular und React entwickeln lassen, setzen durchgängig auf asynchrone Datenübertragung. Durch die Schnittstellen der Progressive Web Apps ist selbst eine Netzwerkverbindung nicht erforderlich. In vielen Fällen haben Webanwendungen die von Garrett seinerzeit beneideten Desktopanwendungen ersetzt.
… die Interaktionsmuster bleiben
Auch wenn der Name AJAX langsam verschwindet, so bleiben die neuen Interaktionsmuster, die vor 20 Jahren im Web erstmals breite Anwendung fanden. Ein Web ohne sie wäre heute nicht mehr vorstellbar.
Jesse James Garrett gewinnt für die Verbreitung des AJAX-Konzepts 2006 den Rave Award des Wired Magazine. Dem Magazin sagte er über AJAX: "Es ist der Unterschied zwischen dem Betrachten von Standbildern und dem tatsächlichen Anschauen des Films."
(mai)