Sauvez le web, sauvez les développeurs, sauvez moi!
Par Brian le vendredi 5 décembre 2008, 10:06 - web - Lien permanent
Aujourd'hui, RollsRox aura le droit à un billet un peu plus personnel que d'habitude.
Vous ne le savez sûrement pas, mais mon "day job" de Clark Kent consiste entre autres à créer des services web, souvent web2.0 d'ailleurs[1]. En quelque sorte, je surfe sur la vague qui parfois me fait horreur et me révolte.
Pourquoi vous raconter tout ça?
Un petit indice avec la photo qui suit.
IE6 est vieux, très vieux
Pour beaucoup d'early adopters ou fans de nouvelles technologies, Internet Explorer 6 est un cauchemar lointain. Aujourd'hui, pour être à la page, il faut parler de navigateurs récents comme Firefox 3, Chrome, Safari, Opera, Internet Explorer 8...
Des navigateurs qui respectent mieux les standards du web, qui sont plus sécurisés et qui donnent de meilleures possibilités d'extensions.
Mais ceux qui travaillent dans le domaine du web savent que IE6 représente encore un bon 20% de part de marché sur le net. C'est énorme pour un navigateur aussi vieux.
Vieux comment?
Voilà quelques exemples; si IE6 était:
- Un enfant, il serait en classe de CE1
- Un téléphone, ce serait un un Nokia 3510 (en fait, pire)
- Un navet, ce serait
American Pie 2
- Une console, ce serait une Nintendo Gamecube
- Une chanson, ce serait "Angel" de Shaggy
- Un film français, ce serait
Le Fabuleux Destin d'Amélie Poulain
Vu l'évolution du web ces dernières années, on est en droit de s'interroger sur l'écart énorme entre les besoins de nos utilisateurs d'aujourd'hui et les possibilités du navigateur.
Comment je m'explique cette lente agonie
Pourquoi IE6 est-il toujours là? Alors que toute notre société de consommation, d'instantané, de nouveauté pousserait plus à la mise à jour.
En réfléchissant un peu, j'arrive à trouver quelques raisons:
- Pas mal de personnes ne font pas de différence entre leur browser et leur système d'exploitation.
- Les mêmes ne connaissent sûrement pas les alternatives à IE.
- Les organisations frileuses (au hasard, les banques) ont peur des mises à jour. Trop flippant, voyez.
- Beaucoup d'applications intranet utilisent du code spécifique IE6.
En gros, on en revient toujours à la même raison: IE6 est intégré au système d'exploitation windows, les deux sont trop liés.
Le web paie les effets d'une des armes de monopole qui a fait le succès de Microsoft.
Facile d'accuser Microsoft dans ce cas; je pense quand même que les torts sont partagés, et que si IE6 est toujours là, c'est parce que créateurs et développeurs ont eu trop peur de perdre des utilisateurs, même si c'est au détriment de leur service.
La mort programmée d'IE6
Il faut maintenant aider IE6 à disparaître du web, les raisons ne manquent pas.
Le vieux browser est un frein à l'innovation aujourd'hui; dans le monde des sites, et spécialement des applications web, il faut faire un choix:
- Différencier le service selon le navigateur. Généralement, la branche marketing est contre, et à juste titre.
Pourquoi empêcher l'accès du service au plus grand nombre?
Après tout, le web est fait pour être ouvert. - Travailler sur la compatibilité navigateur pour avoir un service identique partout (enfin presque). C'est ce qu'on appelle aussi un nivellement par le bas.
Sérieusement, la compatibilité navigateur est l'enfer des développeurs web. On repousse déjà les navigateurs dans leurs derniers retranchements. Il faut aussi faire comprendre aux utilisateurs et aux clients que le modèle actuel atteint ses limites:
- on dépasse les compétences et le rôle des navigateurs
- créer des services dans de telles conditions ne poussent pas à la qualité logicielle, bien au contraire.
Il suffit de lire les témoignages sur I Can Haz Real Browser[1].
Les développeurs du web (et moi) en ont marre de passer du temps précieux sur des "particularités" d'IE6. Je ne parle pas de boycott d'Internet Explorer; après tout, c'est bien IE qui a introduit la XMLHttpRequest, qui plus tard donnera naissance aux technos AJAX.
Et quand je lis Eric Meyer sur son blog, je me dis que le monde des navigateurs ne tourne pas rond:
So why not write JS to implement multiple background-image support in all browsers? All that’s needed is to scan the CSS, find instances of multiple-image backgrounds, and then dynamically add divs, one per extra background image, to get the intended effect.
Just like that, you’ve used the browser’s JS to extend its CSS support. This approach advances standards support in browsers from the ground up, instead of waiting for the browser teams to do it for us.
Les navigateurs ne supportent pas les normes CSS qu'ils devraient supporter, alors faisons leur boulot à leur place avec une soupe de Javascript et de hacks d'affichage.
Ce n'est peut être pas choquant pour tout le monde, mais pour moi c'est comme dire "la photocopieuse du bureau ne marche pas bien, embauchons une armée de stagiaire-moines-copistes pour faire le boulot, leur efficacité est démontrée".
Steve Ballmer l'a dit, alors qu'est-ce qu'on attend?
En fait, beaucoup ont compris que l'avenir d'Internet Explorer était ailleurs. Steve l'a dit lui-même, il n'est pas exclu de faire appel à un moteur open source pour les prochaines versions d'Internet Explorer. Histoire de copier sur Safari et Chrome, Webkit pourrait être la solution de demain.
Ce changement est sûrement plus proche qu'on ne le croit. Sur le net les rumeurs se propagent; la IE team aurait été démantelée pour créer la "IE SE team", pour Sustained Engineering. En gros une équipe qui assure le support d'un produit mort.
Aujourd'hui, le web a besoin d'avancer, les développeurs web du monde entier sont fatigués; tuons IE6, maintenant.
Soutenir ce genre d'initiatives, c'est un peu sauver les web workers...
Notes
[1] Jolie référence à un de mes sites débiles préférés, I Can Haz Cheezburger



