L’évolution de l’ingénierie des versions chez Mozilla depuis mi-2006
John O’Duinn, directeur de l’ingénierie des versions (Release Engineering), quitte Mozilla au 31 décembre. Dans le billet d’annonce qu’il publie sur son blog, il revient sur l’évolution de la création et de la diffusion des logiciels chez Mozilla à laquelle a dû faire face son équipe de RelEng depuis qu’il l’a rejoint il y a six ans et demi.
Six ans et demi, ça veut dire mi-2006. Rappelez-vous. Mozilla sortait des mises à jour de Firefox 1.5, tout en préparant sa version 2. Un autre monde.
Souvenons-nous avec John et récoltons au passage quelques chiffres sur Mozilla aujourd’hui :
1) À quelle vitesse Mozilla peut-elle diffuser une version de sécurité zero-day ?
C’était : 4-6 semaines
Maintenant : 11 heures
2) Combien de temps pour diffuser une version « avec nouvelles fonctionnalités » ?
C’était : 12-18 mois
Maintenant : 12 semaines
3) Combien de check-in par jour ?
C’était : ~15 par jour
Maintenant : 350-400 par jour (pic à 443 par jour)
4) Mozilla a embauché plus de développeurs
augmentation du nombre de développeurs x8
augmentation du nombre d’enregistrements x21
Ce qui est à retenir ici, c’est que l’infrastructure s’est améliorée plus vite que la capacité de Mozilla à embaucher des développeurs
5) Mozilla a ajouté mobile + B2G
C’était : pour ordinateur de bureau uniquement
Maintenant : pour ordinateur de bureau + mobile + système d’exploitation pour téléphone – dont beaucoup sont diffusés depuis *exactement* le même jeu de modifications
6) Outils actualisés
C’était : CVS
Maintenant : hg *et* git (à part nous, je ne connais aucune autre organisation qui produit depuis deux systèmes de révision de code source *différents*)
7) Durée de vie des ingénieurs de versions (Release Engineers) humains
C’était : 6-12 mois
Maintenant : deux-pertes-en-6-ans (3 moi y compris)
Cette stabilité de l’équipe a permis aux gens de se concentrer sur des améliorations plus importantes et à plus long terme – quelque chose que les nouvelles recrues ne peuvent généralement pas faire tout en apprenant à garder les lumières allumées.
Il s’agit des meilleures infrastructure et équipe dans l’industrie du logiciel que je connaisse – si quelqu’un lisant ceci en connaît de meilleures, veuillez me les présenter ! (Avertissement : il y a une grande différence entre les gens qui mettent à jour un/des site(s) par rapport à ceux qui diffusent des logiciels qui sont installés sur le bureau ou les mobiles des clients… ou même des systèmes d’exploitation pour téléphone entiers !).
À proprement parler, l’ingénierie des versions (Release Engineering) est un multiplicateur de forces pour Mozilla – cette infrastructure nous permet de travailler, et de rivaliser, avec de beaucoup plus grandes entreprises. En tant qu’organisation, nous avons maintenant des opportunités d’affaires qui n’étaient auparavant tout simplement pas possibles.
Merci à John O’Duinn pour le travail abattu et les progrès de l’infrastructure de Mozilla et des Mozilliens de son équipe. Voyez l’éloge de l’homme qu’en fait Chris Cooper.
Voyez aussi une partie du travail de l’équipe de RelEng cette semaine collectée par Ben Hearsum.