La montée en puissance des applications hybrides

Robert Raiola's image
Robert Raiola le 30 Novembre, 2011

Nous avons annoncé aujourd’hui la disponibilité mondiale d’App Cloud, notre second produit phare. Pour tout savoir à ce sujet, rendez-vous ici. Nous avons choisi dans ce post de revenir sur son histoire.

Commençons par quelques assertions controversées :

  1. Les applications natives n’ont rien d’une mode. Elles commencent seulement à se démocratiser et c’est une bonne chose.
  2. HTML5 transforme en profondeur la manière dont les applications sont conçues, mais pas tout à fait comme le prédisaient ses plus ardents défenseurs. C’est également une bonne chose.
  3. Les applications et HTML5 représentent l’avenir de l’univers numérique. C’est impressionnant !
  4. Les applications sont un moyen, pas une fin en soi, il faut donc adopter une stratégie de cycle de vie.


Petit quiz
Pour vérifier la véracité de ces affirmations, commençons par nous poser la question suivante : Qu’ont en commun les applications ci-dessous ?
 

 

Réponse : ce sont toutes des applications hybrides développées en HTML5 multi plates-formes, dans un conteneur natif. Aucune n’a été programmée de zéro dans un langage spécifique à la plate-forme, comme Objective-C ou Java. Et alors que les applis Web 100 % HTML5 ne peuvent figurer sur les places de marché comme l’App Store d’iTunes ou l’Android Market de Google, les applications hybrides le peuvent grâce au fameux conteneur natif, qui leur donne accès aux fonctionnalités natives du mobile hors du navigateur, à savoir appareil-photo, microphone, contacts ou encore système de notifications.

La nouveauté se transforme en tendance
En 2007, Facebook créait une application 100 % native pour l’iPhone. Mais il a fallu attendre octobre 2011 pour que sorte une version pour iPad, ainsi qu’une seconde version pour iPhone et une nouvelle version pour Android. Toutes sont basées sur cette nouvelle approche d’application hybride Web/native, essentiellement développée en HTML5.

Alors, pourquoi choisir cette voie ? David Fetterman, directeur technique mobile de Facebook, l’a expliqué brièvement à l’occasion de son intervention à la conférence F8 le mois dernier.

« Tous nos développeurs sont bons en HTML. Seuls quelques-uns sont très bons en Objective-C et Android. A certains égards, nous utilisons les mêmes compétences pour les développements Web et pour les applications client. »

Il est intéressant de constater que Facebook, société aux ressources quasi illimitées, change sa stratégie applicative simplement parce que les compétences en développement d’applications natives se font rares. Si Facebook ne trouve pas suffisamment de développeurs spécialistes d’Objective-C et de Java, comment n’importe quelle autre société aux ressources inférieures le pourrait-elle ?

Netflix a suivi le même chemin, en optant pour le développement en HTML5 de l'interface utilisateur de ses applications natives il y a plus d'un an. Ils ont commercialisé des applications hybrides en HTML5 pour de nombreuses plates-formes de terminaux mobiles, des smart TVs, des consoles de jeux et d’autres plates-formes grand public. Ils assurent également la promotion de cette nouvelle approche avec beaucoup de conviction, à l’occasion de conférences et par la publication de documents détaillés qui décrivent la théorie et la mise en œuvre de leur approche ainsi que les problèmes qu’elle permet de résoudre.

Microsoft adopte actuellement la même approche hybride Web/native. La société a récemment lancé les nouvelles versions de son application Bing for Mobile développée en HTML5 en conteneur natif. Elle a également suscité une vive anxiété au sein de sa communauté de développeurs en annonçant que Windows 8 supporterait la création d’applis natives en HTML5. On ne sait pas encore très bien comment le HTML5 apparaîtra dans l’environnement Windows Phone, mais il faudra apparemment compter sur sa présence (bonne ou mauvaise nouvelle selon que vous êtes ou non un inconditionnel de XAML).