Commentaires
Je suis pas développeur mais IE6 est une vraie plaie...
Oh mon joli nouveau site ne tourne pas sur IE6. Grrrr
Je comprens pas pourquoi, y a pas encore eu d'opération web-terroriste pour couler IE6. Un bon vieux virus ou un truc de ce genre.
Ca me rappelle un article récent (ou pas) de Bruno Bichet (je ne retrouve plus cet article :s ), sur un ton légèrement assassin, demandant la mort d'IE6, billet qui lui avait attiré les foudres de certains de ses comparses...
Enfin bon, moi c'que j'en dis d'IE6...
J'imagine que dans certains rares cas le problème doit être rageant, mais pour la plupart des développeurs, le problème de la compatibilité avec IE6 ne devrait plus se poser.
@qyrool Oui, le design de blogs avec IE6 est pas toujours sympathique. Soit on fait des concessions, soit on "triche" en utilisant du javascript et a final en mélangeant torchons et serviettes, on arrive vite à des conséquences inattendues. Pour savoir comment IE6 se comporte et comprendre les bugs d'affichage, une des références reste le tableau récap de quirksmode.
@nico tu parles probablement de cet article (je reconnais, la méthode est un peu violente). Quand tu dis:
Tu dois penser au design CSS de sites web. De ce côté là, tu as raison; "test early and often" sauve souvent la mise.Perso je parle d'applications "web2.0". A moins de s'appeler Google et de travailler avec les gens de Microsoft (moi aussi, j'aimerais commander des patches à Microsoft), tu vas rencontrer de gros, gros problèmes. Le moteur javascript de la bête est franchement mauvais quand on le compare à un navigateur moderne; je me dis souvent qu'on fait déjà des choses incroyables avec un navigateur de 2001.
C'est un peu rageant de devoir limiter ses utilisateurs parce que certains navigateurs sont trop à la traîne...