Reise durch die Zeit: Wie progressive Enhancement für mehr User Experience sorgt
Kommentare

Seit der Erstellung der ersten Website vor knapp 24 Jahren – am 20. Dezember 1990, um genau zu sein – hat sich einiges im Webdesign getan. Nicht nur HTML und CSS, sondern auch JavaScript hat in dieser Zeit einige Veränderungen und Standardisierungen erlebt.

Josh Emerson hat einen Blick auf diese Entwicklungen geworfen und zeigt, wie gleichzeitig eine langbestehende Websites designt und eine größere Anzahl von Usern bedient werden kann.

Von der statischen Website zum Fat Client

Die erste Website wurde nicht nur vor 24 Jahren gelauncht – sie funktioniert auch immer noch. Ein Grund dafür ist, dass sie in HTML geschrieben wurde und neue Features und Extensions immer rückwärtskompatibel zu vorigen HTML-Versionen implementiert wurden. Zudem gab es bei der ersten Website keine Run-Time Kompilierung des Codes, und, wie Josh Emerson erklärt:

Due to its lack of complexity, it stood a good chance of surviving in the turbulent World Wide Web.

Allerdings handelt es sich dabei um eine statische Website. Heutzutage werden Websites immer interaktiver, wodurch der Code irgendwo – traditionell auf einem Server – ausgeführt werden muss. Hier kommt JavaScript ins Spiel. In 2003 wurde das erste Single-Page-Interface erstellt, bei dem die Seite direkt im Browser erstellt wird. Der große Vorteil dabei ist, dass nach dem ersten Laden die weiteren Aktionen schneller ausgeführt werden können, weil sie über einen Client laufen und nicht auf die Antwort des Servers warten müssen.

Doch während ein solcher Fat Client bevorzugt wird, sorgt er für mindestens ebenso viele Probleme, wie er löst. Dazu gehört zum Beispiel, dass er von funktionierendem JavaScript abhängig ist. Zudem ist die anfängliche Payload größer und benötigt mehr Zeit zum vollständigen Downloaden und Ausführen, während der dem User nichts angezeigt wird.

Die Lösung: Thick Client und Thick Server

Gerade den User und dessen User Experience darf man bei der Erstellung einer Website jedoch nicht aus den Augen verlieren. Zwei typische User-Bedürfnisse sind eine schnell ladenden und eine schnell reagierende Website. Diese beiden Wünsche miteinander zu verbinden ist allerdings nicht immer ganz leicht.

Eine Lösung kann es sein, sowohl einen Thick Server, als auch einen Thick Client einzusetzen – also progressive Enhancement zu betreiben. Dabei wird zunächst das gesamte Dokument mit der anfänglichen Payload geladen und anschließend die Erfahrung mit JavaScript-Interaktionen verbessert. So erhält der User immer eine funktionierende Website, auch wenn JavaScript nicht funktioniert oder der benutzte Browser ein benötigtes API nicht unterstützt.

Angesichts der Tatsache dass immer noch viele Nutzer auf Legacy-Browser wie Internet Explorer 8 oder früher setzen, diese aber JavaScript-APIs nicht unterstützen, ist dies ein guter Weg, um diesen Nutzern die Website trotzdem zugänglich zu machen. Mit dem Thick Server kann die gesamte Website mit allen Core-Funktionalität zugänglich gemacht werden; durch den Thick Client in unterstützten Browsern kann die User Experience bei der Nutzung der Website verbessert werden.

Natürlich ist das mehr Arbeit, bietet allerdings den Vorteil, dass die Website von jedem nutzbar ist und nicht komplett unbenutzbar wird, wenn sich ein Fehler im JavaScript-Code eingeschlichen hat. Trotzdem zeigt sich, dass ein solches progressive Enhancement die Vergangenheit mit der Gegenwart verbindet und so für viele Vorteile sorgen kann. Denn am Ende sollte das Ziel nicht nur die Bereitstellung von Content für eine größere Anzahl Nutzer sein – auch Langlebigkeit ist ein Plus in einer Zeit, in der täglich Unmengen neuer Websites erstellt werden.

Aufmacherbild: brown and white sugar on weighing machine von Shutterstock / Urheberrecht: Ema Woo

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -