INTERVIEWS 
 
Rob Mensching
Développeur
Microsoft
Rob Mensching (Microsoft)
"L'Open Source n'est qu'une manière de construire une communauté de développeurs"
Entretien avec l'un des principaux développeurs de l'outil WiX, le tout premier projet Microsoft disponible sous CPL, licence reconnue par l'Open Source Initiative.
25/04/2005
 
  En savoir plus
Dossier Logiciels libres/Open Source
  Sur le Web
Windows Installer XML (WiX)
Vous êtes l'un des principaux développeurs du tout premier projet Microsoft disponible sous CPL, une licence reconnue par l'Open Source Initiative. Qu'est-ce qui a mené à cette décision, comment avez-vous convaincu vos supérieurs, et quelles ont été les réactions au sein et en dehors de Microsoft ?
Deux choses ont fait que l'outil WiX est devenu le premier projet Microsoft sous licence Open Source. Tout d'abord, certains de mes supérieurs à Microsoft étaient à la recherche d'un projet pouvant être diffusé en Open Source. Ensuite, j'avais développé WiX en interne, mais à l'aide de nombreuses méthodes Open Source, je voulais rendre le projet public. Après avoir discuté avec les juristes pour trouver la licence appropriée à ce que je voulais faire de WiX, j'ai été mis en contact avec plusieurs membres de la Shared Source Initiative, responsables de la mise en place de projet Open Source chez Microsoft. Il a rapidement été clair que WiX était le projet parfait à passer en Open Source . Ainsi, il ne m'a pas été très dur de convaincre mon entourage de source WiX en Open Source , j'ai juste eu à parler aux bonnes personnes.

Au sein de Microsoft, je n'ai reçu que des encouragements et des félicitations pour le passage de WiX en Open Source. Le soutien interne et l'excitation autour du projet sont restés constants depuis un an. En dehors de Microsoft, l'accueil s'est composé d'un mélange d'excitation, d'incrédulité et de critiques envers Microsoft, qui n'est pas censé lancer de projet pouvant opérer comme les autres projets Open Source. L'an passé a vu les critiques et incrédules disparaître au profit d'une reconnaissance de WiX en tant que projet Open Source typique.

Microsoft est connu pour avoir un grand nombre d'excellents ingénieurs à disposition. Qu'attendiez-vous d'un passage à l'Open Source, que vous ne pouviez avoir avec les ressources disponibles ?
Simplement, WiX n'a pas et n'a jamais eu d'équipe de développement Microsoft officielle. À la base, il a été écrit sur mon temps libre. Étant donné que je mettais le code source librement disponible en interne, d'autres développeurs Microsoft m'ont rejoint pour m'aider à réduire les bogues, ajouter des fonctionnalités et aider les nouveaux utilisateurs. En fait, WiX fonctionnait en tant que projet Open Source au sein de Microsoft pendant quelques années, jusqu'à ce qu'il soit disponible publiquement. Passer d'un code ouvert, mais interne à Microsoft, à un code ouvert au public était dans la continuité des choses.

Le succès de WiX peut encourager d'autres projets Microsoft à considérer l'ouverture de leur code"
Un an après, le projet a-t-il réellement bénéficié de son ouverture ?
Absolument, et ce de deux manières différentes. Tout d'abord, les nouveaux utilisateurs de WiX nous fournissent une plus large couverture des besoins et cas de figure possibles, ce qui nous aide à trouver et résoudre des bogues. Ces nouveaux utilisateurs nous fournissent également des idées d'opportunités et scénarios que notre outil pourrait reconnaître. De manière fondamentale, WiX s'améliore au fur et à mesure que les développeurs l'utilisent.

Ensuite, WiX a été reconnu au sein de Microsoft comme un projet Open Source réussi. Souvenez-vous que l'un des buts de WiX était de mieux comprendre comment l'Open Source pouvait marcher à Microsoft. Le succès de WiX peut encourager d'autres projets Microsoft à regarder d'un autre oeil l'ouverture de leur code.

Ce projet a lancé une poignée d'autres projets Microsoft dans le monde de l'Open Source. Cela pourrait-il devenir une habitude pour les petits projets Microsoft ? Quels autres projets Microsoft pourraient profiter d'une telle licence, ou visent même à passer en Open Source à l'heure actuelle ?
L'équipe de la Shared Source Initiative est constamment à la recherche de nouveaux projets comme WiX, WTL et FlexWiki, à passer en Open Source. Je ne suis pas en mesure de connaître la liste des projets qu'ils souhaitent diffuser, ni leur taille. Je suis déjà bien occupé à gérer ma propre communauté.

L'équipe de la SSI compte-elle prendre plus de risques en diffusant du code plus important ?
Je n'en fais pas partie, mais autant que je le comprenne il ne s'agit pas de prendre des risques, mais de partager du code. La SSI a déjà sorti les codes sources de quelque 70 projets Microsoft différents, y compris au sein de Windows et Office, sous des licences variées.

