Viele Entwickler berichten uns, dass es schwierig ist, mit den Veränderungen im Web Schritt zu halten und die Gründe dafür zu verstehen. Heute starten wir eine neue Serie mit dem Namen Chrome Dev Insider, in der wir euch Folgendes vorstellen: (1) Was ist cool und lohnenswert, (2) Wir berichten, wie wir eine Entscheidung zu einem wichtigen Thema getroffen haben (z. B. Wechsel des FLOC) oder wie wir unsere Zusammenarbeit mit der Plattform angehen (z. B. Interop 2022) und (3) alle wichtigen Dinge, über die ihr bei User-Agents wissen müsst.
Unsere aktuellen Neuerungen werden im Kontext unserer vier Prioritäten für 2022 veröffentlicht:
- Ermöglichung einer positiven Nutzererfahrung:Gestalten Sie die Navigation für die Nutzer intuitiv. egal ob es um Leistung, Transaktionen, Identität oder Übergänge geht.
- Funktionen des Webs ausbauen: Unterstützen Sie die sich wandelnde Rolle des Webs von einer Plattform zur Inhaltsnutzung bis hin zur Plattform für ein breites Spektrum an Nutzererfahrungen, einschließlich derer, die umfassende Integrationen auf Betriebssystem- und Hardwareebene erfordern.
- Webentwicklung vereinfachen:Entscheidungsfindung erleichtern und die Produktivität der Entwickler steigern
- Verbesserung des Datenschutzes im Web: Dienste für Webnutzer Erwartungen an einen besseren Datenschutz angesichts der zunehmenden Komplexität der Entwickler von Tracking und Ausrichtung.
Die neuesten Nachrichten: Interop 2022
Bei der Planung unserer Roadmaps berücksichtigen wir unter anderem das Entwicklerfeedback, um die wichtigsten Probleme und Bedürfnisse von Webentwicklern zu verstehen. Ein wichtiges Thema, das immer wieder zum Einsatz kommt, ist die Browserkompatibilität, damit die Nutzung in allen Browsern gleich funktioniert. Im vergangenen Jahr haben wir uns mit der gesamten Branche an diesem Thema beschäftigt, um die „Webentwicklung zu vereinfachen“.
Letztes Jahr kündigten Microsoft, Chrome und andere Anbieter Compat 2021 an. Das Ergebnis: Alle beliebten Browser-Engines (Chromium, Gecko und Webkit) erzielten eine Punktzahl von über 90% in den fünf Hauptschwerpunkten des Jahres. Compat 2021 hat unter anderem zu einer soliden Grundlage für leistungsstarke Funktionen wie CSS Grid (12% Nutzung und stetiges Wachstum) und CSS Flexbox (77% Nutzung) geführt.
Letzten Monat haben sich Apple, Bocoup, Google, Igalia, Microsoft und Mozilla unterstützen, um die von Webentwicklern identifizierten häufigsten Browserkompatibilitätsprobleme zu lösen und sich auf eine gemeinsame Benchmark zu einigen. Das Ergebnis ist Interop 2022, ein Projekt mit dem Ziel, die Plattform einheitlicher zu gestalten. Die Benchmark liegt auf 15 Prioritäten, die von Entwicklern als entscheidend für die Verbesserung ihrer Produktivität identifiziert wurden.
Insider-Scoop: Zusammenarbeit mit anderen Browsern
Da die Interop-2022 ganz oben auf der Liste steht, habe ich mich mit Robert Nyman und Philip Jägenstedt getroffen, die an diesen Gesprächen beteiligt waren, um mehr über die spannenden Themen zu erfahren. Hier ist der Redaktionsschnitt, wie es zustande kam.
Was war der Ursprung dieser Initiative?
Robert:Alles begann 2019, als wir die Umfrage MDN DNA 2019 durchgeführt haben. Kompatibilitätsprobleme waren eindeutig das Hauptproblem für Entwickler im Web. Weitere Informationen dazu findet ihr im MDN Browser Compatibility Report 2020. So erhielten wir genügend Informationen und umsetzbare Daten, um mit dem Start von Compat 2021 zu beginnen. Dies führte wiederum dazu, dass wir die Arbeit fortführen und diesen Umfang mit dem Interop 2022 erweitern konnten.
Philip: Ich möchte auch web-platform-tests und State of CSS 2021 erwähnen. Wir arbeiten schon seit Jahren eng mit anderen Browseranbietern zusammen, um WPT zu testen, und wir wollten uns darauf konzentrieren. Die Tests für diese Funktionen wurden größtenteils bereits geschrieben, sodass wir sie nur überprüfen und eine fehlende Abdeckung hinzufügen mussten. Google hat viel in wpt.fyi investiert, aber auch Mozilla ist es Mozilla zu verdanken, dass WPT so erfolgreich ist, wie es heute ist. Mozilla spielte natürlich auch bei den MDN-DNA-Umfragen eine große Rolle. Darüber hinaus gibt es die Studie „State of CSS 2021“. Um eine Initiative wie den Interop 2022 zusammenzustellen, benötigen wir neue Informationen zu den Anforderungen von Webentwicklern. Deshalb haben wir gemeinsam mit Sacha, dem Experten der Umfrage, einige neue Fragen zu Problemen mit der Browserkompatibilität gestellt. Das hat uns beim Planungsprozess für den Interop 2022 sehr geholfen.
Gibt es Erkenntnisse oder Feedback vom Compat 2021?
Robert:Es war sehr hilfreich, Bewertungen und Informationen zur Leistung der einzelnen Browser-Engines zu erhalten. So konnten wir den Fortschritt verfolgen und Probleme besprechen und angehen, die unklar waren oder Priorität haben sollten. Uns wurde schnell klar, dass „Interop“ ein besserer Name für die Initiative. Die Begriffe Kompatibilität und Interoperabilität unterscheiden sich in der Regel von den Browseranbietern. Hierbei bezieht sich „Compat“ auf Websitekompatibilität und „Interoperabilität“ bezieht sich auf zwei oder mehr Browser, die sich gleich verhalten. In dieser Terminologie geht es bei diesen Bemühungen um Interoperabilität, sodass das Projekt auf diese Benennung abgestimmt ist.
Was ist unsere Vision hier?
Robert:Damit das Web offen bleibt, ist eine Vielfalt bei Browsern und Rendering-Modulen von entscheidender Bedeutung. Leider ist dies für unsere Entwickler derzeit mit einem hohen Preis verbunden, da sie mit unterschiedlichen Supportstufen für Funktionen in jeder Suchmaschine Schritt halten müssen. Unsere Vision ist, dass Entwickelnde die Webplattform als die praktikableste und attraktivste Wahl für ihre Anforderungen betrachten und dass sie sich darauf konzentrieren können, die bestmögliche Nutzererfahrung zu schaffen, anstatt viel Zeit mit der Ausarbeitung von Interoperabilitätsproblemen zu verbringen. Und es ist ganz klar: Um dieses Ziel zu erreichen, müssen die am häufigsten gewünschten Funktionen in allen gängigen Browser-Engines verfügbar sein, damit Entwickler auf der Webplattform wirklich erfolgreich sein können.
Wie können wir gemeinsam vorankommen, wenn Browser mit (manchmal) unterschiedlichen Zielen zusammenkommen?
Philip:Wir haben nach Bereichen von gemeinsamem Interesse gesucht, um solche Win-win-Zusammenarbeit zu finden, bei denen die Ziele bereits weitgehend abgestimmt sind. Und wenn wir eine begrenzte Anzahl von Dingen priorisieren, an denen wir gleichzeitig arbeiten, konzentrieren wir uns auf diese Bereiche, können schneller vorankommen und bessere Qualitäten erzielen, als wenn wir nur separat arbeiten würden. Das ist die Idee.
Ich denke, es ist wichtig zu verstehen, dass diesem konsensbasierten Ansatz Grenzen gesetzt sind, da die Ziele nicht hinreichend aufeinander abgestimmt sind, um auf andere Weise voranzukommen. Manchmal kann es hilfreich sein, mehr Nachweise über die Anforderungen von Webentwicklern oder Benutzern vorzulegen. Letztlich können Browseranbieter jedoch auch Dinge liefern, für die es keine weitreichende Übereinstimmung gibt. Im besten Fall wird der Nutzen der Funktion dann von Webentwicklern demonstriert, die die Funktion testen, feststellen, dass sie ihre Anforderungen erfüllt, und sie in allen Browsern nach der gleichen Funktion fragen.
Kommen wir beim Interop 2022 zurück, werden wir auch Funktionen ohne Design oder Layout irgendwann in die Pipeline aufnehmen?
Philip:Auf jeden Fall. Die Interop 2022 war nicht auf Stil- und Layoutfunktionen beschränkt, sondern konzentrierte sich am Ende sehr stark auf CSS. Das liegt unter anderem daran, dass „State of CSS 2021“ noch ganz aktuell war, aber auch weil Webentwickler uns mitgeteilt haben, dass sie an dieser Stelle die größten Probleme mit den Unterschieden zwischen den Browsern haben. Mehrere Schwerpunkte wie Formular- und Dialogelemente gehen über CSS hinaus. Darüber hinaus gibt es einige Prüfungen im Zusammenhang mit der Bearbeitung von APIs sowie Zeiger- und Mausereignissen. Ich hoffe, dass wir beim Interop 2023 mehr aktuelle Daten zu den Anforderungen von Entwicklern im Web haben und weitere Funktionen dieser Art einbeziehen werden.
Wichtige anstehende Änderungen
Mit dieser Reihe möchten wir Entwickler über anstehende wichtige Änderungen informieren: die für die Verbesserung der Nutzererfahrung und der Funktionen der Plattform wichtig sind.
Diese Änderungen sind voraussichtlich zu den unten genannten Fristen. Es ist jedoch möglich, dass sich Release-Versionen von Funktionen ändern.
User-Agent-Reduzierung
Der User-Agent-Header und die zugehörigen JS-Schnittstellen übertragen nicht nur nützliche Browser- und Geräteinformationen, sondern bringen auch einige Informationen über Herkunft und fehlerhafte Informationen mit. Noch problematischer als das fast endlose Angebot an Fehlern zum Parsen von UA-Strings ist die Tatsache, dass sie für alle Navigations- und Unterressourcenanfragen passiv an die Server gesendet werden. Dies entspricht etwa 10 Bit Entropie, die Server zur Erstellung stabiler Tracking-IDs verwenden können, während Nutzer im Web navigieren.
Unser aktueller Plan ist, den vorhandenen UA-String zu reduzieren, indem wir weiterhin die Browser-Hauptversion, den Plattformnamen und die Mobilität mit niedriger Entropie versenden, wodurch die Daten mit hoher Entropie eingefroren werden. Für Anwendungsfälle, bei denen zusätzliche Informationen erforderlich sind als im Header enthalten sind, bieten wir seit Chrome 89 die User-Agent Client Hints API an.
Wir haben 6 Monate lang einen Ursprungstest durchgeführt, um Tests durchzuführen und Feedback zu geben. Wir waren froh, dass wir trotz mehr als 200 Teilnehmern kein Feedback zum Thema Fehler erhalten haben.
- Zeitplan:In Chrome 101 beginnen wir mit einer Phase 4: Die
MINOR.BUILD.PATCH
-Informationen im UA-String werden auf0.0.0
reduziert. Wir werden Websites auch in Zukunft über die Vorbereitungen auf Phase 5 und danach informieren. Wir haben außerdem Unternehmensrichtlinien erstellt, um diesen Änderungen zu widersprechen. Bis Chrome 113 wird ein Test zur Einstellung gestartet, um Websites mehr Zeit zu geben, sich auf diese Änderungen vorzubereiten. - Call-to-Action:Migrieren Sie Ihre Website zu UA-Client Hints oder nehmen Sie am Test zur Einstellung teil.
Local Font Access API
In Chrome wird die Local Font Access API eingeführt. Obwohl Websites schon lange in der Lage sind, lokale Schriftarten zu verwenden, listet dieses API die Liste der lokalen Schriftarten auf und gewährt Zugriff auf die Schriftartdaten selbst. Mit dieser Funktion können Nutzer alle ihre Schriftarten mit webbasiertem Design und anderen Anwendungen verwenden.
Lokale Schriftarten werden schon lange als Fingerprinting-Vektor bezeichnet. Durch diese neue API werden zwar nicht die Möglichkeiten zur Verwendung von Schriftarten für das Fingerprinting verbessert, aber Chrome erfordert, dass ein Nutzer eine neue "local-fonts"
-Berechtigung für eine Website erteilt, bevor diese die neue Local Font Access API verwenden kann.
Künftig sollen dieselben "lokalen Schriftarten" Berechtigung erteilt werden, bevor eine andere API verwendet wird, die Zugriff auf lokale Schriftarten bietet.
- Zeitplan:Targeting auf Chrome 103 (Juni 2022)
- Call-to-Action:Hier finden Sie weitere Informationen zur API und wie Sie sie für die Implementierung verwenden.
Nutzung von BFCache mit Cache-control: no-store
Wir haben festgestellt, dass wir die Häufigkeit verbessern können, mit der der Back-Forward-Cache sofortige Back-Forward-Navigationen ermöglicht. Dazu muss das Verhalten von BFCache auf Seiten geändert werden, die mit dem Cache-control: no-store-HTTP-Header bereitgestellt werden. Wir haben einen öffentlichen Vorschlag, um große Überraschungen zu vermeiden, indem wir verschiedene Signale beobachten (z. B. Seiten aus dem BFCache entfernen, wenn sich ein Nur-HTTP-Cookie ändert) und Ausnahmen (z. B. Gruppenrichtlinien für Enterprise-/Edu-Kunden) für besondere Kontexte berücksichtigen. Das ist eine komplexe, aber spannende Möglichkeit, und wir würden uns über zusätzliche Überprüfung und Feedback freuen.
- Zeitplan:Die Ausrichtung auf Chrome 104 (Juli 2022) erfolgt unter der Annahme, dass keine großen Überraschungen auftreten.
- Call-to-Action:Weitere Informationen finden Sie im Vorschlag. Dort wird unter anderem beschrieben, wie Sie eine unfertige Implementierung ermöglichen und Feedback geben können, z. B. anhand von konkreten Szenarien, in denen unser Ansatz neue Hürden schaffen würde.
Mit dieser Serie möchte ich unserer Entwickler-Community ein Gefühl von Konzentration und Verbundenheit geben, indem ich sie enger mit meinem Team und ihrer Arbeit zusammenbringen kann. Mehr dazu demnächst.
Viel Spaß beim Schnüren.
Wie hat Ihnen die erste Ausgabe von „Chrome Dev Insider“ gefallen? Feedback geben