Magerquarksocke

Auf des Browsers Schneide, Teil II

In meinem Bericht über Microsofts neuen Browser Edge bin ich mit eben diesem durchaus hart ins Gericht gegangen – sogar so weit, die Frage gestellt zu haben, ob dessen Entwickler eigentlich selbst mit Edge arbeiten. Diese Frage war sicherlich aus dem Frust heraus geboren, auf zahlreiche kleine Dinge verzichten zu müssen, die ich von meinem Standard-Browser Firefox gewohnt war, und die selbst der Internet Explorer zum Großteil schon hatte. Es erschließt sich mir eben nicht, weshalb ein neuer Browser auf Features verzichten sollte, die sein Vorgänger und seine wichtigsten Konkurrenten allesamt haben, sofern es sich dabei nicht um Spielereien oder an eine Nischengruppe gerichtete Funktionen handelt. Da ich allerdings natürlich nicht weiß, mit welcher Strategie Microsoft an Edge arbeitet und welchen Stellenwert, demzufolge auch welche Prioritäten sie dem Browser als Ganzem und dessen einzelnen Features im Detail sie ihm beimessen, war jene meine Frage sicherlich mehr provokativ als konstruktiv.
Im Nachhinein habe ich noch ein wenig darüber nachgedacht, inwieweit ich von einem anderen, neuen Browser eigentlich die gleichen Features erwarten können darf und sollte, die ich von meinem sonst benutzen Browser kenne. Anders ausgedrückt – ist es legitim, zu erwarten, dass sich alle Browser mehr oder minder gleichen, damit ich mich möglichst wenig umstellen muss?
Interessant war an dieser Stelle der kürzlich erschienene Beitrag „Chrome Bias (and Finding Things To Like in Firefox)” auf CSS-Tricks.com, der sich mit eben dieser Frage beschäftigt – wenn auch von Chrome kommend.
Es ist natürlich sehr leicht, sich so sehr an einen Browser (“Browser” ist im Kontext dieses Artikels sicherlich nach Belieben durch andere Software oder auch gar nicht computerbezogene Dinge zu ersetzen) zu gewöhnen, dass man dessen Features und Arbeitsweise für gegeben betrachtet. Für einen reinen Benutzer ist das schon problematisch genug, wenn sich dies allein auf Interface-Funktionen bezieht – etwa Synchronisationsmöglichkeiten, Anpassbarkeit, etc. Als jemand, der nebenbei Webdesign bzw. Webentwicklung betreibt, kommen noch HTML-/CSS-/JS-Unterstützung der Engine hinzu. Eine Gewöhnung in diesem Gebiet führt schnell dazu, dass man die browserübergreifende Kompatibilität vernachlässigt. Setze ich mein Layout demnächst mit Grid um und nutze Firefox, der das problemlos darstellt, dann habe ich vielleicht noch im Kopf, dass Chrome Grid auch kann. Dass Edge und Safari von Grid noch nie gehört haben, vergisst man dann schnell – mit dem Ergebnis, dass Nutzer dieser Browser blöd aus der Wäsche gucken.
Insofern ist es sicherlich nicht schlecht, einmal über den Tellerrand zu blicken und eine Zeitlang einen anderen als den gewohnten Browser zu verwenden.
Ich habe diese Gelegenheit aber auch dazu genutzt, meine Arbeitsweise mit Firefox einmal zu reflektieren, um dahinterzukommen, weshalb ich ausgerechnet mit diesem Browser arbeite und mit anderen noch nie so recht warm wurde. Auch Chrome etwa habe ich installiert und öffne ich auch gelegentlich einmal, aber anfreunden konnte ich mich damit nie; ohne dass ich den Finger hätte darauflegen können, woran das liegt. Wie sich herausstellen sollte, gibt es auch gerade einmal drei Gründe, die mich bei Firefox halten, und davon bezieht sich nur einer auf die Funktionen des Browsers.

Flexibles Interface

