FAU Campo Zeitmesser
Die sich selbst als #1innovator bezeichnende Universität Erlangen-Nürnberg hat nach 10 Jahren Vorbereitungszeit das HIS Produkt Campo ausgerollt.
Dabei stellte sich schnell heraus, dass die Umsetzung nicht nur an einer außergewöhnlichen unintuitiven Bedienung krankt, sondern auch die technische Umsetzung derart ungenügend ist, dass selbst bei dem aus mehreren dutzend Server bestehender Cluster zum Teil minutenlange Ladezeiten die Benutzung erschweren (während das Vorgängerprodukt selbst ohne Skalierung hochresponsiv war - aber das ist ein anderes Thema).
Um die unnötig verloren gegangene Zeit zu messen, zählt dieses Plugin schlicht die Lade-/Antwortzeiten und blendet diese in einem Overlay ein.
Außerdem werden zur besseren Einordnung einige Vergleichszeiten angezeigt 😀
Verwendung
Voraussetzung
Der Browser muss eine Erweiterung zur Verwaltung von Benutzerskripten (wie Tampermonkey) installiert haben.
Installation
Im Benutzerskriptmanager das Skript installieren, manuell geht das zum Beispiel:
- Auf das AddOn klicken
- Neues Userscript hinzufügen
- Alles markieren, löschen
- Inhalt von
campo.js
einfügen
- Speichern
Benutzung
Und dann Campo ansurfen. Wenn gewartet wird, wird automatisch ein Overlay mit der aktuellen Zeit angezeigt.
Technische Umsetzung
Es werden die beforeunload
- und 'load`-Events verwendet, um einen die Zeitmessung zu starten bzw. zu stoppen.
Da für die Darstellung von Suchergebnissen dynamisch die Inhalte mittels AJAX nachgeladen werden, werden auch für diese Ereignisse in den Messungen berücksichtigt.
Über die Web Storage API wird die aufsummierte Ladezeit im Browser über Sitzungen gespeichert.
Es werden keine externe Ressourcen im Skript verwendet, alle Daten werden nur lokal im Browser gespeichert.
Kompatibilität
Erfolgreich getestet auf Google Chrome (83) und Firefox (102) mit Tampermonkey und Violentmonkey.
Einschränkungen
- Der Abbruch des Ladens einer Seite (Stop-Button oder ESC-Taste) wird nicht erkannt, entsprechend läuft in dieser Zeit die Messung weiter.
- Bei Greasemonkey werden die Rückruffunktion bei AJAX nicht korrekt aufgerufen, entsprechend werden die Wartezeiten in der Suche nicht gemessen.
- Es gibt keine Synchronisation der Gesamtzeit über Browser hinweg.
Disclaimer
Dieses Skript sollte nichts böses tun, aber bei der Softwarequalität von Campo will ich nichts versprechen, deswegen: Verwendung auf eigene Gefahr.