Mozilla Démission et rétrospective


La photo de Jamie Zawinski

Le 1er avril 1999 sera mon dernier jour comme employé de Netscape Communications division d'Amerca Online et mon dernier jour de travail pour mozilla.org.

Netscape m'a beaucoup déçu depuis quelques temps. Quand nous avons commencé cette société, nous voulions changer le monde. Et nous l'avont fait. Peut-être que le changement serait probablement arrivé de toute façon, peut-être six mois ou une année plus tard, et qui sait ca ce serait passé différemment. Mais nous sommes ceux qui l'avons vraiment fait. Quand vous voyez des adresses Web sur des sacs d'épicerie, sur des panneaux publicitaires, sur des camions, dans les génériques de film juste après les logos des studios, c'était nous, c'était l'aboutissement de notre travail. Nous avons mis Internet dans les mains des gens ordinaires. Nous avons mis sur pied un nouveau moyen de communications. Nous avons changé le monde.

Mais c'était en 1994 et 1995. Car depuis 1996 nous nous sommes reposés sur nos lauriers.

Pourquoi ? Parce que la société a arrêté d'innover. La société est devenue trop grosse, et les grosses sociétés cessent d'innover. Il existe des contre-exemples à çà, mais en général, les grandes choses sont accomplis par des petits groupes de personnes qui sont dirigées, avec une mission unique. Plus de personnes sont impliquées, plus le groupe est lent et stupide.

Et il y a un autre facteur impliqué, vous pouvez diviser notre industrie dans deux catégories des gens : ceux qui viennent travailler dans une société pour sa réussite, et ceux qui viennent travailler dans une société qui réussie. Le succès et la croissance rapide de Netscape a fait que nous avons arrêté d'avoir la première catégorie et commencé d'avoir la dernière.

En janvier 1998, Netscape est frappée par une des ses périodes les plus noire, la première vague de licenciements. C'était une vraie douche froide. Netscape, le chéri de l'industrie informatique, la société a la plus forte croissance au monde, n'était pas invincible.

Plus concrètement, nous nous sommes rendus compte que nous avions finalement perdu la prétendue guerre des navigateurs. Microsoft avait réussi à détruire ce marché. Il n'était plus possible à personne de vendre des navigateurs Web pour de l'argent. Notre premier produit, notre produit vedette, est devenu rapidement non rentable.

Et ensuite l'inattendu est arrivé : le personnel exécutif a décidé de donner le code source. Je ne decortiquerai pas l'histoire de la création du projet mozilla.org, mais il suffira de dire que, arrivant comme ça seulement deux semaines après les licenciements, c'était pour moi un horizon d'espoir. Là c'était Netscape faisant encore quelque chose d'audacieux : là c'était la société opérant une sorte de changement stratégique que n'ai jamais pensé qu'elle puisse faire à nouveau. Un acte de désespoir ? Peut-être, mais toujours très intéressant et inattendu. C'était si fou, cela pourrait justement fonctionner. J'ai pris mon rapport et j'ai couru avec lui, enregistrant le domaine la nuit, concevant la structure de l'organisation, écrivant la première version du site Web et, avec mes co-conspirateurs, expliquant de pièce en pièce aux employés de Netscape et aux managers comment le logiciel libre fonctionnait, et comment nous devions le faire fonctionner.

à ce moment, j'ai fortement cru que Netscape n'était plus capable de sortir des produits. Le département technique de Netscape avait perdu son foyer d'esprits-entrepreneurs, celui qui sortait des choses utiles et rapidement. Cela n'arrivait plus. Netscape sortait de la merde et trop tard.

Mouvement audacieux ou pas, cela n'allait pas changer : Netscape n'avait plus le talent, ou dans l'ingénierie ou la gestion, pour sortir des produits de qualité. La magie était partie, car les magiciens étaient ou partis dans des sociétés plus attrayantes, ou n'arrivaient plus à se faire entendre au milieu du vacarme d'une foule, nageant dans la médiocrité.

Le Netscape que j'avais connu était mort.

Mais j'ai vu dans mozilla.org une bouée de sauvetage, donner le code sur lequel nous avions travaillé si durement, pour qu'il puisse vivre après la mort de Netscape, et peut-être continuer d'avoir une importance dans le monde.

Mis à par ça, j'ai vu dans cette décision une chance pour que le code puisse prospérer réellement. En ne le faisant plus exister comme projet de Netscape, mais plutôt comme un projet public auquel Netscape contribuerait simplement, le fait que Netscape n'était plus capable de concevoir des produits n'importerait pas : des intervenants extérieurs montreraient à Netscape comment faire. En donnant le contrôle du navigateur Web dans les mains de personnes qui se souciaient d'intensifier la tâche, nous nous assurerions que ces gens la maintiendraient, hors de leur propre intérêt.

