Ladezeiten Wasserfall

Online-Shops ersticken an ihren Features

“Für den ersten Eindruck gibt es keine zweite Chance!”

Diese alte Weisheit gilt im Geschäftsleben nicht nur bei Bewerbungsgesprächen. Gerade Online-Kunden sind meist sehr kritisch und lassen sich durch träge Online-Shops und lange Ladezeiten extrem schnell abschrecken.
Da nützen alle guten Vorsätze, teure Adresslisten und breit gestreute Werbemittel nichts mehr. Wenn ein Kunde einmal einen schlechten Eindruck von einem Shop bekommen hat, dann ist es nahezu unmöglich, ihn wieder vom Gegenteil zu überzeugen.

Dies im Hinterkopf ist es um so unverständlicher, dass es Online-Shops gibt, die bereits beim ersten Aufeinandertreffen mit einem Online-Kunden, also meist beim Laden der Startseite, gleich die volle Breitseite an Requests abfeuern.
Da werden noch vor dem ersten Klick und vor dem ersten Scrollversuch möglichst viele Bilder, Videos, Javascript-Frameworks und Fremd-Skripte geladen. Und als ob es kein Morgen gäbe, lässt der Shop die Internet-Leitung des neugierigen Beinahe-Kunden glühen, noch bevor dieser auch nur einen Blick auf das Shop-Angebot werfen konnte. Die Kunden können einem schon leid tun!

“Wenn der Kunde weitersurft, dann hat er alles schon im Browser-Cache!”

Solche Begründungen hört man sehr oft und gerne. Meist von Menschen, die es entweder nicht besser wissen, oder die sich die Situation selbst schönreden wollen oder auf Grund ihrer Position müssen. Diese Ausrede macht einen schlappen Shop jedoch nicht schneller.

Aber wie kommt es zu diesem unsinnigen Skript-Ballast?

Meist aus purer Bequemlichkeit!
Auf einer tief im Online-Shop versteckten Artikeldetailseite hatte vielleicht vor Monaten ein zuständiger Fachbereich einen speziellen Featurewunsch (z.B. ein Bild-Überblend-Effekt) gehabt. Der damals dafür zuständige Entwickler (oft von einer externen Agentur) baute diesen tollen Effekt an dieser Stelle ein und implementierte das JQuery-Skript an einer zentralen Stelle. Man weiß ja schließlich nie, wo es noch benutzt werden soll. Dann hätte man es auf jeden Fall überall im Shop zur Verfügung.

Ob das Feature, welches zum Einbau dieses Skriptes verantwortlich war, später noch existiert oder nicht, ist völlig unwichtig. Nach nur wenigen Tagen geht die Information über die Notwendigkeit dieses Spezial-Skriptes verloren und das Skript verbleibt für immer an der zentralen Stelle und wird ab sofort von jedem Online-Besucher heruntergeladen. Es weiß ja schließlich keiner mehr, ob es noch gebraucht wird. Deshalb bleibt es zur Sicherheit besser da wo es ist.

Es kann aber z.B. auch sein, dass ein sehr gutes Formular-Validierungs-Skript im Shop benutzt wird. Gerne an prominenten Stellen wie z.B. in der wichtigen Bestellstrecke oder in Bestellformularen für Papier-Kataloge oder in Gewinnspielen. Hier hat solch ein Skript eine 100%ige Daseinsberechtigung.

Allerdings sollten Shop-Entwickler nicht der Versuchung erliegen, auch solche Skripte ohne Überlegung grundsätzlich im kompletten Shop verfügbar zu machen. Kein Erstbesucher benötigt auf seiner ersten geladenen Seite solche Unterstützungsmaßnahmen.

Wie kann man den Skript-Wildwuchs verhindern?

Die falschen Skripte am falschen Ort zu laden, das ist aus Performance-Gesichtspunkten kein Kavaliersdelikt. Das ist pure Ignoranz dem Kunden gegenüber, dessen Vertrauen ein Online-Shop doch immer gewinnen möchte. Aus diesem Grunde ist es unumgänglich, dass eine Shop-Webseite intern in verschiedene Bereiche eingeteilt werden muss. Bei neuen Features müssen diese Features dann dem jeweiligen Bereich zugeordnet und auch nur auf Seiten dieses Bereiches geladen werden:

“Only load it where you need it!”

Dass dieses Vorgehen kein Selbstläufer ist und es dafür neben einem guten Schuss Disziplin auch eine gut gepflegte und lebende Dokumentation geben muss, ist selbstverständlich.

Die Segmentierung in verschiedene Shop-Bereiche ist dagegen schon fast eine leichte Übung.

Bedarfsorientiertes Laden von Dateien

Die Programmier-Teams eines Online-Shops sind hierbei gefragt, einen zentral gesteuerten Lademechanismus zu entwickeln, der genug Spielraum und Übersicht für eine gute Segmentierung in die Shop-Bereiche zulässt.

Jeder Bereich der Webseite (z.B. Startseite, Produktlisten, Artikeldetailseiten, Serviceseiten, Bestellstrecke) muss dabei getrennt zu verwaltende Skripte haben, die auch im alltäglichen Handling nicht dazu verleiten, einfach alles überall laden zu wollen.

Um hierfür eine individuelle und für die Webseite optimale Lösung erarbeiten zu können,  muss von den Verantwortlichen Kapazität und Freiraum eingeplant werden.

Gerade Relaunches sind für solche strategischen Überlegungen und Umsetzungen ideal geeignet. Die Probleme und der Leidensdruck sind noch allen Beteiligten Fachbereichen schmerzlich bewusst und es ist selbstverständlich, dass die neue Webseite wesentlich besser und auch schneller sein soll, als es die alte bisher war.

Zeitdruck ist bei der Optimierung von Webseiten fehl am Platz!

Gerade bei sehr heterogenen Entwicklungsteams ist es langfristig ein großer Vorteil, wenn die optimierte Struktur der Skripte leicht nachvollzogen werden kann. Wenn den Entwicklern klar ist, wo was hin gehört. Nur so ist die zukünftige Nutzung der Optimierung möglich, ohne das unter Zeitdruck die einmal erarbeitete Struktur wieder aufgeweicht wird.

Dieses strukturierte Arbeiten ist die Grundlage für gute und aufgeräumte Webseiten und Online-Shops.
Später könnte man zwar noch massig Hardware in das Projekt stecken und dabei hoffen, die Webseite könnte beschleunigt werden. Aber meist liegen die Probleme in der mangelnden anfänglichen Planung.

Ein Website-Relaunch kann eine Chance sein. Man muss sie aber auch nutzen!

Hast Du weitere noch Fragen zu diesem Thema?
Wie haben Dir diese etwas theoretischeren Ausführungen gefallen?

Ich würde mich über Deine Anmerkungen und Kommentare sehr freuen!