Mobilité : l'âge de raison

le 10/09/2012 par Olivier Martin
Tags: Software Engineering

Après quatre années folles d'innovations, de nouveautés technologiques et de tsunamis dans le paysage des sociétés high tech spécialisées dans les solutions mobiles, levons le stylo quelques minutes pour mesurer le chemin parcouru.

Faire une app mobile n'est plus innovant

Ces dernières années le mobile a fourni, principalement aux directions marketing, un terrain de jeu formidable pour tester de nouveaux services, réinventer les processus existants voire s'offrir une caution d'innovation technologique uniquement par la présence sur un Store. Et c'est vrai, il y a encore peu, offrir à ses usagers un service de géolocalisation était considéré comme une réelle innovation informatique.

C'est de moins en moins le cas aujourd'hui. Les projets reviennent de plus en plus dans le giron des DSI et avoir son offre de services présente sur mobile fait partie du package standard que l'on offre à ses clients. C'est devenu une commodité plus qu'une innovation technique. Il faut donc l'aborder comme un investissement pérenne : ne pas faire l'impasse sur l'industrialisation et la qualité des développements.

Un marché qui se rationnalise

Faisons la nécrologie des plateformes, et pas des moindres, qui ont disparu en l'espace de deux ans : WindowsPhone 6.x & 7.x, Symbian, WebOS, MeeGo ou encore Bada. BlackBerry continue sa descente aux enfers ; il est entendu que cette plateforme n'a pas réussi à créer un véritable écosystème (terminaux, développeurs et apps) qui est la clé de voute du succès.

Il ne reste réellement plus que les deux géants que l'on ne présente plus et qui font l'actualité : - Google avec Android, leader en terme de part de marché et de ventes sur smartphones - Apple avec iOS, leader en terme d'usage, de monétisation et de parts de marché sur tablettes

Quant aux autres, il leur reste les miettes et la bataille pour la place de challenger est toujours ouverte. Microsoft a abandonné ses deux principales plateformes mobile malgré tous ses investissements, au risque de froisser son nouveau partenaire Nokia. WP 7 n'aura pas su trouver l'adhésion du grand public et tout le chemin d'évangélisation est à refaire pour WP 8.

En 2011 iOS et Android combinés représentaient 70% de part de marché, aujourd'hui c'est plus de 80% et les deux systèmes continuent à croitre. Il est clair que la pomme et le robot vert vont continuer à occuper seuls le paysage des terminaux mobiles à court et moyen terme.

Je sens monter la vague (du HTML 5)

Une idée revient souvent dans le mobile : les applications natives coûtent trop cher et ce n'est qu'une question de temps avant qu'elles ne soient toutes réécrites exclusivement au moyen de langages du Web qui permettront de tout unifier. One language to rule them all - en quelque sorte. C'est donc le pari et les espoirs fondés autour d'HTML5, qui permettra en plus de s'affranchir de la lourdeur des déploiements d'applications natives.

Alors est-ce qu'on y est ? Non !

Certes cette technologie fait de plus en plus partie de nos applications mobiles mais ce n'est pas une alternative mature face aux applications natives. En faire le choix unique aurait pour conséquence de se passer de sérieux atouts. Citons par exemple la présence sur les Stores, les notifications Push ou encore l'accès à certaines fonctionnalités avancées des terminaux.

Prenons le cas assez révélateur de Facebook, qui vient de réécrire complètement son application iOS en natif après avoir tenté de rationaliser ses développements mobiles en HTML 5. Rétrospectivement cette technologie a été un vrai accélérateur dans une stratégie d'expansion, de conquête du marché et pour prototyper rapidement. Seulement voilà, l'application était la cible des critiques pour son manque de réactivité et son ergonomie un peu en berne face une application Google+, native elle.

Finalement leur compromis est assez intéressant : - les fonctionnalités coeur sont rendues en natif avec un gros effort sur les performances d'affichage - les nouvelles fonctionnalités du site, non encore prises en charge par l'app, sont rendues avec une vue Web

De cette manière Facebook fait le choix de l'hybride en utilisant finement les deux technologies, pour ce qu'elles savent le mieux faire : de la performance d'un coté et de la flexibilité de l'autre. Pour réaliser ce tradeoff, ils acceptent de maintenir et de spécialiser du code spécifique par plateforme et c'est leur nouvelle approche :

The development of this new app signals a shift in how Facebook is building mobile products, with a focus on digging deep into individual platforms.

[Source : Under the hood: Rebuilding Facebook for iOS].

Alors ma stratégie mobile ?

Entre supporter toutes les plateformes, même les plus exotiques, et rationnaliser au maximum avec un seul code source pour tous les terminaux mobiles, une troisième voie fait son chemin. Il s'agit de faire le choix du natif sur les deux plateformes principales tout en mutualisant certaines parties en HTML 5, par exemple un formulaire ou du contenu dynamique (FAQ, manuel, news). De cette manière l'accent est mis avant tout sur l'expérience utilisateur tout en limitant les coûts d'implémentation.

Cette approche permet aussi de régler le problème de l’ergonomie adaptée à chaque type de terminal. Un site web adapté au mobile, un site web mobile donc, proposera forcément la même ergonomie quel que soit le terminal cible (poste de travail, smartphone, tablette, TV connecté, etc.) ce qui est souvent décrié par les utilisateurs qui attendent maintenant que l’ergonomie soit adaptée à leur smartphone ou leur tablette. Une application hybride encapsule des composants web, cependant, l’ergonomie de l’application peut être complètement adaptée au terminal cible.

La difficulté sur le long terme, outre l'inflation de la complexité technique due au mix de ces technologies, va se situer sur les compétences. Le développeur mobile idéal aujourd'hui est une personne sachant combiner et utiliser le meilleur de l'Objective-C, Java, HTML, JavaScript et CSS. On dirait que le fameux mouton à cinq pattes en aurait bien besoin d'une supplémentaire.

La mobilité arrive à un stade beaucoup plus mature dans son offre et dans ses pratiques, ce qui prépare la voie à la prochaine révolution plus profonde dans nos projets informatiques : l'approche "Mobile First", c'est-à-dire penser d'abord pour le mobile avant de décliner pour les autres écrans plus larges.