Campo1innovator

Keep track on how much time you waste while waiting for campo

Автор
thelazt
Инсталации дневно
0
Инсталации общо
7
Рейтинг
0 0 0
Версия
0.1
Създаден
25.07.2022
Обновен
25.07.2022
Лиценз
GNU AGPL v3
Работи на

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.