Das erste, was mir hierbei aufgefallen ist, ist die Verwendung meiner Startseite. Es gibt eine gewisse Auswahl an Websites, die ich regelmäßig aufrufe – etwa das Mobiflip-Blog, Ars Technica, YouTube, 4Players oder feedly. Diese Seiten hätte ich gerne möglichst einfach erreichbar, und habe mir dafür eine eigene Startseite mit entsprechenden Verknüpfungen gebastelt. Diese Seite habe ich in Firefox als klassische Startseite, aber auch als „Neuer Tab“-Seite eingerichtet. Für letzteres bot Firefox früher einmal eine native Option. Da diese Konfiguration aber häufig von Malware und zwielichtigen Add-ons dazu missbraucht wurde, dem Nutzer eine wie auch immer präparierte Neuer-Tab-Seite unterzujubeln, hat Mozilla diese Option entfernt – gleichzeitig aber eine Schnittstelle geschaffen, mit Hilfe derer man eine solche Funktion per Add-on nachrüsten konnte. Ich setze hierfür das Add-on „New Tab Override“ ein. Gleichzeitig habe ich den Button zum Aufruf der Startseite ganz links oben in die Tableiste geschoben. Damit muss ich nur, ohne zu zielen, den Mauszeiger in die linke oberste Ecke des Bildschirms schubsen und einmal klicken, und schon sehe ich meine Startseite. Der Button ist damit im Sinne von Fitts‘ Gesetz perfekt positioniert.
Dies funktioniert jedoch weder in Chrome noch in Edge. Beide Browser bieten erstens keine Möglichkeit, den Startseite-Button zu verschieben, sodass ich stets genauer zielen muss als in Firefox, und zweitens kann ich keine eigene Seite für neue Tabs festlegen – weder nativ, noch per Erweiterung [Update: zumindest für letzteres habe ich im Chrome Web Store mittlerweile eine Erweiterung gefunden]. In beiden Browsern ist es für mich daher schwieriger, meine eigens erstelle Startseite aufzurufen, und somit, meinen Arbeitsablauf beizubehalten.
Abgesehen von der Positionierung des Startseite-Buttons ist das Interface von Firefox generell deutlich flexibler (zumindest mit Add-ons). Getrennte Adress- und Suchleiste? Standard, aber die Suchleiste lässt sich auch ausblenden. Einzeln entfern- und verschiebbare Buttons? Ebenfalls möglich, sodass ich am PC die Vor- und Zurückpfeile nicht sehen muss. Add-on-Verknüpfungen, die irgendwo oder nirgends angezeigt werden können? Klar, kein Problem. Sogar per eigener CSS-Regeln umgesetzte noch tiefgreifendere Änderungen sind möglich.
Ein Browser ist für mich in erster Linie ein Werkzeug, und das als solches muss er gut bedienbar sein. Wenn er das im Auslieferungszustand nicht ist – und das ist meist so, schließlich stellt die Standardkonfiguration einen möglichst massenkompatiblen Kompromiss dar –, dann muss er sich entsprechend anpassen lassen. Ist das nicht möglich, fällt er als Alternative eben weg.

Wider die Webkit-Monokultur!

Dies war allerdings auch schon das einzige klassische Feature von Firefox, dass ich in anderen Browsern vermisse. Manch einer schwärmt von der mächtigen Lesezeichenverwaltung – aber ich nutze Lesezeichen zu wenig, als dass mich so etwas interessieren würde. Andere schwören auf diese oder jene Entwicklerwerkzeuge – aber die sind unter den großen Browsern mittlerweile austauschbar; man müsste sich nur ein wenig umgewöhnen. Ich hatte auch mit dem einzelnen Firefox-Prozess nur höchst selten Probleme. Natürlich freue ich mich auf Electrolysis, sprich die Trennung von Darstellungs- und Oberflächenprozessen, aber auch so hatte ich in der Vergangenheit nur selten mal Hänger oder Abstürze des gesamten Browsers.
Mir viel wichtiger hingegen ist die Engine, die Firefox nutzt. Mozilla entwickelt mit Gecko (und aktuell Servo, das aber noch weit von einem finalen Produkt entfernt ist) eine von nur wenigen Engines. Die einzigen anderen sind Trident (Internet Explorer) bzw. EdgeHTML (Edge), jeweils von Microsoft, und Webkit (Safari) bzw. Blink (Chrome, Opera, Vivaldi). Sowohl EdgeHTML als auch Blink sind zwar von den Features und unterstützten Webstandards her mittlerweile weiter als die Engines, aus denen sie hervorgegangen sind, aber insbesondere im Falle von Blink kommt hinzu, dass sich diese Engine weiterhin als Webkit „ausgibt“. Das äußert sich in der Praxis vor allem darin, dass Blink noch immer das -webkit-Präfix nutzt.
Nun halte ich Präfixe grundsätzlich für eine schlechte Idee. Gedacht sind sie dafür, dass die Browserentwickler neue Standards, die noch nicht final sind, schon einmal zu Testzwecken in die Engines einbauen können. Beispiel: die CSS-Anweisung border-radius rundet die Ecken einer Box ab. Als die border-radius-Spezifikation noch nicht final war, konnten Webdesigner sie mit Hilfe von herstellerspezifischen Präfixen (sog. „Vendor Prefixes“) trotzdem schon einsetzen, also -webkit-border-radius, -moz-border-radius, etc. Nachteil hierbei ist natürlich, dass nur Browser mit der richtigen Engine diese Anweisungen auch verstehen. Und die Tatsache, dass Features mit Präfixen noch nicht für den Produktiveinsatz gedacht sind, hat viele Webdesigner natürlich nicht davon abgehalten, sie trotzdem schon fleißig zu benutzen. Zugegeben, bei border-radius ist das eine rein optische Geschichte, aber wenn es um funktionsrelevante Dinge geht, kann man hiermit schnell potentielle Nutzer ausschließen – nämlich indem man aus Unwissen oder Faulheit bspw. nur -webkit-Präfixe nutzt, nicht aber -moz-.
Unabhängig von Präfixen gibt es auch Webstandards mit finalen Spezifikationen, die sich nur in Webkit bzw. Blink finden. Betrachtet man aktuelle Statistiken über die Browser-Verbreitung, stellt man fest, dass Chrome und dessen Derivate die Browserlandschaft deutlich dominieren. Da liegt natürlich die Versuchung nahe, im Zweifelsfall nur Webkit/Blink zu unterstützen. Es gibt da draußen einige an den Endbenutzer gerichtete Websites, die mit nicht-Blink-basierten Browsern nur eingeschränkt oder gar nicht funktionieren*.
Vor diesem Hintergrund finde ich es wichtig, Firefox zu benutzen; alleine schon, um der drohenden Engine-Monokultur etwas entgegenzusetzen. Ich habe manchmal das Gefühl, als hätten Webdesigner vergessen, was der Internet Explorer 6 einmal für das Web bedeutet hat. Klar, die Witze über ihn gibt es heute noch – aber den Hintergrund scheint niemand mehr zu kennen. Mir scheint, man tausche bereitwillig das IE-Diktat in ein Blink-Diktat und fühle sich noch ganz „modern“ dabei, weil Blink ja alles kann. Klar, im Moment ist Blink eine der fortschrittlichsten Engines. Aber ob das so bleibt, wenn Gecko und EdgeHTML einmal gar keine Rolle mehr spielen? Ich wage das zu bezweifeln.
Vielleicht liegt’s auch zum Teil daran, dass im Web-Bereich viele junge Leute kennen, die (wie auch ich) den ersten Browserkrieg und dessen Folgen nicht mehr selbst miterlebt haben, und deswegen gar nicht richtig einschätzen können, worauf sie da eigentlich zusteuern.

