Webentwicklung und Standards

Artikel vom 26. September 2003 (↻ 24. Dezember 2004). ISSN 1614-3124, #2. Schwerpunkt: (RSS-Feed für alle Themen).

Dieser Artikel ist stellenweise veraltet, nicht allzu leicht verständlich, und mitunter Quatsch.

Bei der Webentwicklung, wobei ich mich durchaus auch auf den ehemals von mir persönlich verpönten Bereich des »Webdesigns« beziehe, gilt es verschiedenerlei Fachgebiete zu vereinen und somit eine Vielzahl von Standards zu beachten. Webentwicklung respektive Webdesign – mir sei vergönnt, hier nicht explizit auf eine konsequente Trennung beider Begriffe hinzuwirken – ist beileibe kein simples »Drag & Drop« von visuellen Elementen, welche man nach Komposition via kritisch zu betrachtender WYSIWYG-Editoren mit dem Namen »Homepage« onlinestellt.

Der vorliegende Artikel soll grob herausarbeiten, welche Standards und Fachgebiete in Bezug auf Webentwicklung und -design ohne Berücksichtigung der gestalterischen Aspekte gelten und es somit zu beherrschen heißt. Im spezifischeren Teil soll unter anderem ein Beispiel für die Arbeit mit Seitenbeschreibungssprachen (HTML/XHTML) ein frei gewähltes Problem illustrieren.

Segmente

Die Palette, die bei der professionellen Erstellung und Entwicklung von Informationsangeboten und Applikationen berücksichtigt zu werden verlangt, umfasst (wenn auch pauschalisierend) grundsätzlich die folgenden Segmente:

Der Vollständigkeit halber sei geschildert, wie diese Segmente bereits eine gewisse Tragweite implizieren – so bietet eine durchdachte Informationsarchitektur durch die Strukturierung mitunter eine leichte Erweiterbarkeit und erst die Basis für weitere organisierte Projektumsetzung; die richtige Wahl der Technologie und eine gute Programmierung bieten so gut überhaupt möglich Zukunftssicherheit und wiederum die Basis für Zugänglich- oder Erreichbarkeit; eine gute, getestete Usability gewährt die Funktionsfähigkeit; fachmännische redaktionelle Betreuung verfeinert die eigentliche Selbstdarstellung und integriert kaufmännischen und (ohne Konnotat) manipulativen Charakter. Die Brisanz des gesamten Themas wird letztendlich noch durch die Frage nach der Seriosität und Glaubwürdigkeit eines Angebots deutlich, die bei Beachtung aller Bereiche am ehesten positiv beantwortet werden kann.

Die dargestellte Übersicht kann selbstverständlich keinen Anspruch auf Vollständigkeit erheben, da sie weder sämtliche technischen Facetten, weitere Bereiche, noch Tests erwähnt, sondern soll in erster Linie dem Feld Webentwicklung die annähernd passende Größe schenken. Zur Liste ist des weiteren anzumerken, dass zumeist Teil- und Aufgabenbereiche auf mehrere Personen verteilt sind und somit nicht sämtliches Know-How sowie vor allem die verbundene Verantwortung an einer einzigen Person festzumachen sind.

Besonders zu betonen ist auch die Zusammengehörigkeit der ersten drei Segmente (Informationsarchitektur, Programmierung und Usability), die ich zum nötigen Rüstzeug eines jeden Webentwicklers oder -designers zähle; die damit verbundene Arbeit kann zwar vorteilhaft in Teams organisiert und umgesetzt werden, der notwendige Blick für das Gesamtbild macht jedoch die mehr oder minder fundierte Expertise jedes Einzelnen erforderlich.

Verantwortung

Die halbwegs veranschaulichte Komplexität des Themengebiets Webentwicklung sollte eine entsprechende Perspektive vermitteln, doch definiert sich der Anspruch eines Themas nicht allein durch seinen Umfang, sondern vielmehr durch die daraus entwachsene Verantwortung. Verantwortung ist somit auch nicht »lediglich« das Aufbauen zugehörigen Wissens sowie Erwerb und Ausbau von Erfahrung und Sicherheit, sondern auch Kenntnis um die Verantwortung für Beteiligte, besser: Betroffene.