Sur la route du profit
Plusieurs acquisitions récentes illustrent l’importance stratégique de l’approche des applications hybrides Web/natives. Rien n’est en effet plus convaincant qu’un chèque orné de plusieurs zéros.

Nos amis d’Adobe ont récemment racheté Nitobi, les créateurs de PhoneGap. Adobe se détourne de Flash dans le navigateur mobile pour recentrer sa stratégie sur le nouvel univers centré sur l’applicatif. PhoneGap figure parmi les précurseurs des applications hybrides, autorisant les développeurs Web à combiner leur code HTML5 avec des conteneurs natifs. En acquérant PhoneGap, Adobe espère probablement renforcer naturellement son positionnement de principal fournisseur de technologies au cours de cette nouvelle décennie.

Pourtant, Adobe n’avait pas besoin de ce rachat pour s’équiper et concevoir des outils pour de simples sites Web en HTML5 dans le navigateur. La société en est parfaitement capable seule. Mais il lui manquait l’élément « conteneur natif » indispensable pour les applications hybrides Web. PhoneGap comble ce vide en faisant le lien entre HTML5 et applications natives. Adobe s’est donc acheté un crédit supplémentaire pour aborder la nouvelle ère du multimédia numérique et a visé juste.

Autre illustration de l’importance de cette nouvelle approche : l’acquisition récente des talents de Strobe par Facebook. Strobe est l’entreprise fondée pour exploiter le Spoutcore de Charles Jolley, un framework JavaScript Open Source permettant de créer des applications Web tactiles compatibles avec un conteneur natif pour former une application hybride Web/native. Avant l’acquisition, Strobe avait commencé à développer des services en Cloud commerciaux autour du framework libre.

Maintenant qu’ils ont été absorbés par Facebook, le destin de la technologie centrale et de ces services Cloud est incertain. Mais une chose est sûre : Facebook impose à Charles et à toute l'équipe de concrétiser sa stratégie applicative, qui repose essentiellement sur les expériences hybrides Web et natives.

Un tournant inattendu dans l’évolution vers l’App Store
Ce qu’il y a d’étonnant avec cette nouvelle approche hybride Web/native, c’est que l’économie applicative n’était pas censée suivre cette voie. La vision originale d’Apple à propos des applications a tracé une nette démarcation entre les applis Web et les applis natives, motivée par la conviction que le code natif offrirait les meilleures expériences pour l’utilisateur final et les meilleures opportunités de monétisation.

Il est important de se rappeler que lorsque le tout premier iPhone a été lancé, l’App Store iTunes n’existait pas encore et les signets des sites Web étaient le seul moyen d'étendre le dispositif. Rappelons également que ce processus était limité, l’approche centrée sur le navigateur ayant été largement rejetée car perçue comme insuffisante. La communauté de développeurs Apple s’est d’ailleurs montrée extrêmement virulente en exigeant des outils pour construire des applications natives.

En Mars 2008, quatorze mois après la sortie du premier l'iPhone sur le marché, Apple a introduit son App SDK et l’App Store iTunes. Le reste appartient à l’histoire.

Compte tenu de ce succès incroyable et de l'élan qu’il a engendré, le concept de l’application native ne va pas disparaître de sitôt. Cependant, comme le concept a vieilli, quelques fissures commencent à faire leur apparition.

Malheureusement pour tout le monde, le développement d’applications natives pour une plate-forme donnée s’avère relativement coûteux. Les échelles des salaires montrent que les développeurs d’applis natives sont payés 28% de plus en moyenne que les développeurs Web, d’après les analyses des offres d’emplois dans la rubrique technologique du site Indeed.com. C’est ce qui explique en partie l’engouement de Facebook pour les applications hybrides.
 

 

Non seulement les développeurs d’applications natives coûtent plus cher et sont plus difficiles à trouver, mais ils sont aussi ultra spécialisés. Vous ne pouvez pas réaffecter immédiatement une équipe de développeurs iOS qui viennent de déployer un projet d’application pour iPad à un projet pour Android. Leurs compétences sont spécifiques à telle ou telle plate-forme.