Mozilla als Organisation

Der dritte Aspekt, der mich bei Firefox hält, ist dessen entwicklungspolitischer Hintergrund. Die anderen „großen“ Browser werden allesamt von Firmen entwickelt, die ihm entweder keine große Bedeutung zumessen (Apple Safari, in meinen Augen auch Microsoft Edge), oder ihn als Vehikel nutzen, um ganz nebenbei noch möglichst viele Daten ihrer Nutzer zu sammeln (v.a. Google Chrome, aber auch hier wieder Edge). Firefox hingegen wird als freie und Open-Source-Software von der Mozilla Foundation entwickelt, einer gemeinnützigen Stiftung.
Auch wenn ich mit dem Open-Source-Aspekt zwar nicht direkt selbst etwas anfangen kann, bedeutet dies doch eine Sicherung vor Missbrauch des Browsers zu gewinnorientierten Zwecken. Von Google weiß ich, dass die meine Daten sammeln und zu Geld machen; nicht, indem sie sie verkaufen, sondern indem sie sie intern nutzen. Zwar lässt sich dies kontrollieren, indem man sein Google-Konto entsprechend konfiguriert und mit Hilfe von Skriptblockern wie uMatrix Doubleclick, Google Analytics und ähnliche Dienste daran hindert, überhaupt erst Daten zu sammeln. All dies mache ich, und nutze vor diesem Hintergrund auch gerne die Dienste, die Google bietet.
Aber wäre es nicht viel schöner, sich von vornherein darauf verlassen zu können, dass die Firma, deren Produkt man nutzt, den Datenschutz respektiert? Bei Mozilla kann man sich dessen sicher sein. Hinzu kommt noch, dass Mozilla für ein offenes Web eintritt. Wo Firmen wie Google und Apple ein Interesse daran haben, Ökosysteme aufzubauen, in denen die Nutzer mehr oder weniger gefangen sind, steht für Mozilla die Freiheit des Webs an erster Stelle – das bedeutet, technische Einschränkungen abzubauen und allen Menschen gleichermaßen die Beteiligung am Web zu ermöglichen und zu erhalten. Dieser Grundsatz ist mir nicht nur sympathischer, ich halte ihn in einer Zeit, in der das Web für viele Leute mit Google und Facebook beginnt und endet, auch für immanent wichtig. Alle reden über Filterblasen, und das zu Recht, aber niemand hinterfragt die zentralistische Position von Google als Suchmaschine und Facebook als Netzwerk.

Es sind insofern weniger die funktionalen Aspekte, derentwegen ich weiterhin Firefox nutze; auf das bisschen Interface-Anpassung könnte ich mit etwas Kompromissbereitschaft und Umgewöhnung noch verzichten. Vielmehr sind es die ideellen Gründe, die Werte, für die Firefox und Mozilla stehen. Dieser Browser ist für die Weiterentwicklung des Webs von Bedeutung, einfach dadurch, dass es existiert – und zwar in einem völlig anderen Zusammenhang als die übrigen Browser. Deshalb schüttele ich mich jedes Mal, wenn wieder eine Statistik einen Ausbau des Marktanteils von Chrome angibt: weil es wieder einen Schritt hin zur Webkit-Monokultur und zur Verschließung des Webs bedeutet.


*Manchmal, wie etwa im Falle von Google Inbox oder WhatsApp Web, sogar ganz ohne Grund. In beiden Fällen hat es gereicht, den User Agent von Firefox oder Edge auf Chrome zu stellen, sodass diese Seiten glaubten, sie hätten es mit Chrome zu tun, und alles funktionierte wunderbar.