Firefox 4, Google Chrome et l’évolution du Web par Chris Blizzard de Mozilla
Que les fans de la première heure se rassurent : la version 4 du célèbre navigateur au panda roux – dont la sortie devrait intervenir d’ici la fin de l’année – promet de recoller au peloton !
Au temps pour ceux qui avaient vendu sa peau un peu trop rapidement : le panda[1] nouveau met l’accent sur les performances, à commencer par un nouveau moteur JavaScript qui, une fois optimisé, pourrait même lui permettre de prendre la tête de la course si l’on en croit Chris Blizzard (Director of Web Platform chez Mozilla[2]), dont nous vous proposons ici la traduction de l’interview qu’il a donnée récemment au site derStandard.at (une fois n’est pas coutume, cette traduction a été complétée de références à l’actualité récente avec l’aide de Paul Rouget, Technology Evangelist chez Mozilla).
S’il est difficile de ne pas céder à la mode du benchmarking, on peut toutefois s’interroger sur ce que l’on attend réellement d’un navigateur.
Revenons un instant en arrière : l’irruption de Firefox a permis de réveiller le Web en le libérant de l’hégémonie d’Internet Explorer qui, après avoir éradiqué à peu près toute concurrence sur le marché des navigateurs, n’a plus connu de développement pendant six ans (soit le temps qui sépare la version 6 de la version 7 du navigateur de Microsoft, qui avait même dissout l’équipe de développement dans cet intervalle). Firefox a réussi à propulser le Web vers de nouveaux horizons balisés de standards ouverts propices à l’innovation. Tant et si bien que de redoutables concurrents sont apparus comme Safari d’Apple et surtout Chrome de Google (voir à ce billet du Framablog) et que Microsoft est en train de mettre les bouchées doubles avec son IE 9 pour rattraper son retard.
Faut-il en conclure que Firefox, ayant accompli sa mission, est devenu inutile ?
Il faut en effet reconnaître que le Web ne s’est jamais aussi bien porté qu’aujourd’hui : les concepteurs de navigateurs se battent dorénavant tous pour implémenter les dernières versions des standards ouverts qui sont la base du Web (HTML5, CSS3) quand ils n’en sont tout simplement pas à l’origine. Et pour cela, nous pouvons tous remercier la fondation Mozilla à l’origine de Firefox.
Pourtant, le Web ne se limite pas à des applications riches et jolies devant s’exécuter le plus rapidement possible.
Les grands acteurs du Web, Mozilla mis à part, tirent leurs revenus de l’exploitation de vos données personnelles. La protection de la vie privée devient aujourd’hui un enjeu majeur pour l’utilisateur (qui doit encore en prendre conscience). Mozilla s’apprête à proposer des solutions novatrices dans ce domaine[3]. Qui d’autre que Mozilla, fondation à but non lucratif, a intérêt à rendre aux utilisateurs le contrôle de leurs données personnelles ? Personne. Et ce n’est pas parce que Apple ou Google (et peut-être un jour Facebook) sort un navigateur performant – fût-il libre (Chromium est la version libre de Google Chrome) – que l’utilisateur jouira des mêmes libertés que l’utilisateur de Firefox, navigateur libre développé par une fondation à but non lucratif.
Firefox 4 : Une génération d’avance en termes de vitesse
Firefox 4: One generation ahead of everyone else speedwise
Andreas Proschofsky – 19 août 2010 – derStandard.at
(Traduction Framalang : Don Rico, Siltaar, Goofy et Antistress)
Chris Blizzard de Mozilla nous parle de la concurrence de Google Chrome, de l’évolution du Web comme plateforme et des attentes que suscite le format WebM.
Ces dernières années Firefox a joué le rôle enviable de l’étoile montante dans le monde des navigateurs. Aujourd’hui, non seulement Google Chrome semble lui avoir volé la vedette mais il vient même lui tailler des croupières. Au cours du dernier GUADEC, Andreas Proschofsky a eu l’occasion de côtoyer Chris Blizzard, « Directeur de plateforme Web » chez Mozilla, et il a réalisé l’interview que vous allez lire, évoquant l’état actuel du marché des navigateurs, les progrès du Web comme plateforme et les améliorations qui arrivent avec Firefox 4+.
derStandard.at : Quand nous avons discuté l’année dernière, vous avez noté que, malgré la notoriété grandissante de Google Chrome, la plupart des développeurs présents dans les conférences techniques – comme le GUADEC – utilisent encore Firefox. Si je jette un coup d’œil autour de moi cette année, les choses semblent avoir considérablement changé : bon nombre de ces utilisateurs avant-gardistes semblent être passés à Chrome / Chromium. Est-ce que vous avez un problème sur ce créneau d’utilisateurs spécifique – mais influent ?
Chris Blizzard : En fait je pense que beaucoup de gens utilisent les deux maintenant, mais c’est vrai que c’est intéressant à voir. De mon point de vue de développeur Web je pense toujours que les outils de Firefox sont de loin supérieurs à ceux des autres.
Il est intéressant de noter que nous n’avons pas vu de changements significatifs dans les statistiques utilisateurs, même si Chrome marque des points importants sur ce segment. Il faut préciser que tous ces chiffres que l’on rapporte sont en réalité des statistiques d’usage et non du nombre d’utilisateurs, si bien que cette avant-garde – qui est grosse utilisatrice du Web – influence les statistiques plus que d’autres, ce qui peut faire croire que Chrome est utilisé par davantage de gens qu’en réalité. Nous avons connu le même effet dans les premiers temps de Firefox, à l’époque nous n’en avions pas conscience faute d’outils adéquats pour le mesurer.
Nous avons aussi effectué quelques recherches et découvert qu’un tas de gens semblent choisir leur navigateur suivant des fonctionnalités particulières. Par exemple beaucoup d’utilisateurs préfèrent retrouver leurs sites récemment visités dès l’ouverture de leur navigateur, donc ils utilisent Chrome. S’ils préfèrent démarrer avec une page vierge, ils utilisent plutôt Firefox. Je pense donc que ce que l’on commence à voir, c’est des gens différents qui veulent faire des choses différentes, et qui vont choisir leur navigateur selon leurs préférences. Et nous n’en sommes qu’au début.
Nous savons que nous ne pourrons pas satisfaire les désirs de tous et ce n’est d’ailleurs pas le but de notre organisation. Nous voulons faire en sorte que le Web devienne une plateforme et nous avons plutôt bien réussi sur ce point.
Google se lance maintenant dans un cycle de développement visant à offrir une nouvelle mise à jour stable toutes les six semaines, pour essayer de proposer des innovations plus rapidement aux utilisateurs. Mozilla, de son côté, publie au mieux une nouvelle version par an : cela n’est-il pas handicapant d’un point de vue marketing ?
Cela dépend du rythme que vous voulez adopter. Les gens de Chrome ont une approche un petit peu différente de la nôtre. Il va être intéressant de voir si d’autres utilisateurs que les avant-gardistes seront d’accord pour voir leur navigateur changer tous les mois et demi. Nous préférons prendre davantage de temps pour préparer les gens à des changements d’interface plus importants.
Pour autant nous ne modifions pas toujours le numéro de version pour les gros changements. Citons par exemple l’isolation des plugins que nous avons récemment ajoutée à la série 3.6.x, qui résulte d’un énorme travail et qui a grandement amélioré l’expérience des utilisateurs de Firefox.
À vrai dire, je suis quelque peu sceptique à l’idée d’un cycle de six semaines. Comment peut-on vraiment innover en un laps de temps si court ? Accélérer la cadence est néanmoins dans nos projets, il faut juste que nous trouvions celle qui nous convient.
Un des avantages d’un cycle de publication rapide, c’est que Google peut diffuser très vite des fonctionnalités comme le futur web-store de Chrome. Aimeriez-vous aussi proposer une plateforme de téléchargement d’applications Web chez Mozilla ?
En ce qui me concerne, je pense qu’un app-store pour le Web est une idée intéressante, car en gros cela rend les applications Web plus accessibles et fournit un modèle de monétisation. Mais pour bien faire, il faut tenir compte de nombreux autres paramètres, et c’est là-dessus que nous allons d’abord nous concentrer.
Quels éléments manque-t-il encore pour concevoir un bon web-store ?
Les performances Javascript sont très importantes, mais nous touchons au but, car nous sommes en passe d’obtenir les mêmes performances que les applications exécutées nativement. Vient ensuite le webGL pour les applications en 3D, et nous devons aussi régler la question du stockage de données hors-connexion qui est loin d’être abouti pour le moment. Il faut aussi accorder une grande importance à la sécurité, question sur laquelle nous sommes justement en train de travailler. Par exemple, grâce à la fonctionnalité ForceHTTPS, un site Web pourra dire à un navigateur de ne communiquer avec lui que par données chiffrées, ce qui préviendra certains types d’attaques. Nous nous penchons aussi sur la politique de sécurité des contenus, ce qui sera très utile pour lutter contre une catégorie entière d’attaques type cross-site scripting (NdT : citons par exemple la fonctionnalité X-FRAME récemment introduite contre le clickjacking).
Dans les tests de performances Javascript récents, Firefox semble avoir dégringolé dans le bas du classement, et se place même derrière Internet Explorer 9. N’arrivez-vous plus à suivre ?
Firefox 4 apportera de nombreuses améliorations dans ce domaine-là aussi, mais elles ne sont pas encore intégrées à nos versions de développement. Nous avons constaté que, lorsque notre Tracing-Engine (NdT : moteur basé sur la technologie du tracé) est utilisé, nous sommes plus rapides que tous les autres. Nous ne sommes à la traîne que dans les cas où cette technologie ne peut être exploitée. Nous travaillons donc à améliorer les performances de base de notre moteur JavaScript, qui, combinées à l’optimisation JIT Tracing , nous donneront une génération d’avance sur tout le monde (NdT : Jägermonkey, le résultat de ce travail, vient d’être intégré à la version de développement de Firefox 4).
La vérité c’est que la marge d’amélioration est encore énorme. La génération actuelle des moteurs Javascript a atteint un palier : en pourcentage, les différences que nous constatons entre les différents navigateurs sont infimes. En outre, les tests de performance ne sont plus d’une grande utilité, car, pour la plupart, ces chiffres ne sont plus influencés par les performances Javascript réelles. Voici un exemple des conséquences négatives des tests de performance : nous avons dû fournir des efforts particuliers sur l’optimisation du calcul de décalage horaire car cela influe négativement certains tests de performance, mais ça n’améliore pas réellement les performances Javascript. Sunspider est affecté par ces problèmes et V8 contient aussi du code bancal, il est donc difficile de trouver de bons tests de performance (NdT : Mozilla vient de lancer Kraken, un test censé mesurer les performances JavaScript en situation réelle).
Firefox 4 va utiliser l’accélération matérielle grâce à Direct2D et à DirectWrite sous Windows. Des fonctionnalités similaires sont-elles prévues pour Linux et Mac OS X ?
Dans la limite des outils qui sont disponibles, oui. Nous essayons de procurer aux utilisateurs la meilleure expérience possible sur chaque plateforme. Pour Windows Vista et 7 nous constatons d’immenses améliorations lorsque le navigateur doit réaliser des tâches graphiques intensives. Sur OS X, par exemple, nous prenons en charge l’OpenGL pour la composition d’images, et nous faisons de même sous Linux. Mais en général les API dont nous disposons sous Windows sont meilleures et plus riches que sur les autres plateformes. Sous Linux, Cairo et Pixman étaient censées être rapides, mais hélas l’infrastructure sur lesquelles elles reposent n’a jamais vraiment atteint la vélocité désirée. Sur OS X, Firefox est assez rapide, mais pour l’instant Direct2D confère l’avantage à la version Windows (NdT : plus d’informations sur cet article de Paul Rouget).
L’isolation des plugins devait n’être que la première étape d’un Firefox multi-processus, avec un processus séparé pour chaque onglet. C’est un des gros morceaux du cahier des charges de Firefox 4. C’est toujours prévu ?
Bien sûr, mais pas pour Firefox 4. Ce sera sans doute disponible pour la version mobile avant la version desktop. C’est intéressant de constater que c’est plus facile sur cette plateforme.
Il y a peu, vous avez endossé le rôle de « Directeur de plateforme Web » chez Mozilla. En quoi cela affecte-il vos responsabilités quotidiennes ?
Auparavant, je me chargeais essentiellement de diriger les groupes d’évangélisation et de communication, mais j’ai fini par travailler de plus en plus sur les questions de plateforme Web – réfléchir à l’avenir du Web, discuter régulièrement avec les autres concepteurs de navigateurs. Tout cela a pris une telle importance que j’ai décidé de m’y consacrer à plein temps.
Par exemple, je viens de participer à une réunion de l’IETF, où nous avons eu des discussions très riches sur le http, les websockets, et aussi sur les codecs. Ils sont en train de mettre au point un codec audio de nouvelle génération pour les communications en temps réel et s’appuient sur l’IETF pour les spécifications. En gros, c’est une combinaison de techniques existantes, et l’accent est mis sur une latence très basse, un domaine où le Vorbis ou le MP3 sont mauvais. Ce travail s’effectue en collaboration avec Skype.
Une des grosses annonces de ces derniers mois concernait la création du WebM comme nouveau format vidéo ouvert basé sur le VP8 et Vorbis. Pensez-vous que ses chances de réussites soient meilleures que celles de Theora ?
Oui, pour des raisons de qualité. Quelques explications : il est bon de savoir que lorsqu’on utilise le H.264, on doit en gros choisir un des trois profils que propose ce codec. En général, les sites vidéos doivent offrir la version basique car c’est la seule prise en compte par l’iPhone, notamment dans ses anciennes versions qui sont utilisées par des dizaines de millions de personnes. Donc, si l’on compare les formats vidéo, il faut comparer le VP8 au H.264 « basique », et ce n’est pas qu’une manœuvre réthorique, c’est la réalité pour tous les services. J’ai discuté avec les gens de YouTube, par exemple : ils ont essayé d’utiliser un autre profil du H.264, mais ils ont dû revenir au « basique » à cause du manque de prise en charge. Sur cette base, la question de la qualité n’a plus lieu d’être, et le VP8 est tout à fait compétitif.
Si l’on parle de l’implémentation de la balise vidéo HTML5, il faut aussi prendre en compte l’évolution du marché. Si l’on envisage un monde où la vidéo HTML5 est répandue dans la majorité des navigateurs – par-là je pense à une proportion de 80%, ce qui devrait être le cas d’ici deux ans –, il faut compter avec les tendances et les changements dans les parts de marché des systèmes d’exploitation. On se rend alors compte qu’on se retrouve avec un marché segmenté. Ceux qui voudront diffuser de la vidéo devront prendre en charge à la fois H.264 et WebM. Sur le long terme, je suis certain que les codecs libres sont en meilleure posture, surtout si l’on prend en considération les tendances à venir comme les communications en temps réel ou les plateformes mobiles, où WebM est très performant – ou va l’être grâce à des partenariats avec des constructeurs de matériel.
Firefox 4 va permettre de construire des extensions « poids plume » sous forme de Jetpacks. Quand vont-ils remplacer la génération actuelle d’extensions ?
Les Jetpacks ne sont pas conçus pour remplacer les extensions XUL. Firefox est une plateforme que l’on peut étoffer à l’envi grâce à une large palette d’interfaces. On peut aussi modifier beaucoup de choses dans les paramètres mêmes de Firefox, ce qu’aucun autre navigateur ne permet. Comme projet, c’est extraordinaire : une grand part de nos innovations sont arrivées par les extensions avant d’intégrer directement le navigateur.
Pour nous, les Jetpacks sont grosso modo un équivalent des extensions pour Chrome, qui offrent beaucoup moins de possibilités que nos extensions XUL classiques. Ils seront néanmoins beaucoup plus faciles à réaliser. Nous allons fournir un éditeur en ligne qui facilitera leur développement. Ces Jetpacks seront aussi plus faciles à tester, et l’on pourra les installer sans avoir à redémarrer le navigateur. Ce qui est d’ailleurs déjà possible avec certaines extensions XUL dans Firefox 4, à condition que cela soit signalé et que l’extensions soit codée avec soin.
Notes
[1] Crédit photo : Keven Law (Creative Commons By-Sa)
[2] Chris Blizzard a déjà fait l’objet d’une traduction sur le Framablog : De l’honnêteté intellectuelle et du HTML5.
[3] Lire à ce propos Comment Firefox peut améliorer le respect de la vie privée en ligne, privacy-related changes coming to CSS :visited et Account Manager coming to Firefox.