Sieht man als Betroffene vielleicht während eines Entwicklungsprozesses noch Teammitglieder, hierarchisch anders positionierte Träger des Projekts, mitunter auch persönlich Vertraute an, sofern das Projekt kleiner oder privater Natur ist, so muss der Blick dennoch auf die Gesamtzahl potentieller Benutzer und Besucher des erarbeiteten Angebots fallen; ein Verständnis des Barrierefreiheitskomplexes mag, muss aber nicht zwangsläufig helfen.

Was bedeutet diese Verantwortung? Wenn ein Internetangebot realisiert wird, kommt es (neben einer Vielzahl anderer Aspekte) darauf an, aus legitimem Eigeninteresse heraus möglichst allen eventuellen Benutzern die Inhalte und Leistungen präsentieren zu können. Diese Intention führt dazu, auf die technischen Verhältnismäßigkeiten achten zu müssen, seien es nur Bildschirmauflösung oder verwendeter Browser, und zur Notwendigkeit, Konventionen zu befolgen (egal wie hübsch das Logo in der Seitenmitte neben der Werbung, die wie zur Webseite gehörig aussieht, auch anmutet), aber sie verlangt vor allem, auf die Physis der Betroffenen zu achten – sind Benutzer körperlich auch in der Lage, das Angebot oder Produkt zu verwenden (Blinde und Farbenblinde, andersartig Versehrte)?

Mit der Web Accessibility Initiative und Ambitionen der britischen Legislative erhält dies bereits hohes Gewicht, aber was ich in diesem Sinne unterstreichen möchte, ist, in technischen Belangen primär »altruistisch« zu entwickeln, und dies macht sich im wahrsten Sinne des Wortes bezahlt: Eine funktionierende (da benutzerfreundliche) Oberfläche verschreckt keine potentiellen Kunden; eine Website, die sauber strukturiert und aufgebaut ist, wird positiv in Erinnerung bleiben und sich nicht selbst diskreditieren; ein Angebot, das seine Klientel nicht aussperrt und seine Waren nicht nur den »technisch und physisch Stärksten« offeriert, wird mehr Produkte verkaufen können.

Die vorzeitige Conclusio: Ein gewissermaßen ethischer oder gar philosophischer Standard wäre das Sahnehäubchen eines für das Gros aller Beteiligten und Betroffenen erfolgreichen Entwicklungsszenarios – sofern der vorige Gedankengang konsequent fortgeführt wird.

Das Problem der Priorisierung

Ein beliebter Einwand – den ich nicht nur in unbedarftem, sondern durchaus erfahrenem Umfeld beispielsweise um Bruce Tognazzini erleben durfte – scheint der Punkt der Ausrichtung und Zielsetzung zu sein: Warum, so der Tenor, sollte eine Website bzw. ein jedwedes Angebot für alle zugänglich und nutzbar sein, wenn man doch nur eine bestimmte Zielgruppe avisiert? Diese Kritik mag ich bedingt und im Zusammenhang mit schwer umgehbaren technischen Erfordernissen gelten lassen (die unter Umständen auf irgendeine Weise Beschränkungen mit sich bringen), jedoch nicht im Allgemeinen, wenn ich das obige altruistisch orientierte Prinzip und seine Vorteile mit diesem System der Orientierung am Publikum vergleiche:

Zum einen umfasst die Menge »aller«, die es zu erreichen gilt, logischerweise die Menge einzelner Gruppierungen (ohne die Gefahr, Ausnahmen innerhalb einer Klientel auszuschließen); zum anderen entkräftet die oben genannte Voraussetzung, zumindest die in bezug zur Entwicklung stehenden ersten drei Segmente fachlich zu beherrschen und dieses Know-How einzusetzen und bereitzustellen, auch erheblich den Vorwurf, andernfalls höhere Kosten bei der Konzeption und Programmierung inkaufnehmen zu müssen – denn dann kann das obligatorische Wissen um die entsprechenden Bereiche sofort und ohne signifikanten Mehraufwand (mitunter sogar mit Zeitersparnis) zu einer sauberen und validen, zugänglichen und benutzerfreundlichen Lösung führen.

Zur Sicherheit sollte ein latenter Punkt nicht unerwähnt bleiben: Diese Thematik dreht sich um einen Idealfall, der nie erreicht werden kann. Weder das Ziel, Inhalte für alle zugänglich zu machen, noch die Vorgabe, technische Innovationen gleich welcher Couleur immer und sofort zum Einsatz zu bringen, kann jemals erreicht werden, selbst wenn diese Punkte nicht in unmittelbarem Zusammenhang ständen.

