Progressive Web App

A new approach to mobile development

Alex Mihordea & Alex Grigoruta

  • what is a PWA?
  • development impact
  • product impact
  • PWA and our VMSs

Hybrid

Native

PWA

2012

2016

PWA

  • normal web page with some tricks
  • opens in the browser
  • behaves like a native app
  • does not have all the native capabilities

Let's look at these two apps

Development impact

Build Time

Launch dev environment

Modifying the code

7.9s x 100 = 13m 10s

33.5s x 5 = 2m 37.5s

61.3s x 2 = 2m 2.6s

18m / day / FTE

Hybrid

Native

PWA

  • Heavy dev environment
  • Heavy dev environment
  • Light dev environment
  • Test: multiple devices
  • Deliver: native file
  • Deliver: native file
  • Test: multiple devices
  • Test: browsers on devices
  • Deliver: web app bundle

Dev environment

Hybrid

Native

PWA

  • Java
  • Objective C or Swift
  • Ionic (Angular)
  • Javascript Whatever
  • PWA concepts

Mobile Java Devs & IOS Devs

2 FTE

Angular & Ionic Devs

React and React Native Devs

1 FTE

 Any Javascript Dev

1 FTE

  • React Native (React)

Tech stack

  • more freedom with specialists
  • faster development speed
  • can transition to hybrid without full re-write*

Development - How does it fare?

Product impact

Security

Hybrid

Native

PWA

Strong standards imposed by stores

(can bypass)

Strong standards imposed by stores

(can bypass)

Custom standards

Hybrid

Native

PWA

Fully compatible

Dependent on plugins  and middleware

  • some inconsistencies

Dependent on browser

  • no advanced features
  • unified look and feel across platforms

Device compatibilty

Hybrid

Native

PWA

  • High memory usage
  • Best performance

Performance

  • Doesn't work offline
  • High memory usage
  • Fast set-up
  • Browers
  • Low memory usage
  • Fast set-up

Hybrid

Native

PWA

Delivery and installation

Deliverable

  • app store restricted
  • native file
  • 2 versions

Deliverable

  • deployment on host
  • one version

Installation & Updates

  • user prompted

Installation & Updates

  • user prompted

Deliverable

  • app store restricted
  • native file
  • 2 versions

Installation & Updates

  • user action - 1st install

Product - How does it fare?

  • more permissive security
  • lacking advanced hardware features
  • dependent on browsers
  • unified look and feel Apple vs Android
  • low memory print
  • no app restrictions and no app store
  • first install user action only

PWA and our VMSs

When not to use PWAs

  • advanced hardware features
  • support old phone/browsers
  • support just Apple tech
  • lots of client-side processing

When are PWAs suited best

  • just basic hardware access (eg. camera, GPS)
  • mostly Android with Chrome users?
  • it needs to work both web & mobile
  • needs to work offline
  • we need a quick MVP/POC

Some examples

  • Ticketing app
  • Scheduler with location
  • Tracking assets

New initiatives to quickly extend your existing suites with on the field capabilities

Q&A

Made with Slides.com