Aujourd’hui, alors que Windows Phone 8 arrive sur le marché, Microsoft fait tout pour ne plus être le vilain petit canard qu’il a été pendant des années, et qui à ce jour récolte le « bénéfice » des lacunes de ces années. Malgré le fait qu’Internet Explorer 10 est un navigateur plus que respectable, du moins par rapport à ces prédécesseurs et plus particulièrement avec IE6, notamment avec son respect des standards, IE10 a encore du mal à convaincre.
Pire, alors qu’il est inclus au sein de Windows Phone 8, et ce sans réelle surprise puisqu’il est quasi identique à son grand frère de bureau, Windows 8, IE10 semble avoir un problème de poids : les développeurs Web ne s’attendaient pas à le voir débarquer sur le Web mobile…
Un Web mobile dominé par Webkit
La tragique conséquence, et qui n’a rien à voir avec Microsoft, c’est qu’aujourd’hui le Web mobile est dominé par les navigateurs basés sur WebKit, et les sites mobiles ont tendance à être développés et testés sur les navigateurs WebKit exclusivement. Le problème similaire existe pour les tablettes…
Souvent, les développeurs Web restreignent même le test sur un dispositif iOS sans se soucier d’Android…
De ce fait, soucieux d’éviter d’être laissé de côté, Microsoft implore les développeurs Web à adapter leurs sites. Dans l’article fournit précédemment, le géant du logiciel démontre une multitude de façons dont les développeurs peuvent mettre à jour leurs sites afin que ces derniers fonctionnent parfaitement sur les navigateurs autres que WebKit. La clé est la manipulation de fonctionnalités incompatibles.
Comme vous pouvez vous en douter, une des sources d’incompatibilité concerne le cas des caractéristiques qui sont tout simplement la propriété de WebKit ! Celles-ci doivent être revues d’une façon ou d’une autre afin de se conformer aux standards.
Dans la plupart des autres cas, les incompatibilités sont le résultat de processus de normalisation utilisés pour les spécifications Web – on pense notamment aux préfixes utilisés pour les propriétés spécifiques aux navigateurs.
Il y a aussi la gestion de la saisie tactile. Du côté d’Apple on a mis en œuvre une spécification nommée « Touch Events » qui remplace les « Mouse Events » sur les terminaux tactiles. Microsoft a quant-à lui proposé un système alternatif nommé « Pointer Events » qui traitent non seulement le touch, mais aussi la souris et le stylet de façon cohérente. Pour des raisons à la fois techniques et juridiques, le W3C a décidé que, plutôt que de travailler sur la version 2 des « Touch Events », tous les développements futurs dans ce domaine seront liés à des événements « Pointer ».
Le problème, c’est que pour les développeurs de WebKit supportent les évènements « Touch », alors qu’Internet Explorer 10 prend en charge une version préfixée des événements « Pointer ». Si gérer les deux types d’évènements devrait être largement possible, il y a tout de même des nuances à cela, ce n’est pas simplement une affaire de faire une recherche rapide et remplacer les occurrences.
IE6, un passé douloureux ?
Pour ceux qui se souviennent de l’arrivée d’Internet Explorer la fin des années 1990 et au début des années 2000, la position de Microsoft peut sembler amusante, notamment lorsque la société se souciait très peu des normes quand elle gérait plus de 90% des parts de marché des navigateurs…
Ces jours-ci, tout le monde est unanime pour affirmer qu’IE6 est un navigateur minable. Après cinq à six bonnes années d’évangélisation à respecter les normes et standards, cela à conduit à l’idée qu’IE6 est tout simplement le mal, un élément venant briser l’évolution et paralyser le Web. Bien sûr, c’est un phénomène naturel, si vous voulez atteindre un large public vous avez besoin de simplifier votre contenu. Ce dernier a conduit à la disparition progressive d’IE6, mais maintenant nous sommes finalement confrontés à la réaction de cette guerre anti-IE6.
Les personnes qui se souviennent de la libération d’IE6 peuvent se rendre compte qu’E6 n’est pas tant le diable. Bien sûr, par rapport aux navigateurs modernes, c’est un vieux tas de ferraille, mais à l’époque IE6 était un navigateur assez « flashy ». Qu’est-ce qui était si mauvais d’IE6 pour notre propre industrie ? Tout simplement le fait que nous ayons développé des sites Web qui fonctionnaient uniquement sur IE6, et que ces derniers se sont lamentablement vautrés sur d’autres navigateurs. Si IE6 est encore en vie, c’est clairement à cause de nous et nous devrions porter le poids de cette responsabilité. Mais plutôt que de faire face à cette réalité, nous avons juste dit aux gens qu’IE6 est bidon…
Et donc, 10 ans plus tard, nous nous trouvons dans une situation similaire. Webkit règne sur le marché des navigateurs mobiles, et les gens qui développent des applications mobiles spécifiques ignorent complètement les nouvelles normes. Ainsi, peu importe si les sites ne s’affichent pas correctement sur les autres navigateurs, étant donné qu’ils représentent juste une minorité (ou simplement un problème invisible pour le moment), la majorité des développeurs ne s’en soucient pas un seul instant.
Nous tombons dans les mêmes pièges que par le passé, et il semble que nous n’ayant quasiment rien appris des erreurs de ce dernier.
Conclusion
Peut-être que les préfixes des navigateurs n’auraient pas dû être autorisés dans les versions de production des navigateurs, peut-être que les préfixes eux-mêmes étaient une idée stupide pour débuter, mais il est inutile de blâmer quelqu’un d’autre que nous-mêmes, la communauté du développement Web. Nous sommes ceux qui créent cette situation dans laquelle les navigateurs ne peuvent pas évoluer, car ils pourraient briser le Web actuel… Nous sommes les seuls à écrire du code, et c’est effectivement à nous de mettre un terme à cette situation.
Aujourd’hui, il est donc nécessaire de se former et de s’assurer que nous construisons des sites avec une conception responsive à l’esprit. Assurez-vous que votre site fonctionne bien sur les navigateurs de base, et en toute sécurité « prédire » les futures implémentations et les normes que les navigateurs plus modernes embarqueront. Si Webkit s’avère être le nouveau IE6, nous n’avons qu’à nous remercier pour cela.
Que faites-vous aujourd’hui dans cette situation ? Pensez-vous que WebKit va être le nouveau IE6 ?