UPDATE: English translation Apollo Takes Off (thanks Matt).

Des concurrents sérieux aux technologies Mozilla

Ces derniers temps, on parle beaucoup (ici aussi) des nouveaux concurrents du framework Mozilla: WPF et Apollo. Trois acteurs importants du Web (Microsoft, Adobe et Mozilla) ont donc leurs frameworks respectifs pour les RIA: Rich Internet Application. C'est le nouveau buzz word du moment. Ajax, c'est has been.

Une alpha d'Apollo est sortie, c'est le branle-bas de combats. Tout le monde en parle. Coup réussi pour Adobe.

Et évidement, on commence à grincer des dents chez les Xul-eurs.

Le risque

Le risque est que Apollo et/ou WPF deviennent des technologies incontournables et que les technos (XUL & co) Mozilla soient oubliées alors que l'on considère aujourd'hui qu'elle gagne en crédibilité.

Pourquoi risque-t-on un tel scenario ?

Parce que ces framework ont de réels avantages face à la plateforme Mozilla:

... et évidement, ils sont soutenus par deux poids lourds avec des budgets et une sacré équipe derrière tout ça.

De plus, on ne peut pas considérer qu'ils partent de zero car eux aussi ont une communauté relativement importante: Adobe avec les Flash & Flex addicts, et Microsoft avec les fanas de .NET.

Le framework Mozilla conserve certains avantages:

  • basé sur des standards et fortement lié au web
  • il a déjà vécu: des applications existent et les compétences sont là
  • technologie OpenSource

L'arrivée de telles technologies n'est que l'évolution logique du web: besoin d'application web -> langage plus adapté.

Mais, en dehors des aspects technologiques, il existe une différence fondamentale entre WPF/Apollo et le framework Mozilla: l'intention.

Une différence, l'intention

On se sent un peu frustré quand tout le monde crie à la révolution lorsque Adobe et Microsoft sortent des technologies dont les objectifs sont similaires à ce que nous, nous faisons depuis trois ans. Si aujourd'hui XUL ne fait pas autant de buzz, c'est certainement car les choses sont allées plus en douceur, on a vu naître avec difficulté le framework Mozilla, dans la durée, sans que tout le monde ne réalise vraiment en quoi, non pas XUL en soit, mais les RIA, étaient une nouvelle mutation (révolution ?) du Web.

On pourrait se dire, quand on voit les efforts de Microsoft et d'Adobe pour sortir un framework dédié aux RIA, que l'on est en présence de l'avenir des applications grand public, du réel Web2.0, alors que Mozilla à quelque chose de similaire sous le coude depuis bien longtemps, mais que les efforts pour en faire une technologie solide, stable, complète et clairement packagée et isolée ont finalement été assez pauvres, et l'on pourrait enrager de voir grandir ces frameworks alors que celui de Mozilla avance péniblement, sans réellement sortir des jupes de sa mère (Firefox).

Rappelons l'objectif du projet Mozilla: le maintien du choix et de l'innovation sur Internet. Et cela passe avant tout par le développement d'un moteur (Gecko) implémentant le mieux possible les standards du web à travers un logiciel accessible et ergonomique, Firefox. Le framework Mozilla n'est qu'un effet de bord du développement de Firefox. Il fallait proposer un mécanisme simple mais puissant pour étendre Firefox. Xul a été présenté ainsi, le langage permettant de concevoir des extensions pour Firefox.

Ne nous étonnons donc pas du fait que la fondation Mozilla n'assume pas XUL comme un framework à part entière, il est intimement lié à Firefox. Mais il se trouve que XUL a une vie en dehors de Firefox.

Bon, allez... parlons des choses qui fâchent. Pourquoi Mozilla n'investit pas sérieusement, malgré ses millions, dans leur framework ?!

L'implication de Mozilla

Déjà, une réponse simple: il faut assurer ses arrière avec Firefox. IE7 débarque. Vista propose IE7 par défaut. Si Mozilla perd son avantage avec Firefox, Mozilla n'existe plus. L'existence de la fondation Mozilla est justifiée par la présence et le poids de Firefox. L'effort pour concevoir dans sa globalité un framework est, je pense, trop important par rapport à ce que cela peut apporter. La priorité est donc *Firefox*.

Ensuite, ce framework est un élément critique du logiciel Firefox. Développer et supporter le framework pour des applications autres que pour laquelle il a été conçu limiterai la liberté d'action des développeurs. Assumer un tel framework demanderait des concessions que ne peuvent aujourd'hui pas faire les développeurs. Et, de plus, pour eux, la plateforme à mettre en avant, ce sont les technologies internet, HTML5, javascript, css.

Et, est mon avis, qu'ils auraient plutôt intérêt à investir sur des projets tels que Lightning, Minimo et Thunderbird.

Mais bon, tout n'est pas blanc ou noir. C'est évidement plus compliqué que ça. Ce framework existe, et c'est à grâce au financement de Firefox et Thunderbird qu'il est développé. La fondation n'est pas naïve et les acteurs de Mozilla sont bien conscients de l'intéret grandissant pour leur plateforme, et ils savent que beaucoup de gens l'utilisent, ne serrait-ce que pour les extensions. C'est la raison de la création de devmo (http://developer.mozilla.org), de l'embauche de Mark Finkle pour la création du projet Fuel (notez le titre de Mark Finkle: Platform Evangelist), de l'existence de XulPlanet, de forums et d'un canal IRC pour du support, et, avant tout, du projet XulRunner, un outil magnifique qui prouve l'existence d'une plateforme stable, exploitable et clairement utilisable aujourd'hui en entreprise. Mozilla n'est pas une pyramide avec au sommet une femme qui va interdire aux développeurs d'encourager l'utilisation de leur framework. Mozilla reste une communauté, qui, de toute manière, édite un framework, utilisé par beaucoup de gens, et qui fait en sorte que le tout fonctionne, mais il est vrai qu'il n'y a pas un mécanisme marketing et politique pour promouvoir et assurer cette plateforme en tant que telle.

Comment assurer la compétitivité du framework Mozilla ?

Il serait bien évidement dommage que XUL reste sur le bas côté alors que les technologies d'Adobe et de Microsoft percent. Je pense que la concurrence d'elle même motivera les développeurs (officiels et contributeurs) pour enrichir le framework. Mais je pense que le point critique est l'absence d'outils auteurs. Clairement, c'est ce qui nous fera défaut si rien n'est fait. La conception d'un outil de gestion de projet XUL est pour moi un point essentiel. Et vous le savez, c'est un des projets qui me tient à coeur.

Pour conclure...

On ne verra pas la fondation Mozilla sortir sous forme de "produit" un framework. Officiellement, Mozilla n'assumera pas une plateforme isolée du projet Firefox, et cela simplement car ce n'est pas leur objectif. Mais cela n'empêche pas la communauté, les développeurs, de fournir une plateforme aboutie et de bonne qualité. La preuve en est l'existence de différents projet complets codés avec ces technologies (je pense à Joost, AllPeers, ou à des projets français tels que Scenari Plateform ou encore NextCMS). Je crois en l'utilité d'actions telles que XulFr, et je crois que comme dans tout projet OpenSource, la soutient de la communauté est crucial. Si vous voulez une plateforme puissante et qui résiste à la concurrence, contribuez !