Das Problem der Priorisierung besteht hauptsächlich in der Unterschiedlichkeit der Themengebiete, mit denen Webentwicklung und Webdesign behaftet sind. Während die Zugänglichkeit oder Barrierefreiheit eines Angebots grundsätzlich immer so groß wie möglich sein sollte, ob aus kaufmännischer, ethischer oder gesetzlicher Motivation, bilden sich noch etliche andere Fragestellungen im Alltag der Entwicklung:

Wie wählt man beispielsweise elegant (und vor dem Hintergrund, möglichst viele Benutzer erreichen zu wollen), wenn man en detail auf Stellen stößt, die es erfordern, sich entweder gegen das WAI-konforme Verzichten auf Layouttabellen oder gegen die Unterstützung von Netscape 4 (der Layer und CSS 2 nicht oder nur unzureichend versteht) zu entscheiden? Spezifischer mag ich dieses Thema auch gar nicht mehr ausformulieren, wird doch der Konflikt hier hoffentlich deutlich; wie soll man mit dieser Herausforderung am besten umgehen? Persönlich favorisiere ich noch eine diplomatische Lösung, in der Netscape 4 komplett unterstützt und trotzdem alle weiteren Standards soweit wie möglich umgesetzt werden. Wünschenswerterweise würden Priorisierungen wie diese vom World Wide Web Consortium vorgenommen, damit ein ausreichend kompetentes Gremium auch für die praktische Umsetzung von Richtlinien und Spezifikationen die nötige Sicherheit gibt und unter anderem den relativ koordinierten Einsatz neuer Technologien erlaubt.

What I wanted to express with “develop for almost all user agents” is the need still to develop for version 4.x browsers […]. Maybe the W3C (or the WAI WG) should publish timelines when to pass on compatibility to older user agents […]

– Jens Oliver Meiert: Re: [#293] Summary for tables (2003).

Auch wenn weitere Charakteristika eines solchen Entwicklungsprozesses für gegensätzliche Lösungen, widersprüchliche Ansätze und weiteres Kopfzerbrechen sorgen, gibt es sicherlich vernünftige und verantwortungsbewusste Möglichkeiten, wie man die unterschiedlichen Wege bewertet, sowohl auf der Basis, weitsichtig auch für wesentlich größere Gruppen zu konzipieren und zu programmieren, als auch im Zweifel die Priorisierung bei den vorantreibenden Stellen zu suchen oder gar zu fordern. Bislang musste man, was bestimmt kein unbedingter Nachteil ist, dies selbst in die Hand nehmen, ob bewusst oder unbewusst.

Interimszusammenfassung

Was nahezu wie ein quer durch den Garten gewürfeltes Essay über gerade eine halbe Handvoll Tücken und Eigenarten der Entwicklung im Internet und seine Grundlagen wirkt, hat hoffentlich mindestens einen Zweck erreicht, nämlich zu verdeutlichen, dass Webentwicklung und -design nicht nur etwas ganz anderes als stupides »Drag & Drop« ist, sondern vielmehr explizite Verantwortung birgt – und permanent Herausforderungen bereithält.

War dies nützlich oder interessant? Teile (toote) diesen Beitrag, oder lad mich vielleicht auf einen Kaffee ein. Danke!

Ăśber mich

Jens Oliver Meiert, am 30. September 2021.

Ich bin Jens, und ich bin ein Engineering Lead und Autor. Ich habe als technischer Leiter für Firmen wie Google und als Engineering Manager für Firmen wie Miro gearbeitet, bin W3C und WHATWG verbunden und schreibe und prüfe Fachbücher für O’Reilly und Frontend Dogma.

Mit meinem aktuellen Umzug nach Spanien bin ich offen für eine neue Remote-Führungsposition im Frontend-Bereich. Beachte und empfehle gerne meinen Lebenslauf oder mein LinkedIn-Profil.

Ich experimentiere gerne, nicht nur in der Webentwicklung, sondern auch in anderen Bereichen wie der Philosophie. Hier auf meiert.com teile ich einige meiner Ansichten und Erfahrungen.