Avec les Progressive Web Apps, le métier de développeur mobile a-t-il encore un avenir ?

Nicolas Yanaï
neoxia
Published in
5 min readMar 7, 2019

--

Matthieu Chappaz est Lead Developer Mobile chez Neoxia

En 2018, Apple a fait un pas vers les Progressive Web Apps (PWA), amenant les développeurs mobile comme moi à se poser des questions sur leur avenir. Mon métier, pourtant récent, existera-t-il encore dans 5 ou 10 ans ? L’étude que nous avons récemment mené pour la société 1 2 3 Fleurs chez Neoxia m’a donné l’occasion de me confronter au sujet.

Qu’est-ce qu’une Progressive Web Application ?

Il y a quelque temps que Neoxia s’intéresse aux PWA. Pour beaucoup de monde, elles sont le futur du développement mobile. Comme leur nom l’indique, elles ont trois caractéristiques principales :

  • progressives, c’est-à-dire utilisables sur tous types d’appareils, tous OS, du PC desktop à la tablette et au téléphone mobile Android, iOS, ou autre
  • Web, car construites avec des technologies de programmation web sur des sites web https
  • Ce sont des Apps, qui donnent le sentiment d’être dans une application native, en faisant fonctionner des éléments clé comme le mode hors-ligne

« Au-delà d’un site web parfaitement responsive, les Progressive Web Apps correspondent à une définition plus complète »

Au-delà d’un site web parfaitement responsive, les Progressive Web Apps doivent correspondent à une définition plus complète validée en 2015 par Frances Berriman et Alex Russell, la PWA check-list. Ce dernier est ingénieur chez Google et son implication n’est pas un hasard, puisqu’elle correspond à la mise en pratique d’un credo de Google, le web gagne toujours à la fin.

Il existe trois avantages à développer un service à travers une Progressive Web App :

  • on développe une seule application au lieu d’une version web, une autre Android et une dernière iOS
  • on contourne les stores, aux processus chronophages, ce qui facilite la distribution et la mise à jour
  • sur Android, la gestion du cache est optimisée pour le mode hors-ligne, ce qui réduit la charge de travail comparée aux apps natives

Pour Google, les PWA sont déjà le présent du mobile

Pour un entrepreneur, ce sont des différences qui comptent. Google l’a bien compris et ce sont surtout eux, à travers Android, qui poussent pour les PWA. Pour cela, ils éliminent peu à peu les différences de capacités entre apps natives Android et accès à des PWA sur des appareils Android.

« Google élimine peu à peu les différences de capacités entre apps natives Android et accès à des PWA sur des appareils Android »

Concrètement, il s’agit de donner aux utilisateurs l’expérience d’une application native sans passer par un app store : icône installée sur l’écran d’accueil du smartphone renvoyant vers la homepage du site, conservation des metadata (icône, nom d’app, propriétés du site internet), absence de barre de navigation et d’onglets, mode hors-ligne sans limitations, notifications du centre de notifications Android et par vibrations de téléphone.

Sur Android, l’expérience est très concluante, l’installation est fluide et ne nécessite pas techniquement de passage par le store. Cette possibilité était cependant largement souhaitée pour des raisons de visibilité : elle est désormais ouverte aux développeurs depuis le 29 janvier de cette année.

Dans ce contexte de forte pression de l’écosystème Google, qu’en est-il d’Apple et du fonctionnement des PWA sur iOS ?

Où en est Apple (spoiler : pas très loin) ?

Depuis 2008 et l’apparition de l’AppStore, Apple impose aux développeurs le respect de guidelines très restrictives, pour garantir la qualité des applications de l’iPhone alors que la société n’a aucun regard sur les PWA. Accessoirement, le passage par le store permet aussi de monétiser les téléchargements. Mais les choses bougent tellement vite qu’Apple a dû faire un pas vers les PWA. En mars 2018, au lancement de iOS11.3, Apple a annoncé la prise en charge partielle des Service Workers et du Web App Manifest.

C’est ce mouvement qui a effrayé les iOS devs comme moi. Quand l’opportunité d’aller voir concrètement ce qui avait changé s’est présentée, je n’ai pas hésité. L’étude souhaitée par 123fleurs, un service de commande de fleurs en ligne, nous a fourni l’occasion de tester le concept.

Depuis 2007, on peut ajouter un site web à l’écran d’accueil de l’iPhone. A l’époque, ce n’était pas une PWA mais un simple raccourci. La nouveauté de 2018, c’est le sentiment d’être dans une app native : pas de barre de recherche, pas de changement d’onglet. En revanche, on perd toujours l’état de l’app entre chaque session, on perd toutes les données de navigation. Il n’y a pas de gestion des notifications sur iOS, ce qui s’est avéré être un gros problème pour 123fleurs car c’était un élément-clé pour prévenir le réseau des fleuristes de nouvelles commandes. Les clients étaient vraiment déçus et nous avons dû contourner les limites de la PWA sur iOS en envoyant des SMS d’alerte. La gestion du cache iOS a aussi un côté boîte noire, puisque les données au-delà de 50 Mo sont effacées sans prévenir. Idem si on utilise pas l’app pendant un certain temps, sans que cette limite temporelle ne soit documentée.

“Tout ce qui fonctionne aussi bien en PWA qu’en natif sur Android est dégradé sur iOS”

Les performances sont inférieures à celles d’applications natives. Enfin, on a pas accès aux fonctionnalités coeur du téléphone comme bluetooth, faceid, Touch ID, ARKit (réalité augmentée), le paiement in-app, le verrouillage de l’orientation. Toutes les technos récentes du framework iOS sont manquantes.

Depuis ce premier pas, il y a onze mois, Apple n’a rien annoncé de nouveau. Un site existe et affiche in progress, mais ne délivre pas d’infos. Nous vivons une période de flou.

Notre conclusion, c’est que tout ce qui fonctionne aussi bien qu’en natif sur Android est dégradé sur iOS. Uber en est un bon exemple : sa PWA est ultra-performante sur Android mais boucle à l’infini sur la page d’authentification sur Apple. Si on cherche à construire un site web de navigation, la PWA fait l’affaire. Pour le e-commerce, c’est hyper rentable, en particulier dans le monde Android. En revanche, plus on recherche une app performante, correspondant aux dernières évolutions technologiques, plus on va avoir besoin de développements natifs iOS (accès à la réalité augmentée, au machine learning, etc.).

Les PWA, un instrument puissant pour des projets à faible complexité technologique

L’orientation de Neoxia est de promouvoir des PWA lorsque la complexité technologique est faible et que le projet correspond à un site web amélioré. En revanche, on privilégiera des développements natifs lorsqu’il est nécessaire de profiter du plein potentiel des appareils mobiles.

“Les projets natifs seront moins nombreux mais plus ambitieux et plus puissants”

Cela nous pousse, en tant que développeurs spécialisés dans le mobile, à collaborer de plus en plus avec les services innovation des grandes entreprises, ou des startups qui ont des ambitions tech très poussées. Les projets natifs seront moins nombreux mais plus ambitieux et plus puissants. Je pense que les experts de mon métier ont encore du travail pour longtemps !

--

--

Nicolas Yanaï
neoxia
Writer for

I’m a digital art director convinced that Design is the 21 century game changer. UX-UI player @NeoxiaParis