Maximiliano Firtman wirft einen Blick auf PWAs dieses Jahr, einschliesslich des Versuchs, herauszufinden, wie verbreitet sie sind
Ende 2020 nutzten etwa 1 % der Websites einen Service Worker und 2,2 % verfügten über eine installierbare Web App Manifest-Datei. Denken Sie daran, dass einige Plattformen – wie Safari auf iOS oder Chrome auf Android – keinen Service Worker benötigen, um nach der Installation eine eigenständige Erfahrung zu bieten. Wir können davon ausgehen, dass 2,2 % der Websites installierbar sind und 1 % die PWA-Kriterien auf Android erfüllen, wobei 71 % davon eine gewisse Offline-Erfahrung bieten.
Diese Daten stammen aus dem HTTP Archive, das 7,5 Millionen Websites analysiert hat. 1 % mag wie eine kleine Zahl erscheinen, aber das sind *viele* Websites mit PWA-Technologie, und das ist ein jährliches Wachstum von 170 %. Das sind jedoch nur die *Mindestanforderungen*. Ich bin sicher, dass die vollständige Annahme der PWA-Eigenarten (z. B. echte Offline-Nutzung) nur einen winzigen Bruchteil davon ausmacht. Maximiliano hat viele detailliertere Daten, also stöbern Sie unbedingt in dem Artikel, wenn Sie an den Feinheiten interessiert sind.
Anekdotisch würde ich sagen, dass PWAs letztes Jahr aus der allgemeinen Unterhaltung verschwunden sind. Ich glaube nicht, dass jemand genau gegen die Technologien ist, aus denen sie bestehen, aber sie setzen sie auch nicht ein. Meine Vermutung? Jeder hat Angst vor Service Workern. Ich habe Angst vor Service Workern. Sie tun beängstigende Dinge, wie aggressiv an Caches festhalten. Ich denke, ein ganzes Entwicklerteam muss sie wirklich verstehen und in ihren Workflow und ihren Erstellungsprozess integrieren, damit sie effektiv sind. Im Allgemeinen sind wir einfach noch nicht so weit.
Obwohl die Punkte zu Apple in Ordnung sind, finde ich die Punkte gegen Mozilla etwas voreingenommen: Ihre Meinungen zu vorgeschlagenen APIs sind öffentlich und viele Funktionen, die sie nicht unterstützen wollen, birgen Risiken für die Privatsphäre.
Ich spreche über etwas, das mich interessiert: Lokaler Schriftartenzugriff. Es ist erstaunlich! Websites, die von Flash migrieren, können lokale Schriftarten ohne Probleme verwenden (wie eine bestimmte Website, die libass für die Untertitelwiedergabe verwendet und auf lokale Schriftarten angewiesen war, sodass viele Untertitel kaputtgingen, als sie von Flash migrierten).
Andererseits versuchte der Vorschlag zu erklären, dass er die Privatsphäre nicht beeinträchtigen würde, aber es scheint, als ob einige Details ausgelassen wurden: Er erlaubt den Zugriff auf Schriftartendaten, nimmt diese, hasht sie und Sie erhalten einen Super-Cookie, der zwischen Browserdatensäuberungen bestehen bleibt. Die Spezifikation besagt, dass Browser keine echten Daten zurückgeben müssen, aber diese "Lösung" reduziert die Anwendungsfälle dieser API stark. Ich kenne Canvas Fingerprinting, aber durch den direkten Zugriff auf Font-Blobs wäre es viel leistungsfähiger. Ach, gibt es eine Berechtigungsaufforderung? Erinnern Sie sich an das Chaos mit den Benachrichtigungsaufforderungen?
Neue Ideen, um Web-Apps besser zu machen, sind großartig, aber Ideen zu übernehmen, die hauptsächlich von einer Gruppe stammen, die meiner Meinung nach die Privatsphäre nicht allzu ernst nimmt, schadet dem Web. Ich mag die Idee, lokale Schriftarten zu verwenden, das würde bei der Migrationsproblematik sehr helfen, aber zum Preis eines Super-Cookies? Nein. Überdenken Sie diesen Vorschlag, bevor Sie ihn Apple oder Mozilla aufzwingen. Gibt es andere Vorschläge mit versteckten Vorbehalten? Ich denke ja.
Was ich hoffe? Dass die Leute zum Wohle der Community zusammenarbeiten könnten, anstatt des üblichen "Nehmen wir die Cloudflare Token-Idee und machen daraus eine Web API, damit wir unsere Werbeplattform verbessern und sie für Publisher sicherer aussehen lassen können". Selbst wenn die Kryptographie sicher aussieht und die Privatsphäre schützt, ist die Begründung meiner Meinung nach seltsam. Viele sagen, Apple schadet dem Web, um seinen Store zu schützen, aber ich würde sagen, Google schadet dem Web, indem es das neue "Diese Website funktioniert am besten mit Internet Explorer" mit Chromium-basierten Browsern macht.
Mangelnde Browserunterstützung hilft nicht: https://www.fastcompany.com/90597411/mozilla-firefox-no-ssb-pwa-support
Ich bin für meinen Teil überrascht, dass dieser Ansatz / diese Technologie den Markt nicht am schnellsten durchdringt.
Es macht Websites viel schneller, aber ich wusste nicht, dass es so viele Nachteile gibt.
Guter Artikel!
Toller Artikel. Danke fürs Teilen.
In Ihrem Newsletter sagen Sie: "Es ist nicht offensichtlich, dass man eine Website im Browser installieren kann" und das ist ein "riesiges fehlendes Puzzleteil". Wenn die Leute es ein paar Mal tun, glaube ich nicht, dass dies eine Hürde sein wird. Die von Google erstellte Grafik, die Benutzer bei der Installation einer PWA anleitet, war klar und einfach. Die Leute hatten kein angeborenes Wissen darüber, wie man Touchscreens benutzt, sobald jemand sieht, wie man einen benutzt... dann geht es los.
Service Worker sind nicht intuitiv, aber Workbox macht den Umgang mit ihnen einfacher und sobald sie eingerichtet sind, müssen sie selten angepasst werden.
Leider bin ich nicht überrascht von Apples Mobbing-Taktiken, ich erwarte nicht, dass sich das ändert, aber das Versagen der Führung von Mozilla im letzten Jahr oder so ist verblüffend. Eine Organisation voller Talente wird von Eseln geführt.
Das Fugu-Projekt sieht fantastisch aus… so viele unterhaltsame, nützliche und leistungsstarke Dinge werden Webentwicklern in die Hände gelegt! Die Zukunft ist hell.
Toller Artikel. Service Worker können Websites schneller machen, indem sie Daten für Links zur nächsten Seite vorab abrufen. Wir dachten, sie seien einfach zu konfigurieren, aber sie sind eine Plage, besonders wenn man sicherstellt, dass der Cache mit den Edge- und Server-Caches sowie allen Versionen und Variationen synchron ist. Die Ergebnisse sind es wert, durchsuchen Sie einige dieser Websites: https://www.katespade.com (React), https://universalstandard.com (Nuxt) & https://www.sharperimage.com (Next).
Sie können hier lesen, wie diese Websites eingerichtet wurden: https://developer.moovweb.com/guides/prefetching