Arbeidet med Office League-appen har ført til at Enonic virkelig har fått troen på progressive webapper.
Arbeidet med Office League-appen har ført til at Enonic virkelig har fått troen på progressive webapper. (Bilde: Harald Brombach)
EKSTRA

Progressive Web Apps

– Vanlig mobilapp-utvikling vil bare være et nisjeområde innen to år

Hei, dette er en Ekstra-sak som noen har delt med deg.
Lyst til å lese mer? Få fri tilgang for kun 199,- i måneden.
Bli Ekstra-abonnent »

Norske Enonic lanserte i juni i år en webbasert mobilapp basert på konseptet som kalles for Progressive Web Apps (PWA).

PWA er ingen egen teknologi. I stedet tas det i bruk en rekke eksisterende teknologier, hvorav flere riktignok er temmelig nye. Men det aller meste er velkjent webteknologi. Digi.no skrev en grunnleggende artikkel om PWA i desember i fjor

En demo for hovedproduktet

Til digi.no forteller teknologidirektør hos Enonic, Thomas Sigdestad, at bakgrunnen for at selskapet har lagd appen, som kalles for Office League, var for å demonstrere hovedproduktet til selskapet, applikasjonsplattformen Enonic XP.

– Gutta hos oss er veldig glade i å spille fussball. De hadde lagd en webløsning for dette, men fikk til oppdrag å lage en PWA-utgave. Den ble lansert under NDC-konferansen i Oslo og fikk mye oppmerksomhet, sier Sigdestad. 

Mange utviklere er glade i å spille fussball. Office League-appen til Enonic setter matchene inn i et større system. Her ser vi (fra venstre) Alex Rodriguez, Runar Myklebust, Glenn Ricaud og Diego Pasten hos Enonics i en intens kamp mens digi.no var på besøk.
Mange utviklere er glade i å spille fussball. Office League-appen til Enonic setter matchene inn i et større system. Her ser vi (fra venstre) Alex Rodriguez, Runar Myklebust, Glenn Ricaud og Diego Pasten hos Enonics i en intens kamp mens digi.no var på besøk. Foto: Harald Brombach

Appen i seg selv er kanskje ikke så oppsiktsvekkende. Den gjør det mulig for fussball-spillere å etablere sin egen liga og registrere scoringer i kamper, noe som kan følges i sanntid av andre, siden dataene også gjøres tilgjengelige via en skytjeneste. Det er nå registrert et titalls ligaer og flere hundre lag, både i Norge og utenlands. 

– Dette er bare begynnelsen. Vi ser for oss å lage ligaer også for andre spill, for eksempel bordtennis, forteller Sigdestad. 

Åpen kildekode og GraphQL

Appen er utgitt som åpen kildekode og er tilgjengelig på GitHub

– Man kan kjøre hele løsningen selv, som blant annet håndterer pålogging, brukerhåndtering og forretningslogikk, men man må ha XP-plattformen vår i bunnen, sier Sigdestad. Han forteller at det bare tar et par minutter å laste ned og installere utviklingsmiljøet.

Noe av målet med å tilby appen som åpen kildekode, er å vise fram hvordan de underliggende teknologiene fungerer og er satt sammen. Men ifølge Sigdestad ønsker Enonic også forbedringsforslag.

I løsningen har Enonic også tatt i bruk GraphQL, et åpen kildekodebasert spørrespråk for API-er (programmeringsgrensesnitt) som Facebook står bak. Sigdestad omtaler dette som en «REST-killer», dels fordi det kan brukes til å tilby selvdokumenterende, webbaserte API-er, men mest fordi det gjør det enklere og mer effektivt å spesifisere de dataene man vil ha.

Mange fordeler med vanlige mobilapper

I løpet av et knapt tiår har systemspesifikke («native») apper vokst seg voldsomt stort. Denne typen apper har ifølge Sigdestad fordeler som at appene er kjappe, dekker hele skjermen, kan gjøre oppgaver i bakgrunnen, fungerer uten nettilgang, støtter push-teknologi og er tett integrert med maskinvaren. 

– Det er rett og slett mulighet for veldig god brukeropplevelse, sier han. 

Men også ulemper

Problemet med systemspesifikke apper er nettopp at de er systemspesifikke. Man må typisk lage dem til både iOS og Android, og gjerne en webutgave i tillegg. Dessuten skal nye versjoner helst utgis samtidig. Dette skaper betydelig kompleksitet og kostnader. 

Thomas Sigdestad (til høyre), flankert av utviklerne Alex Rodriguez og Glenn Ricaud.
Thomas Sigdestad (til høyre), flankert av utviklerne Alex Rodriguez og Glenn Ricaud. Foto: Harald Brombach

Samtidig forteller rapporter fra blant annet ComScore at kanskje så mange som halvparten av smartmobilbrukerne ikke laster ned en eneste ny app i løpet av en vilkårlig måned. Noe av forklaringen er at det er for tungvint. Man kan ikke ta den i bruk med det samme, slik man gjør når man går inn på en hvilken som helst webside, men må gå inn i app-markedsplassen, velge appen og vente på at den lastes ned og installeres, før man kan bruke den.

