Le responsable de la conception des produits de Thunderbird présente son point de vue concernant la direction que prendra le client de messagerie Thunderbird.Thunderbird approche rapidement de son 20e anniversaire en tant que client de messagerie autonome. Et à mesure que nous nous rapprochons de la sortie de Thunderbird 115 "Supernova" cette année, nous entendons de plus en plus souvent une certaine question :
"Pourquoi Thunderbird a-t-il l'air si vieux, et pourquoi met-il si longtemps à changer ?" ~ Un pourcentage notable d'utilisateurs de Thunderbird
C'est certainement une question valable, alors prenons le temps d'y répondre !
En tant que responsable de la conception des produits de Thunderbird, j'ai un bon aperçu de ce qui se passe et de la direction que prennent les choses. Considérez cet article (et la vidéo d'accompagnement ci-dessous) comme la première peinture d'une fresque plus complète montrant la direction que prend Thunderbird, et pourquoi certaines des choses que nous faisons peuvent sembler contre-intuitives.
Certains des points de discussion ci-dessous peuvent diviser. Ils pourraient toucher une corde sensible. Mais nous croyons qu'il faut être transparent et ouvert sur notre passé et notre avenir.
3 objectifs pour les 3 prochaines années
Avant d'entrer dans le vif du sujet, commençons par l'avenir. Nous pensons qu'il est brillant !
Avec la sortie de Thunderbird 115 "Supernova" cette année, nous faisons bien plus qu'une simple sortie annuelle. Il s'agit d'une refonte moderne du logiciel, tant sur le plan visuel que technique. Thunderbird fait l'objet d'un remaniement massif depuis la base pour se débarrasser de toutes les dettes techniques et d'interface accumulées au cours des 10 dernières années.
Ce n'est pas une tâche facile, mais elle est nécessaire pour garantir la viabilité du projet pour les 20 prochaines années.
Se contenter de "rajouter des trucs par-dessus" une architecture en ruine n'est pas durable, et nous ne pouvons pas continuer à l'ignorer.
Au cours des 3 prochaines années, le projet Thunderbird vise ces objectifs principaux :
- Rendre la base de code plus légère et plus fiable, réécrire le code ancien, supprimer la dette technique.
- Reconstruire l'interface à partir de zéro pour créer un système de conception cohérent, ainsi que développer et maintenir une interface utilisateur adaptable et extrêmement personnalisable.
- Passer à un calendrier de publication mensuel.
À l'intérieur de ces objectifs, il y a des centaines d'étapes très importantes qui doivent être franchies, et tout réaliser demandera beaucoup de temps et de ressources.
Thunderbird : Une vieille tour LEGO fragile
C'est quoi toute cette histoire de "dette technique" ? Pourquoi faut-il la reconstruire ? Parlons de la façon dont nous en sommes arrivés là, et éclairons l'histoire complexe du développement de Thunderbird.
Thunderbird est une application monolithique qui a été développée par des milliers de personnes au cours de deux décennies. Apporter des changements majeurs - comme nous le faisons avec Supernova - nécessite une réflexion très approfondie.
En lisant ceci, vous pouvez imaginer Thunderbird comme une énorme tour de Lego que vous avez construite. Mais des années plus tard, vous vous rendez compte que la pièce centrale cruciale qui sert de fondation utilise la mauvaise forme. Si vous remplacez seulement cette pièce, toute la tour s'écroulera. Vous devez donc retirer lentement les blocs situés au-dessus pour empêcher la tour de s'effondrer. Ensuite, une fois que vous avez atteint la pièce centrale, vous la remplacez, puis vous rajoutez les pièces que vous avez retirées avec des pièces légèrement différentes.
Pourquoi ? Parce que les pièces d'origine ne conviennent plus.
Comment est fabriqué Thunderbird ?
Thunderbird est littéralement un ensemble de codes fonctionnant au-dessus de Firefox. Tous les onglets et sections que vous voyez dans nos applications ne sont que des onglets de navigateur avec une interface utilisateur personnalisée.
Nous aimons utiliser Firefox comme architecture de base, car il permet de tirer parti de toutes les bonnes choses qu'il renferme. Des choses comme la prise en charge multiplateforme, le moteur de rendu web Gecko, le compilateur JavaScript Spidermonkey, etc.
Ce faisant, Thunderbird peut suivre Firefox dans son cycle de publication, hériter des correctifs de sécurité, bénéficier de la prise en charge des extensions, et bien plus encore.
Évidemment, cela est plus complexe, car il faut beaucoup de C++, de JS, de CSS et de XHTML pour s'assurer que tout fonctionne correctement. L'utilisation d'une architecture de base solide comme Firefox est le point de départ idéal.
Malheureusement, cette approche a un coût élevé.
N'oubliez pas que Thunderbird est actuellement développé activement par un peu plus d'une douzaine de développeurs principaux. Firefox compte des centaines de développeurs qui modifient et améliorent constamment les choses au quotidien.
Vous pouvez donc imaginer combien de fois par semaine les choses se détraquent soudainement dans Thunderbird parce qu'une interface C++ a été renommée, qu'une API a été dépréciée ou qu'une bibliothèque de construction a été mise à jour. Suivre les changements en amont n'est pas une tâche simple, et parfois, cela prend la plupart de nos journées.
"Thunderbird est-il mort ?"
Ce coût - et ce dont je parlerai ensuite - est la raison pour laquelle Thunderbird a accumulé une énorme quantité de "dette technique" à rembourser.
Au fil des années, Mozilla a beaucoup changé d'orientation, investissant de moins en moins de ressources dans le développement de Thunderbird. Le 6 juillet 2012, la Fondation Mozilla a annoncé qu'elle ne se concentrerait plus sur les innovations pour Thunderbird, et que le futur développement de Thunderbird passerait à un modèle...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.