C’est un gros problème parce que les plate-formes de smartphone, tablettes, et autres produits électronique grand public prolifèrent à grande vitesse. Actuellement les plate-formes de référence sont: iOS, Android, Blackberry, Windows Phone, Nokia QT, Samsung Smart TV, LG Smart TV, Panasonic Viera Connect, et Sony PlayStation Suite. Elles peuvent aller et venir, mais la plate-forme qui les uniformisera est encore loin d’émerger. Sur le marché de la mobilité, c’est encore et toujours la fragmentation qui règne en maître.

Imaginez qu’un responsable d’une équipe Web doive constituer des équipes de développeurs distinctes pour IE, Chrome et Firefox. Malheureusement, c’est ce à quoi ressemble l’actuel paysage aux yeux des décideurs des médias numériques et responsables marketing qui payent les factures pour la création d’applications. Leurs projets en attente concernent des plates-formes propriétaires toujours plus nombreuses et fragmentées pour des smartphones, des tablettes, des smart TVs, des consoles de jeu, etc. Rien de bien réjouissant.

HTML5 a bien le vent en poupe
Nombreux parmi ceux qui étudient la situation disent : « Pas de panique ! On a déjà vécu ça ! Le Web ouvert va nous sauver ! » Ils s’imaginent que les applis natives sont une passade, une sorte de bis repetita dont on pourrait se passer comme celui du temps des encyclopédies sur CD-ROM, de Compuserve et de Microsoft Blackbird. Ils prédisent à qui veut bien les entendre « la fin des applications natives » et la renaissance du navigateur où les applications en pur HTML5 prendraient le pas sur les pauvres applications natives moribondes.

Pardonnons-leur. On peut comprendre qu’ils croient à leur histoire. On a déjà vécu ça ! Et le HTML5 est effectivement impressionnant. Regardez cette courbe des offres d’emploi pour des compétences en HTML5 dans la rubrique technologie du site Indeed.com aux Etats-Unis.

 appearances of HTML5 in technology job listings

Le HTML5 a donc clairement le vent en poupe. Par définition, le HTML5 est l’avenir du Web et il serait fou de ne pas y croire. Mais la réussite du HTML5 ne signifie pas pour autant l’échec des applis, ni que tout peut ou doit passer par le HTML5.

Des développeurs dans l’impasse
Pour l’heure, le HTML5 est décrit comme un instrument de torture pour les développeurs, forcés d’en repousser sans cesse les limites, notamment dans le domaine des jeux vidéo, parce que la technologie est encore immature. Et même pour l’utilisation de contenu plus simples, le HTML5 ne peut pas offrir toutes les fonctionnalités d’une application native, comme l’illustre le comparatif suivant.
 

 

Un débat absurde fait rage sur le Web depuis plusieurs années, qui oppose les défenseurs des applications natives à ceux de l’Open Web. Vous trouverez un aperçu des discussions récentes ici, ainsi qu’en cliquant sur ce lien. Comme je l’ai déjà expliqué sur ce blog, ce raisonnement n’a pas de sens car 1) les consommateurs passent autant de temps à utiliser les navigateurs Web que les applications natives et que 2) le Web mobile et les applications natives sont adaptés à des étapes très différentes mais complémentaires de la relation client : le Web mobile pour les recherches et la visibilité ; les applications natives pour les programmes de fidélité et de récompense. En fin de compte, l’un ne va pas sans l’autre.

Gardons également à l’esprit que, quels que soient les desiderata des uns et des autres, ce sont les éditeurs des grandes plates-formes (Apple, Google, Microsoft, Nokia, Sony, etc.) qui sont aux commandes. Pour l’heure, ils limitent les possibilités d’applications Web HTML5 dans le navigateur, pour des considérations techniques (principalement de sécurité) et stratégiques.