Det beste fra to sider

Med progressive webapper er opplevelsen mye nærmere den man har på weben. Når man første gang åpner en slik app, for eksempel via en lenke på en webside, åpnes appen i nettleseren, slik ordinære webapper gjør. Men snart blir man spurt om appen skal legge igjen et ikon på hjemmeskjermen. Velger man å gjøre dette, vil webappen via ikonet åpnes i fullskjermsmodus, vanligvis uten nettleserens brukergrensesnitt. 

PWA-er har dessuten en del andre fordelaktige egenskaper, sammenlignet med ordinære webapper. Innholdet mellomlagres og synkroniseres, slik at appene kan brukes offline. Når appene har nettilgang, vil de derimot automatisk bli oppdatert – ikke bare innholdet, men også selve appen. Med nyere teknologier som WebAssembly, bør også farten kunne bli god.

Les også: Blir progressive webapper den neste webrevolusjonen? (Digi Ekstra)

Mindre installasjoner

I tillegg så innebærer PWA-ene ofte at betydelig mindre data må lastes ned til enhetene under installasjonen, enn ved installasjon av tilsvarende, systemspesifikke mobilapper. Google trakk tidligere i år fram PWA-appen til indiske Ola cabs, som med sine 200 kilobyte utgjorde bare et par promille av nedlastingsstørrelsen til de selskapets systemspesifikke Android- og iOS-apper.

Et annet eksempel er Twitter Lite, en PWA-utgave av den vanlige Twitter-appen. Funksjonaliteten er nok noe mer begrenset, men ifølge Google krever PWA-utgaven av appen bare 3 prosent av lagringsplassen til den systemspesifikke Android-versjonen.

Sigdestad mener dette er noe av grunnen til at PWA allerede har begynt å ta av i verdensdeler som Asia og Afrika. I mange land i disse regionene er det ikke bare enkelt å laste ned megabyte på megabyte hver gang en stor mobilapp må oppdateres.

Apple snart på banen

Webbaserte mobilapper er i og for seg ikke noe nytt, men ifølge Sigdestad har det vært en del funksjonalitet som weben til nå ikke har kunnet levere. Fortsatt gjenstår noe, avhengig av nettleser. Men det skjer stadig mye utvikling på dette området.

Sentralt i PWA-ene er webteknologien Service Workers. 

– Alle nettverkskall rutes gjennom service workeren, som fungerer som en proxy. Den vet om man er offline eller ikke og tar seg av ulike cachingsstrategier, forteller Sigdestad.

Jeg tror det vil bli veldig få nye, rene app-prosjekter som starter opp i årene som kommer.

Thomas Sigdestad

Et stort problem for utbredelsen av PWA så langt, er at Apple Safari ikke støtter Service Workers. Dette gjelder ikke minst i land som Norge, hvor iOS-baserte enheter er svært vanlige. 

Men i forrige uke ble det oppdaget på statussiden for WebKit, som Safari er basert på, at støtte for Service Workers er under utvikling.

Mens det er Google som har vært den store pådriveren for PWA – weben er jo selskapets viktigste plattform – så mener Sigdestad at progressive webapper utgjør et aldri så lite problem for Apple

For å den ene siden så kan ikke selskapet unnlate å støtte en løsning som kan se ut til å kunne bli veldig populær. På den annen side som er de progressive webappene i utgangpunktet plattformuavhengig ved at de snart vil støttes av alle vanlige nettlesere. Det gjør det vanskeligere å låse brukerne til én plattform.

En mulighet for Microsoft

Med PWA trenger vil appene utgis samtidig til alle plattformer, og det er ikke engang nødvendig å distribuere dem gjennom App Store eller Google Play, selv om dette nok også vil være mulig og kunne bidra til at appene lettere oppdages av nye brukere.

– Jeg tror det vil bli veldig få nye, rene app-prosjekter som starter opp i årene som kommer. Det må i så fall være apper som dekker veldig nisjebehov, sier Sigdestad. 

Han mener at PWA også vil være Microsofts anledning til å bli relevante på klientsiden igjen.

– De kommer til å crawle weben, lete etter PWA-er og legge dem automatisk til i Windows Store, sier Sigdestad og viser til uttalelser på denne siden.

Interesserte kunder

–  Det er veldig stor interesse også hos kundene, spesielt på businessiden. Mange har lyst til å lage en app, men har slitt med det eller kvier seg for å gjøre det. Det er enklere med web, sier Sigdestad. 

Han legger likevel til at selv om mange kan gjenbruke webutviklingskunnskapene sine for å lage PWA-er, så er dette mer krevende enn å lage enkle websider. 

– Det holder ikke å være en gammeldags webutvikler. Nå det profesjonelle verktøy, byggsystemer, tester og JavaScript som gjelder, avslutter Sigdestad. 

Kommentarer (7)

Kommentarer (7)
Til toppen