The Web anno 2018 — Takeaways from Google I/O 2018

I sidste uge var jeg sammen med +7000 udviklere til Googles årlige udviklerkonference i Californien. Som altid er det årets tekniske højdepunkt startende med en keynote efterfulgt af 3 dage med tekniske sessions fra morgen til aften om alt mellem himmel ogjord. Det er en god anledning til at lave status på frontend i 2018, og et kig ind i fremtiden — med et ekstra fokus på e-commerce.

Progressive Web Apps

Snakken om offline first og progressive web apps har stået på et par år, men med en nylig iOS support er det pludseligt blevet meget mere relevant i Danmark.

Det er et spændende mentalt skifte at tænke offline-first — både for udviklere og UX’ere. Vi så mange forskellige bud på spændende løsninger, og Google offentliggjorde, at PWA’er i gennemsnit giver 20% bedre mobilkonvertering. Så return-on-investment er nok hurtig på mange projekter.

Google annoncerede i øvrigt et nyt app-tld (top level domain — altså det der kommer efter det sidste punktum i et domænenavn). Så køb et .app domæne til din pwa i dag fra get.app, og vær med til at skubbe offline-revolutionen igennem.

Safety first

Både i E-commerce og generelt er krypterede forbindelser, via https, en best practice, og alle bør tænke det som en nødvendighed. Du kan være sikker på, at dit indhold når umodificeret (og uåbnet) frem til brugeren, og at brugeres information er beskyttet på vejen mod din server.

Vi har nået et tipping-point, hvor overvægten benytter https, og Chrome vil fra Juli 2018 i adressebaren advare brugere mod alle usikre origins.

De moderne features som f.eks. geolocation og serviceWorker (som er byggestenen bag PWA’er) kræver endvidere https for at fungere.

De nye .app-domæne-navne tillader iøvrigt kun https-trafik.

Polymer 3.0

Og så blev det også ugen, hvor Google udgav version 3.0 af deres polymer-framework. En udgave som ligger sig tættere op ad browserens nye kapaciteter med native web-components, template-literals og ES-modules.

Polymer selv er også blevet mere modulært, så man som udvikler kan vælge, hvor meget af deres kode man vil bruge. Som den nederste byggesten ligger nu LitElement, som er en baseclass, man kan extende til webcomponents, som så får noget templating og basal change-detection.

Samtidigt annonceredes en ny implementering af Material design bygget på LitElement baseClassen.

Polymer-teamet fortalte endvidere om de nye emergerende standarder (som f.eks. packagemap, scoped custom element registries, template instantiation og ::part), som de håber vil danne grundlaget for de næste iterationer af frameworket, som hele tiden har haft som mission i sidste ende at blive obsolete, fordi platformen kan det hele.

Den tætpakkede session sluttede med at henvise til et nyåbnet pwa-starter-kit-projekt med både kode-eksempler, snippets og best practices.

New and emerging standards

Det unikke ved Google IO er adgangen til spec-reviewers og browser-implementører. Selvfølgelig særligt pause-snakken, men det er både lærerigt og inspirerende at høre deres forberedte take på de fremtidige standarder. Der blev talt om mange forskellige ting fra et fremtidigt krypteret pakke-format, Webpackaging, hvor origins kan signere website-pakker, så de kan serveres fra andre origins, så f.eks. søgemaskiner kan preloade websites uden at lække brugerinformation…- til webassembly som nu faktisk er bredt understøttet, og f.eks. muliggør at autocad nu kører deres 30 år gamle (fra før www blev opfundet) kildekode i en browser og når helt nye målgrupper.

Og så blev der talt om, hvordan VR og AR, som jo begge er hippe og mange tænker som native-only, kan komme til web, og give nogen spændende og meget mere tilgængelige oplevelser. Jeg kan selvfølgeligt ikke lade være med at tænke på muligheder for at se en given sofa i min stue — direkte fra min mobil-browser uden nogen forudinstallation. Der går nok lidt endnu, men spec-arbejdet er igang, og i Chromes dev-channel (den browser de arbejder på hver dag) er dele af de underliggende strukturer ved at være på plads.

En anden interessant ting, både for brugerens oplevelse og sikkerhed, er Webauthentication, som rykker os et skridt nærmere mod en sikker verden uden passwords, og som i denne uges release af Firefox nu faktisk er tilgængeligt til brug.

En opdatering om Googlebot

Og så åbnede Google en lille smule op for den sorte box, der handler om indexering til søgemaskinen Google.com. De løftede sløret for, at javascript-baserede sider faktisk indexeres over flere omgange, og lancerede en ny policy i forhold til useragent-sniffing. Indtil nu har Google frarådet at servere andet indhold til googlebot end til slutbrugeren — vel fordi det blev anset som et forsøg på at snyde Google og derved give brugeren noget andet, end de forventer.

Nu anbefaler de imidlertid, at man gør det ved javascript-baserede apps (altså via serverside-rendering af dit site), således at Google kan indexere din javascript-frontend allerede i første omgang. Så hvis dit SSR-setup ikke skal ud til brugeren, er det nu altså fint at switche på useragenten.

Opsamling

En spændende konference er veloverstået (i høj solskin), og fremtiden ser fortsat lys ud for vores allesammens favorit platform — the web…