Des normes viendront résoudre ces problèmes techniques/sécuritaires. Mais il faudra encore patienter des années avant que les bureaucrates du W3C les instaurent, et plus encore avant que ces nouvelles normes s’appliquent aux navigateurs des terminaux mobiles et grand public.

Malheureusement, les motifs stratégiques restreignant la technologie HTML5 sont structurels et parfaitement calculés. Les actionnaires poussent les éditeurs de plates-formes à privilégier les applications natives pour leur potentiel financier. Il est donc impensable que les éditeurs agissent contre leurs propres intérêts en acceptant d’étendre leurs plates-formes à l’Open Web. C’est un pari perdu d’avance. Si les éditeurs de plates-formes ouvrent leur écosystème aux applications hybrides, c’est uniquement parce qu’ils ont encore les moyens de les contrôler. Et il est peu probable que ça change.

Et les performances ?
Dans certaines sphères informatiques, le bruit court que les applications utilisant une vue navigateur en HTML5 insérées dans un conteneur natif ne peuvent rivaliser avec les performances d’une application 100 % native. Il n’en est rien ! Le simple fait que les plus grands de l’industrie adoptent des applications hybrides Web/natives devrait suffire à convaincre du contraire. Si la technologie HTML5 ne convient pas à tous les scénarios et types d’applications (cf. l’instrument de torture), de nombreuses applications de contenu HTML5 offrent des performances admirables à condition d’être correctement optimisées et assorties d’API natives.

Nous sommes les 99 %
Les techniques de développement d’applications hybrides Web/natives ont certes séduit les géants de l’industrie, comme Facebook, LinkedIn, Microsoft et Netflix. Mais 1 % seulement des éditeurs disposent des ressources nécessaires pour explorer de nouvelles pistes et tirer leur épingle du jeu. Comment font les 99 % restants pour développer des applications pour tous les types de plates-formes ?

La plupart tâtonnent, créant une première version pour un terminal particulier (ex. l’iPhone) et une plate-forme donnée (ex. iOS). Les clients que je rencontre s’interrogent sur la prochaine étape. Comment étendre leurs applications aux smartphones sous Android ? aux tablettes ? au Kindle Fire sous Android ? à la Xbox ? à la PS3 ? ou encore aux Smart TV de Samsung ? et pourquoi pas à la Google TV ?

Le défi est de taille, mais il en vaut certainement la peine compte tenu du succès actuel ou annoncé de ces plates-formes. Car ces appareils sont ceux qui captent le regard du public. Et les investissements publicitaires. Toute entreprise un peu sérieuse quant à sa stratégie numérique se doit d’y être présente. La question est de savoir comment opérer la transition en douceur.

La création d’applications hybrides Web/natives s’impose comme une partie de la solution. Cette approche transpose l’efficacité et la flexibilité du développement Web aux applications, avec des résultats forts prometteurs. Mais concevoir de jolies applications HTML5 ne suffit pas, loin s’en faut.

Les applis sont un moyen, pas une fin en soi
Nombreuses sont les entreprises qui abordent le développement d’une application comme un projet isolé, ponctuel et expérimental, souvent confié à des spécialistes externes. Leur priorité va à l’interface utilisateur, négligeant quelque peu l’administration back-end et l’optimisation des contenus. Le déroulement des opérations s’avère nébuleux pour les utilisateurs non-techniciens et les créateurs de contenus. Ces entreprises omettent de planifier les besoins analytiques et les stratégies de monétisation en amont. Elles effectuent peu ou pas de tests d’utilisabilité, ni même de tests de version bêta, en conditions réelles. La maintenance, la gestion des versions et la stratégie de mise au rebut sont inexistantes.

Peu à même de répondre durablement aux besoins, cette approche est souvent vouée à l’échec. Il est grand temps que l’on considère les applications comme des biens numériques précieux qui méritent des efforts de planification et des investissements. Les applications ne sont pas une fin en soi. Pour qu’elles portent leurs fruits, de nombreux intervenants, et pas uniquement les développeurs, doivent s’impliquer dans leur gestion, tout au long de leur cycle de vie. Même les applications « jetables », dédiées à une campagne spécifique, doivent être gérées activement pour être efficaces, aussi courte soit leur durée de vie.

