Mikä hiton PWA?

Viimeisten muutamien viikkojen aikana on tullut selväksi, että joku lobbaa PWA:ta oikein urakalla. Olen saanut useita kyselyjä, joissa aina mainitaan, että toteutuksen pitäisi olla PWA-sovellus.

Ensin olin itsekin hämilläni, että mistä nyt on kysymys, mutta karusti yleistettynä

PWA on uusi Responsiivinen

PWA muodostuu siis sanoista: Progressive Web App(lication)

Käytännössä hienous on kaukana ja totuus on meille softataloilla sitä samaa vanhaa huttua, kuin kaikki muutkin projektit ovat aiemmin olleet.

PWA on siis samanlainen hypetermi kuin esimerkiksi RPA (ohjelmistorobotiikka) – me softa-ammattilaiset naureskellaan ja sitten kauhistellaan kun huomataan, miten kalliilla tätä osaamista myydään, kun se tehdään oikein konsulttien toimesta.

Mutta siis lyhyt oppimäärä siihen, mikä oikeastaan on PWA

  1. Nettisivu, jossa navigointi onnistuu kokonaan sivun omilla navigointivälineillä
  2. Latautuu nopeasti ja siitä löytyy tietyt toiminnallisuudet, jotka pysyvät välimuistissa.
  3. ”Sovellus” osaa tallentaa välimuistiin asioita ja mahdollisesti synkronoida ne takaisin pilveen, kun esim. yhteys palaa takaisin
    • Näin kuitenkin harvemmat PWA:ksi väitetyt sovellukset ihan oikeasti toimivat
  4. Pystyy näyttämään ja vastaanottamaan Push notifikaatioita
  5. Kaiken edellisen voi merkata vahvasti ”toimii jos on toimiakseen” -leimalla.
    • Tekninen toimivuus riippuu vahvasti käytetystä alustasta
    • Ongelmat on ihan niitä samoja kuin nettisivujenkin toteuttamisessa, aina pitää miettiä, mikä nyt sattuu toimimaan milläkin selaimella ja miten nämä asiat kierretään.
      • Tästä syystä hirveän monimutkaisia offline-toiminnallisuuksia ei PWA-sovelluksiin ole välttämättä järkeä edes yrittää toteuttaa.

Hyvänä puolena toki se, että sovelluksia ei tarvitse ladata sovelluskauppoihin vaan ne voi olla saatavilla suoraan nettisivuina, joilta sovellukset tallennetaan pikakuvakkeeksi kotinäytölle.

Riskinä: Kun toimintaympäristö muuttuu koko ajan eikä toimintalogiikka ole toisaalta niin ohjattua ja rajattua kuin perinteisissä tai mm. React Native -sovelluksissa, niin yhtäkkiä halvan kuuloisesta PWA-kehitysprojektista voi tulla kallis painajainen.

Vinkkinä kuitenkin sinulle, joka harkitset sovelluksen teetättämistä: Älä määritä teknologiaa siinä vaiheessa, kun teet tarjouspyyntöä / etsit kumppania. Keskustele eri toimijoiden kanssa ja pyri löytämään sellainen taho, jonka osaamiseen ja asiantuntijuuteen luotat. Vertaile ja kyseenalaista.

Ja loppuun vielä: PWA-tyyppiset sovellukset ovat varmasti tulevaisuutta, mutta mielestäni ihan vielä ei olla siellä, mitä mainospuheet maalailevat.