Was bedeutet Progressive Enhancement für uns?

Es gibt keine Zweifel: wir lieben es mit JavaScript zu arbeiten. Allerdings hat sich über die Jahre das Programmier:innen Ökosystem den Programmierer:innen angebiedert. Was heißt das? Es hat Webentwickler:innen dazu verleitet die Bedürfnisse der Nutzer:innen nach und nach zu vernachlässigen. Das ist kein so großes Problem wenn wir kontrollieren können wo die Applikation bereitgestellt wird. In Kiosksystemen wissen wir beispielsweise die Rechenleistung und können es dem System erlauben große Pakete wie React zu verwenden. Sogar in verteilten Systemen bei denen wir die Verfügbarkeit der Bandbreite kennen, brauchen wir uns um die Begrenzung der Bandbreite keine Sorgen machen.

Wenn wir an digitalen Lösungen für die Öffentlichkeit arbeiten, müssen wir uns zunächst darüber im Klaren sein, dass sich nicht jede/r Bürger:in das neueste iPhone-Modell leisten kann und will. Oder dass sie einen Datentarif haben, der das Herunterladen großer Pakete erlaubt, um unsere Anwendungen nutzen zu können. Unser Ziel ist es also, widerstandsfähige Anwendungen zu entwickeln, die in einer Vielzahl von Systemen funktionieren, ohne die Fähigkeiten der einzelnen Nutzer zu beeinträchtigen.

Eine Zeit lang schien Progressive Enhancement (PE) die Lösung zu sein. Aber dieser Begriff hat sich gewandelt, und nicht alles, was sich als PE bezeichnet, ist eine Lösung für dieses Dilemma. Wie können wir digitale Lösungen bereitstellen, die für alle Nutzer zugänglich sind, unabhängig von der persönlichen Rechenleistung und Bandbreite des Nutzers?

Was meinen wir also, wenn wir von Progressive Enhancement sprechen? Für uns ist es die Robustheit der Anwendung. Denn selbst wenn der Benutzer über die nötigen Rechenkapazitäten und die nötige Bandbreite verfügt, kann es bei JavaScript zu Problemen kommen. Das oberste Ziel ist es also, dafür zu sorgen, dass nichts schief geht.

In Svelte, das wir lieben gelernt haben, können wir Aktionen verwenden. Das sind Direktiven, die Funktionen hinzufügen können, die das Verhalten der Anwendung verändern. Es spielt also keine Rolle, ob jemand über die nötige Rechenleistung verfügt oder ob er/sie JavaScript deaktiviert hat. In unserer Schadensmelder-Anwendung wollen wir zum Beispiel, dass das Formular mit oder ohne JavaScript funktioniert. Das bedeutet, dass unser Backend in der Lage sein muss, Daten aus einem normalen Formular zu übernehmen und nicht nur JSON-formatierte Formulardaten. Und obwohl wir JavaScript im Backend verwenden. Die Art und Weise, wie wir mit den Informationen des Benutzers umgehen, hat Priorität.

Beim Front-End, der Anwendung, die der Benutzer tatsächlich nutzt, sind wir sicher, dass die Anwendung auf das zurückgreift, was für den Benutzer am besten funktioniert. Und je nach Gerät der Benutzer:innen können wir weitere Funktionen hinzufügen, um die Erfahrung der Benutzer:innen zu verbessern. Wir möchten, dass die Benutzer:innen ihren Berichten Medien hinzufügen können, aber wenn die Benutzer:innen nicht in der Lage sind, die Formulardaten zu verarbeiten, können sie vielleicht nur ein einziges Foto hochladen, anstatt mehrere Fotos.

Aber diese Verbesserungen beschränken sich nicht nur auf die richtige Verwendung von JavaScript. Wir wissen auch, dass uns eine Menge moderner Funktionen in Form von CSS zur Verfügung stehen. Wenn wir diese Dinge berücksichtigen, wird dies auch den Ansatz bestimmen, den wir bei der Entwicklung dieser digitalen Lösungen für die Allgemeinheit verfolgen werden.

Unser Ziel ist es, unsere digitalen Lösungen für alle zugänglich zu machen. Wir müssen die unterschiedlichen Computer- und Bandbreitenkapazitäten der Bürger:innen berücksichtigen. Wenn wir von den Bürger:innen einen bestimmten technischen Standard verlangen, wird unsere Technologie nicht leichter zugänglich. Es sollte keine Zugangsvoraussetzungen für die digitalen Lösungen geben, die eine Kommunalverwaltung ihren Bürger:innen zur Verfügung stellt. Daher werden einige Lösungen eine hybride Lösung haben müssen; besonders in dieser Phase der Digitalisierung. Wir werden weiterhin nach Lösungen suchen, die für alle geeignet sind. Ob man das nun Progressive Enhancement oder anders nennt, für uns ist es einfach ein technischer Ansatz.

Kontakt

Wir helfen Ihnen gerne weiter.

Jörn Bernhardt
Jörn Bernhardt, Geschäftsführer und Co-Gründer von compose.us
Termin vereinbaren