Vous voyez-vous comme un partisan de l'Open Source, ou simplement quelqu'un qui utilise la bonne licence pour le bon projet ?
Excellente question. Je pense me voir comme un partisan de la construction de communautés. La licence -Open Source, code source partagé, code source fermé- n'est qu'une manière de mettre en place les règles par lesquelles la communauté devra vivre.

Par exemple, diffuser le code source d'un projet sous une licence Open Source est une excellente manière de construire une communauté de développeurs. Cependant, cela ne veut pas dire que vous devez diffuser le code source pour construire une communauté. Fondamentallement, la communauté WiX n'est qu'un groupe de développeurs travaillant ensemble sur un outil qui leur facilite la vie. On ne se réunit pas uniquement parce que le code est sous licence CPL.

Je pense donc que les communautés sont ce qui importe, et que l'Open Source n'est qu'une manière de construire une communauté de développeurs.

Le succès du projet WiX, et la publicité qu'il a générée, a-t-il changé quelque chose à la vision qu'à Microsoft de l'Open Source ?
J'aime à le croire. Je ne crois pas pouvoir montrer quoi que ce soit du doigt et affirmer : vous voyez ? Microsoft a fait ça parce que l'outil WiX a été diffusé en Open Source. Cependant, je pense que ce succès a démontré que l'OS est une autre manière pour Microsoft de participer auprès de la communauté de développeurs.

Vous avez écrit un guide pas à pas pour mettre un projet sur SourceForge. Quels sont les outils et sites Web que vous considérez efficaces dans le cadre d'un développement Open Source ?
Pour construire une communauté, vous devez communiquer. Personnellement, je préfère passer par l'e-mail. Vous remarquerez que le plus gros de la communication autour de WiX se fait entre les utilisateurs, et au sein de la mailing liste. Mais j'ai vu d'autres projets réussir avec un forum et/ou un wiki. Je tâtonne encore pour voir la meilleure manière d'utiliser mon blog pour communiquer, mais c'est un média nouveau et intéressant. Enfin, une chose que je n'ai pas faite pour WiX : avoir une page d'accueil informative et attirante.

Les communautés de développeurs ont également besoin de suivre le code source, les bugs, les demandes de fonctionnalités, et les versions nocturnes. Vous avez ensuite besoin d'un système pour construire le code. Ce sont les besoins centraux de n'importe quel projet de développement. Je n'ai donc rien de spécial à dire ici.

De même, je ne crois pas que le développement d'un logiciel Open Source soit différent du développement sous n'importe quelle licence. Trouvez les outils qui font ce que je décris ci-dessus, et partez de là...

Qu'utilisez-vous pour vos projets -langages, méthodes, outils... ?
L'outil WiX est un mélange de codes C# et C++. Nous utilisons les SDKs que Microsoft met librement à disposition, comme le Platform SDK et le .NET Framework SDK. Pour l'heure, notre système de construction est basé sur NMAKE.EXE qui fait partie du Microsoft Platform SDK, et nous étudions les alternatives en ce moment même. À la base, j'aime que le système de build soit aussi simple que possible.

Pour ce qui est des méthodologies de programmation, je ne pense que nous fassions quoi que ce soit d'extraordinaire, certainement pas de quoi créer un scoop. Je suis d'accord avec l'idée du sortez vos projets tôt et mettez souvent à jour. Nous faisons une relecture par deux du code que nous ajoutons, et nous avec un jeu rudimentaire de tests.

  En savoir plus
Dossier Logiciels libres/Open Source
  Sur le Web
Windows Installer XML (WiX)
Enfin, nous utilisons SourceForge pour les besoins du projet WiX en matière de suivit et de communication. SourceForge fournit les listes de diffusion, CVS pour le contrôle de version, des outils pour suivre les bugs et les demandes, et un système de diffusion de fichier pour nos binaires. Tout cela marche très bien, bien que je ne suis pas un grand fan l'entrée de données dans des formulaires Web, qui font que la gestion des bugs et la diffusion de binaires dans SourceForge peuvent se révéler rébarbatifs parfois.

Quel pourrait être le futur de l'Open Source au sein de Microsoft ?
Je m'occupe personnellement d'améliorer WiX et la communauté qui l'entoure. Pour le reste, tout reste possible.

 
Propos recueillis par Xavier Borderie, JDN Développeurs

PARCOURS
 
 
Rob Mensching travaille depuis plus de 6 ans chez Microsoft. Après trois années passées au sein de l'équipe Windows Installer sur les installateurs d'Office XP et Office 2003, il est aujourd'hui développeur au sein de l'équipe Windows Component Servicing, qui travaille sur Longhorn. Rob est le chef de projet de l'outil WiX.