Mais ce n'est pas arrivé. Pour certaines raisons, le projet n'a pas été adopté par l'extérieur. C'est resté un projet Netscape. Maintenant, le changement positif, est que Netscape développait ce projet ouvert, à la vue du monde entier et le monde entier donnait des retours importants et constructifs. En conséquence Netscape a pris les meilleures décisions.

Mais ce n'était pas assez.

La réalité est qu'en tentant compte que les contribuants au projet Mozilla était composé d'environ cent développeurs de Netscape à plein temps et environ trente extérieurs à temps partiel, le projet appartenaient toujours complètement à Netscape. Car seul ceux qui écrivent le code contrôlent vraiment le projet.

Et voici une année de passé. Et nous n'avons même pas encore sortie de bêta.

à mon humble mais exact avis, nous aurions dû livrer Communicator 5.0 moins de six mois après la libéralisation du code source. Cependant, nous (le groupe mozilla.org) n'avons pas su trouver la façon de le faire. J'accepte ma part de responsabilité et je considère cet échec comme un échec personnel. Par contre, je ne sais pas ce que j'aurais pu faire différemment.

Je peux inventer une litanie d'excuses et d'explications pour ce retard si important. (le ciel sait que j'ai fait ces excuses aux médias pendant la moitié de la durée du projet.) Certains d'entre elles sont :

Excuse *1 :
C'est vraiment un grand projet et il faut une longue période pour q'un nouveau développeur se plonge dedans et commence à contribuer.
Excuse *1a :
Pour cette raison, voilà ce qui se passe, quelqu'un essaie de faire un changement, constate que ça prend plus que quelques heures, renonce et passe à autre chose.
Excuse *2 :
Les gens contribuent vraiment seulement quand ils en obtiennent quelque chose. Quand quelqu'un commence à contribuer, il attend particulièrement une sorte de paiement, une sorte d'encouragement positif, rapidement. Par exemple, si quelqu'un exécute un navigateur Web, puis le stop, ajoute une nouvelle commande simple au code source, recompile et obtient le même navigateur Web plus sa fonctionnalité, ils sera motivé pour le faire à nouveau et s'investir probablement de plus grands projets. Nous ne y sommes jamais arrivés. Nous n'avons jamais distribué le code source d'un navigateur Web fonctionnel, plus important encore, du navigateur web que les gens utilisait en réalité. Nous n'avions pas donné le code source de la dernière version de Netscape Navigator : à la place, nous avions donné ce que nous avions à l'époque, avec un certain nombre de fonctionnaliés incomplètes et des tas et des tas de 'bugs'. Et bien sûr nous n'étions pas habilité du tout à donner le code source de Java ou du chiffrement (crypto).
Excuse *3 :
Le code est vraiment trop compliqué et boiteux et difficile à modifier, voilà pourquoi les gens n'ont pas contribué. C'était une excuse crédible pendant un moment, ce qui explique, qu'il y a six mois, nous avons changé le vieux 'layout engine' par un nouveau 'layout-engine' (Gecko/Raptor). La nouvelle base de code étant nettoyée la théorie disparue, il allait être plus facile pour les personnes de comprendre et de contribuer. Et cela nous a donné plus de contribuants. Mais il a aussi provoqué une réécriture presque total du navigateur, nous faisant perdre six à dix mois. Maintenant nous avons à récrire entièrement l'interface utilisateur à partir de zéro avant que quelqu'un ne puisse naviguer sur le Web, ou même ajouter un signet.
Excuse *4 :
Il n'y a pas de client messagerie. Il y a sûrement une grande proportion des utilisateurs qui seraient intéressés pour travailler sur Communicator et moins intéressé par Navigator, mais nous ne l'avons jamais vraiment constaté, puisque nous n'avons jamais donné le code source de Communicator (pour certaines raisons, aucune vraiment bonnes, quelqu'une complètement pathétique). Maintenant, après la réécriture de Gecko/Raptor, le client messagerie/groupe de discussion est à réécrire aussi. Peut-être sortira-il mêm un jour.
Excuse *5 :
Netscape n'est pas allé jusqu'au bout de ses propres plans. En 1998, Netscape dépense une somme énorme d'effort technique pour sortir la version 4.5 : en travaillant sur du code propriétaire sans avenir, dont les sources ne serait jamais données et ne profiteraient jamais au développement 'open-source'. C'était un coup énorme au projet Mozilla, dès la première moitié de l'année, nous n'avions même pas la participation à plein temps de Netscape. Ce n'est cependant pas une excuse mais plus une erreur stupide, épouvantable, considérant que nous aurions dû retenir la leçon d'un développement parallèle déjà fait par le passé, avec le projet de "Javagator" avorté.

