GROS LAPSUS au moment de la mise en ligne de ce billet, le titre est
évidemment XUL est mort
et non Mozilla est mort
:S
Ce billet n'est que le reflet de mon état d'esprit actuel, de ce que je
ressens à la lecture de différents canaux d'information sur Mozilla,
essentiellement les blogs et leurs commentaires, et des discussions entre
Mozilliens. C'est un ressenti et une tentative de réfléchir un peu avant de me
réfugier dans l'amertume et le trollage.
Le futur est au Web
Je suis depuis longtemps persuadé que l'avenir des applications pour
périphériques mobiles passe par le Web plutôt que des développements natifs à
chaque plateforme. Mais j'avais jusqu'à présent refusé de pousser la logique
jusqu'au bout, de l'appliquer au PC. Je viens d'un temps où le PC était roi et
les téléphones des gadgets tout juste capables de faire tourner poussivement
Tetris. Mais je dois me rendre à l'évidence: le PC ne sera bientôt plus qu'un
périphérique comme un autre, et l'évolution entamée sur les mobiles ne
l'épargnera pas. En d'autres termes, sous peu, les applications Web vont
prendre le pas sur les applications natives. Pas pour tout bien sûr, il y aura
toujours des niches où l'on aura besoin d'applications "lourdes". Mais ces
niches vont se réduire. Pour la messagerie déjà, et bon nombre de fonctions de
communication, les Webmails et les applications Web ont supplanté les clients
lourds. La bureautique suit peu à peu, les jeux aussi, le traitement en ligne
de photos, son, vidéos, devient chaque jour plus envisageable. Ce n'est plus
qu'une question de mois avant que des applications Web ne puissent répondre à
l'essentiel de nos besoins[1].
La conséquence est évidente: les applications clientes lourdes n'ont
d'avenir que dans des niches. Mozilla veut rendre Internet meilleur pour
l'ensemble des internautes. Maintenir une plateforme de développement pour
applications lourdes n'entre pas dans cette mission: donc Mozilla va cesser de
défendre et de développer la plateforme XUL.
XUL n'est par mort pour autant. Par bien des aspects, lui et ses
technologies sœurs (XBL, XPCom, etc) sont pour l'instant irremplaçables.
Mozilla va encore les utiliser pendant quelque temps dans Firefox, même si je
pense que leur remplacement par une interface entièrement en HTML n'est qu'une
question d'années. Mais l'écosystème qui depuis longtemps s'est développé
autour de ces technologies est lui sérieusement menacé.
Chronique d'un abandon annoncé
L'abandon de la plateforme XUL ne devrait être une surprise pour personne.
Il est implicite depuis des mois. Mais comme il n'a jamais été officiellement
annoncé, je refusais de voir la réalité, j'étais dans le déni. Aujourd'hui, vu
la mauvaise tournure que prennent les évènements, je pense qu'il est temps de
crever l'abcès, de cesser d'être dans le déni, de regarder la vérité en
face.
Car si Mozilla n'a jamais dit ouvertement arrêter de s'occuper de la
plateforme, c'est implicite dans l'évolution de sa communication et dans de
nombreux documents publiés ces derniers temps.
Le Manifeste
parle d'Internet
(le mot est cité 21 fois, contre une seule fois pour
Web
). La description de la mission de Mozilla, plus
récente je crois, ne parle elle plus que du Web: Mozilla's mission is to
promote openness, innovation and opportunity on the web
. Le reste des
usages d'internet n'est donc plus au cœur des préoccupations de la Fondation.
Il y a quelques années, elle développait un navigateur Web, un logiciel de
messagerie et une plateforme permettant de créer des logiciels pour d'autres
usages du réseau. Aujourd'hui, elle ne semble savoir que faire de Thunderbird,
et la plateforme n'est plus du tout mise en avant.
C'est encore plus clair dans l'un des meilleurs documents que j'ai trouvé
pour éclairer la stratégie actuelle de Mozilla: la feuille de route de Firefox pour
2011[2]. Elle dit explicitement Our mission is to
promote an Open Web Platform which is the most compelling environment for
modern applications.
Dit autrement, le Web est la plateforme d'avenir, la
seule que nous défendons. Dans l'ensemble du document, comportant pourtant
quelques parties techniques, XUL n'est pas cité une seule fois.
Il suffit donc de lire pour réaliser que Mozilla est en train d'abandonner
la plateforme. Une plateforme qui pourtant a grandement contribué à son actuel
succès.
Séquence nostalgie
Je fais partie des développeurs pour lesquels la plateforme Mozilla avait
suscité de l'espoir dès le début des années 2000. Pour qui a touché au
développement d'applications "lourdes" et se souvient du bordel que c'était
(c'est ?), Mozilla offrait une solution simple, élégante et multi-plateforme.
Un socle solide permettant de créer facilement et rapidement des applications,
avec un minimum de connaissances techniques (XML, JavaScript, CSS).
L'environnement était de plus extensible pour qui en avait besoin via des
bibliothèques externes. Mozilla promouvait l'utilisation des technologies, et
en a fait une véritable la plateforme: le cœur en a été extrait, devenant un
moteur d'exécution à part entière, XulRunner, au dessus duquel s'exécutent les
applications de la Fondation, Firefox et Thunderbird.
Entre ses qualités techniques et le soutien implicite de Mozilla via la
création de XulRunner, beaucoup ont cru en cette plateforme et l'ont adoptée
avec enthousiasme. Le wiki de Mozilla liste une cinquantaine d'applications basées
sur XulRunner et plus encore d'autres utilisant certaines des technologies
de la plateforme. Parmi les dizaines de milliers d'extensions disponibles
pour Firefox, bon nombre sont bien plus que des bookmarklets améliorées (ce que
sont les extensions Chrome <troll>ou Jetpack dans Firefox</troll>).
Elles n'ont étés rendues possibles que parce qu'elles ont pu accéder au cœur du
navigateur, se brancher dans l'interface avec les overlays, la bidouiller en
XUL, utiliser des composants binaires externes avec XPCOM. Si Firefox n'avait
pas été bâti sur une plateforme, nous n'aurions pas eu autant d'extensions. Et
je suis sûr qu'il n'aurait pas eu un tel succès. Les extensions ont été un
formidable terrain d'expérimentation pour bidouiller le navigateur et étendre
ses capacités dans de nombreuses directions inédites. Les extensions ont permis
de réellement personnaliser Firefox. Je n'utilise pas un navigateur nommé
Firefox, j'utilise mes propres navigateurs, adaptés à mes besoins, l'un outil
pour surfer protégé, un autre pour développer… Par leurs contributions au code,
par leurs apports à l'expérience utilisateur des internautes, tous ces
développeurs XUL ont grandement contribué aux succès tant de Mozilla que du
Web.
Les histoires d'amour finissent mal…
Aujourd'hui, ces développeurs se retrouvent abandonnés et, quelque part
trahis. Lorsqu'on a passé des années à s'investir sur une technologie, son
abandon par son créateur est pour le moins douloureux. Et encore plus
douloureux lorsque la communication autour de cet abandon est mal faite. La
situation actuelle est détestable, faute de position claire sur le sujet se
multiplient les débats avec leurs lots de trolls, de phrases définitives, de
pathos et de drames. Les décisions mal assumées ou mal expliquées, les phrases
maladroites, les trolls stériles peuvent faire énormément de mal. Les
séparations sont rarement des moments joyeux. Celle-ci est en train de virer au
tragique. Les récents débats, certains propos lus, m'ont rappelé la tristement
célèbre « courbe du deuil » et surtout l'utilisation qui en est faite
par les "managers" chargés d'organiser le changement dans de grosses
sociétés[3]. La comparaison est sans doute méchante,
excessive, mais c'est l'image qui m'est venue lorsque j'ai lu certain
responsables de Mozilla entonner un "marche ou crève
". Les développeurs
d'extension devront s'adapter, marcher, migrer vers JetPack, ou crever. Idem
pour ceux développant des applications tierces: passe à js-ctype, recompiler
toutes les 6 semaines, ou crever. Ce sont des propos particulièrement durs,
violents, adressés à des gens qui ont tant contribué au succès de Mozilla et
que l'on abandonne sur le bord du chemin.
Je ne discute pas du fond, car je pense que la décision de ne plus soutenir
la plateforme est la bonne pour Mozilla. Le but de la Fondation et de
promouvoir l'ouverture et l'innovation sur le Web. Dans le contexte actuel,
avec l'arrivée de Chrome qui a fortement relancé la compétition et Microsoft
qui semble enfin réellement se réveiller, Mozilla doit se concentrer sur
Firefox pour qu'il reste techniquement crédible, donc continue d'attirer un
nombre suffisant d'internautes pour pouvoir peser sur les évolutions du Web (on
l'a vu par exemple lors des débats sur les codecs pour la balise Video: le
refus de Firefox d'implémenter le format H264 n'a de poids que parce qu'il
impacte un tiers des internautes). Je comprend et approuve que Mozilla mette
l'essentiel de ses forces dans Firefox, je comprend également que cela implique
de considérer le navigateur comme une application à part entière, optimisée de
base en haut, et non plus comme un client s'exécutant au dessus d'un moteur
d'exécution.
Mais je conteste fortement le calendrier, la méthode et l'absence de
communication.
Le calendrier, parce que malgré toutes ses évolutions, HTML ne sera pas à
mon avis crédible "sur le bureau" avant plusieurs années. Dans l'intervalle, on
a encore besoin de XulRunner. Prenons l'exemple du mail. Je suis persuadé que
l'avenir est aux Webmail, que les clients lourds sont condamnés (du moins chez
les particuliers). Pourtant, il leur reste une fonctionnalité que je ne vois
pas les Webmails implémenter à court terme: la sauvegarde locale des mails.
L'archivage de ses mails sur son disque pour les sauvegarder sur d'autres
supports, etc. Je sais que certains font déjà confiance au Nuage pour cela.
Mais beaucoup d'internautes veulent encore avoir des copies locales, et tant
que les Webmails ne le permettront pas facilement, nous aurons besoin de
Thunderbird, donc de XulRunner.
La méthode parce que je l'ai dit, certains propos sont particulièrement
violents et à mon sens inacceptables.
La communication enfin, car comme lors du récent débat sur l'intérêt de
Mozilla pour les entreprises, je la trouve mauvaise. Mozilla sait lancer de
jolies campagnes de marketing à destination du grand public, mais j'ai
l'impression que la Fondation a beaucoup plus de mal à communiquer avec ses
fans. L'abandon de XUL est déjà assez douloureux à vivre, ne rendons pas les
choses encore plus difficiles en ne disant pas les choses clairement.
J'aimerais que, si Mozilla ne soutient plus la plateforme XUL, elle l'annonce
officiellement.
Alors Mozilla, s'il te plait, exprime toi, sans langue de bois, sur tes
intentions vis à vis de la plateforme.
Yes future ?
Je voudrais finir ce billet sur une note un peu plus optimiste. Si Mozilla
arrête de soutenir la plateforme, ça sera un coup rude, mais ne signifiera pas
forcément la mort de la technologie. Je pense que quoi qu'il arrive, elle a
encore de beaux jours devant elle, tant de par ses qualités propres que par la
valeur des développeurs qui l'investissent. L'abandon de la suite Mozilla au
profit de Firefox, Thunderbird et Composer a donné naissance au projet SeaMonkey. Qui sait si l'annonce de la
fin du soutien de Mozilla à la plateforme XUL ne provoquerait pas un sursaut de
la part de l'ensemble des développeurs de l'écosystème pour créer un projet
spécifique. Il serait certes autrement ambitieux, car il ne s'agirait plus de
bâtir des applications sur un socle maintenu par Mozilla, mais bien de prendre
en charge la maintenance d'une version spécifique de ce socle lui-même. Bref,
pour le coup, de forker XulRunner. Laisser Mozilla en développer une version
optimisée pour Firefox, et probablement à terme réintégrée avec le navigateur,
et créer à partir de l'existant une branche spécifique permettant le
développement d'applications clientes multi-plateformes lourdes. Beaucoup de
gens ont besoin de cette version de la plateforme. Tant les très nombreux
projets qui se basent dessus, dont certains développés par des entreprises qui
ont quelques moyens, que certains utilisateurs actuels de Firefox et
Thunderbird (entreprises, administrations). Ceux qui ne peuvent ni ne veulent
suivre le nouveau rythme de sortie de Firefox, mais ont besoin de produits
stables sur de longues périodes. J'ai cru entendre qu'au sein même de Mozilla,
certains développeurs du cœur ne seraient pas contre donner un coup de main à
un tel projet, ne serait-ce que pour rétro-porter les correctifs de sécurité.
De nombreuses sociétés commerciales y auraient sans doute un marche.
L'écosystème XUL n'est donc pas condamné à court terme, certaines conditions
sont réunies qui permettent d'espérer.
Mais encore une fois, pour que cet avenir s'éclaircisse, il faudrait lever
les doutes, les incertitudes. Il faudrait que Mozilla s'exprime explicitement
sur ses intentions à long terme vis-à-vis de la plateforme. Cela permettrait
peut-être à la créature, enfin sûre de ne plus avoir grand-chose à attendre de
son créateur, de rebondir. J'espère que cette clarification va venir
rapidement, avant que trop de gens n'aient quitté le navire, dégoûtés, avant
que la confiance et le respect entre gens unis dans un projet par un même idéal
n'aient volés en éclats.