Les designers et architectes ont donc tout intérêt à concevoir des modèles et des cadres qui simplifieront et accéléreront la création des futures applications. C’est le cas pour les sites Web. Pourquoi en serait-il autrement pour les applications ? Quant aux professionnels en charge des applications, ils gagneraient à s’inspirer des techniques d’optimisation de données et de mise en cache appliquées aux sites Web pour optimiser leurs sources de contenus de back-end et améliorer la performance des applications sur les réseaux mobiles ayant un temps de latence élevé.

Les éditeurs et équipes en charge des applications doivent planifier leurs processus d’analyse, de reporting, ainsi que de ciblage et de diffusion des annonces publicitaires exactement comme le font les créateurs de sites Web. Il faut que les tests fassent partie intégrante des activités de développement. Des méthodes efficaces de déploiement des nouvelles versions, de perfectionnement de la présentation des contenus et de personnalisation des campagnes publicitaires s’imposent également à tous les membres du projet.

Le rôle des développeurs Web
La création d’applications doit maintenant être gérée de manière proactive pour offrir des bénéfices durables. Difficile toutefois de blâmer les pionniers qui empruntent des raccourcis. Car le développement d’applications basées sur des technologies et plates-formes émergentes exige des compromis. Ce type de projet est d’ailleurs rarement confié aux développeurs Web internes mais souvent externalisé. Impossible alors d’observer les règles, procédures et responsabilités habituelles.

Mais à l’heure où les applications hybrides s’imposent comme le nouveau standard de facto, les développeurs Web sont en passe de reprendre le contrôle des applications. Les designers, les architectes, les producteurs, les développeurs front-end et back-end, les administrateurs de bases de données et de systèmes et les chefs de projet qui conçoivent et gèrent les sites Web traditionnels reviennent sur le devant de la scène. Leurs compétences et leurs processus sont extrêmement utiles dans le nouveau monde des applications hybrides.

La réponse de Brightcove
Chez Brightcove, cela fait plusieurs années que nous nous intéressons à l’ensemble des tendances évoquées ici. Et notre réaction ne s’est pas fait attendre. Nous avons adapté notre offre Video Cloud pour nous assurer que les vidéos de nos clients jouent un rôle prééminent sur les plates-formes et terminaux émergents, en environnements HTML5 et natifs. Aujourd’hui, nous annonçons également la disponibilité générale de notre nouvelle plate-forme d’application de contenu App Cloud, qui a été conçue pour couvrir tout le cycle de vie des applications de contenus hybrides.

App Cloud combine conteneurs natifs et technologie HTML5 pour accélérer et simplifier le développement d’applications. Ainsi, même les non-techniciens peuvent créer des applications en mode graphique, sans écrire une seule ligne de code, puis les modifier après leur installation, sans même devoir procéder à une mise à jour. Une fois l’application publiée, App Cloud gère les images et les flux de contenu en continu et les optimise pour les plates-formes mobiles, afin d’offrir aux utilisateurs finaux des performances irréprochables. La plate-forme intègre en outre d’emblée des outils d’analyse et de monétisation. App Cloud est ainsi une plate-forme d’application exhaustive, qui confère aux applications natives tous les avantages du Web.

L’application AMC Mobile, évoquée au début de ce post, est exécutée sur App Cloud et compatible avec iPhone, ainsi qu’avec les smartphones et tablettes sous Android. Nous espérons que vous l’apprécierez.

Pour en savoir plus sur App Cloud, je vous propose de visionner cette vidéo. Cliquez ici pour créer gratuitement votre compte App Cloud.

Publier un nouveau commentaire

Le contenu de ce champ reste anonyme et ne sera pas affiché à autrui.
0

Remarques