La plus mauvaise partie de tout ça est que pendant l'année dernière, j'ai dépensé beaucoup de temps, pour m'efforcer de convaincre les gens que mozilla.org n'est pas netscape.com. J'ai dit aux gens à maintes reprises que l'organisation mozilla.org ne sert pas seulement les désirs des ingénieurs de Netscape, mais sert plutôt les désirs de tous les contribuants au projet Mozilla, peu importe qui ils sont. Et c'est certainement vrai. Mais puisqu'il y a eu très peu de contribution de gens ne travaillant pas pour Netscape, la distinction est restée quelque peu académique...

Maintenant, pour être juste, en cette première année, nous avons fait quelques très bonnes choses :

Nous avons montré au monde comment faire fonctionner un grand projet de logiciel ouvert. En plus, nous avons entretenu un niveau élevé de communication entre des contribuants géographiquement et administrativement séparés et les autres parties intéressées. Nous avons fait la transition d'un modèle de développement fermé et propriétaire à un modèle public. Nous avons prouvé que c'était réalisable.

Bien que nous n'ayons pas obtenu un tas de participation sous forme de code source, nous avons obtenu beaucoup de retours sur les directions logicielles à prendre. Et des retours justes au bon moment peuvent facilement avoir beaucoup plus de valeur que du code source. En faisant un développement ouvert et "vivant dans un bocal à poissons", je crois que Netscape a pris de meilleures décisions des directions de développement qu'elle aurait pu prendre autrement.

Nous avons libéré le code source d'un certain nombre d'outils auxiliaires, comme notre 'bug system', notre 'source-control interface', et notre 'build tools'. Dans leur catégorie ce sont de très bons outils (et complets!). Bien qu'ils nous aient été critiques dans le développement de Mozilla, nous les avons créés pour supporter Mozilla, mais ils ne sont pas liés à Mozilla et d'autres les trouvent utiles à leurs propres projets sans rapport avec Mozilla. Ces outils et le modèle de développement qu'ils représentent, sont une contribution de valeur qui leur est propre

Et simplement en étant ceux que nous sommes et en faisant ce que nous avons fait, nous avons joué un rôle important en offrant un modèle de développement ouvert à la vue du monde entier. Nous n'avons pas suscité l'intérêt des médias traditionnels de l'open-source (Linux le fait mieux), mais je pense que nous l'avons légitimé aux yeux de beaucoup de gens et que nous avons bien su en parler. L'association du nom Netscape à cette méthode de développement de logiciel a attiré l'attention de gens qui n'auraient pas manifesté d'intérêt autrement.

Mais malgré tout cela, la dernière année, nous n'avons pas atteint les objectifs que je m'étais fixés. Nous n'avons pas remanié le projet Mozilla afin de le transformer dans un projet de collaboration inter réseau dans lequel Netscape n'était qu'un des nombreux contribuants; et nous n'avons pas sorti un logiciel final. Pour moi, sortir quelque chose est la chose importante.

Peut-être que mes objectifs n'étaient pas très raisonnables, peut-être qu'il me semblait évident lorsque nous sommes partis sur ce projet qu'il nous prendrait plus d'une année d'atteindre ces objectifs, car nous ne l'avions jamais fait. Mais à ce moment ou même encore maintenant cela ne m'était pas évident. Ces objectifs que je visais n'ont pas encore été atteints.

Et donc j'abandonne.

Le projet Mozilla est devenu trop déprimant et trop douloureux, pour que je continue à travailler dessus. J'ai voulu que Mozilla devienne quelque chose qu'il n'ait pas et je suis fatigué de combattre et d'attendre des résultats. Je me suis senti très inefficace et ce n'est vraiment pas un bon sentiment.

Pour ceux qui choissent de continuer, je vous souhaite à tous bonne chance.

Je dois dire, cependant qu'il est préférable de démissionner d'AOL au lieu de démissioner de Netscape. Que je n'avais vraiment pas envie de quitter du tout. J'étais la 20ème personne embauchée à la Société de Mosaic Communications (L'honneur la Société) et de ces vingt, seulement cinq restent. La société que j'ai aidée à construire a bien été pendant quelque temps. Nous, Netscape, avons fait quelques choses d'extraordinaire. Mais nous aurions pu faire encore tant. Je sens que nous avons visé quelque chose de grand et nous l'avons manqué.

Ma plus grande crainte, et une des raisons pour laquelle je suis resté si longtemps, est que les gens regarderont les échecs de mozilla.org comme symbolisant l'open-source en général. Laissez-moi vous assurer quel que soit les problèmes que le projet de Mozilla a rencontrés ils ne sont pas la conséquence du non fonctionnement de l'open-source. L'open-source fonctionne, mais ce n'est certainement pas la panacée. S'il y a une leçon à tirer ici, c'est qu'on ne peut prendre un projet agonisant, le saupoudrer de levure magique "open-source" et s'attendre à ce que la pâte lève par enchantement. Le logiciel est quelque chose de difficile. Les questions ne sont pas que simples.


Faire un commentaire.

(Site mise a jour le mardi 16 mars 2004)

Ce document à une CSS valide Ce document est conforme au XHTML 1.0