Retrouvez cet article dans : Linux Magazine 89
Interview réalisée par Erwan Velu via mail le 14 septembre 2006, traduite de l’anglais, puis relue par Anne Nicolas.

GLMF : Bonjour Hans Peter Anvin. Pourriez-vous vous présenter en quelques mots aux lecteurs de GLMF ?
Hans Peter Anvin : Bonjour, mon nom est H. Peter Anvin. Je me suis impliqué dans Linux depuis 1992 ce qui fait de moi un des premiers contributeurs. Au fil des ans, j’ai fait pas mal de choses autour du noyau Linux, mais aussi dans l’environnement utilisateur (userspace). Je suis principalement connu pour le site kernel.org, mais aussi Syslinux, klibc. J’ai également commencé la tribu Linux chez Transmeta où Linus Torvalds a travaillé pendant quelques années. Je suis né et j’ai grandi en Suède, ma langue natale est donc le suédois.
----------------------------
GLMF : Depuis 10 ans, vous êtes le leader d’un projet que chaque utilisateur Linux a utilisé au moins une fois, et ce, parfois sans même le savoir. Le projet SYSLINUX est principalement utilisé comme " bootloader " pour cédérom. Pourriez-vous nous expliquer ce qui vous a poussé à démarrer ce projet ?
HPA : J’ai démarré le projet SYSLINUX en 1994 après une installation foireuse. Lorsque j’ai débuté sur Linux, la seule " distribution " qui existait utilisait deux disquettes (boot et root) ; le reste du système vous le bricoliez vous-même. Et par-dessus tout, le seul système de fichier qui était supporté était " Minix " et ne permettait pas de dépasser les 64 Mo. Courant 1994, une compagnie nommée " Softlanding " avait développé une distribution nommée " SLS " et j’allais l’utiliser pour remplacer mon bricolage. C’était la première fois que j’avais une distribution Linux sur cédérom. Malheureusement, l’installation a échoué car leur disquette n’avait pas de pilote pour ma carte SCSI et donc il ne pouvait pas accéder au lecteur de cédérom. J’ai pensé que cela serait une bonne idée si quelqu’un pouvait remplacer le noyau présent sur la disquette (c’était bien avant que les PC puissent démarrer sur cédérom, mais aussi avant les modules) sans pour autant avoir besoin d’un système Linux pour le faire.
----------------------------
GLMF : D’après vous, qu’est-ce qui fait que ce projet est devenu incontournable pour booter les cédéroms ?
HPA : En fait, le composant que tout le monde utilise pour les cédéroms bootables est appelé " ISOLINUX ". Celui-ci fut développé un peu plus tard. La raison pour laquelle tout le monde l’utilise aujourd’hui est qu’il est très facile de réaliser un cédérom bootable avec ISOLINUX et mkisofs. Aujourd’hui, bien entendu, il est bien testé et fonctionne plutôt bien sur la plupart des machines à l’exception des machines possédant des BIOS de très mauvaise qualité.
----------------------------
GLMF : Pourquoi avez-vous choisi d’utiliser la licence GPL pour vos travaux ? Quelle a été la raison pour le rendre libre ?
HPA : A l’origine, j’ai utilisé la licence GPL, car c’était celle que Linux utilisait. Rendre ce projet libre, c’était surtout pour me simplifier la vie. Si j’avais essayé de faire de l’argent avec, jamais le projet n’aurait fonctionné. Ma motivation n’était pas de me faire de l’argent, mais plutôt de permettre aux gens d’avoir une installation de Linux moins pénible, surtout quand les choses vont mal. Ceci dit, tout le travail que j’ai fait n’a pas été soumis à la GPL. Selon la cible des utilisateurs, je pense qu’il y a toute une suite de licences adaptées. Selon les cas, mon travail est réalisé sous licence MIT, LGPL ou GPL ou même la " nouvelle licence BSD ". L’utilisation des licences MIT/BSD ou LGPL/GPL dépend largement de la réponse à la question suivante : " Serais-je fâché si quelqu’un me prenait mon logiciel et le commercialisait sans mon consentement ? ". La réponse à celle-ci est " non " pour la plupart des projets et " oui " pour quelques-uns.
GLMF : Quel cursus universitaire avez-vous suivi ? Cela vous a-t-il été utile pour votre travail et vos projets ? Avez vous appris l’informatique/programmation par vous-même ?
HPA : J’ai étudié à l’université de Northwestern près de Chicago. J’ai des diplômes en informatique et en électronique.
J’ai d’abord appris à programmer lorsque j’avais 8 ans sur un micro-ordinateur 8-bit suédois appelé " ABC80 ". J’avais l’habitude de m’asseoir pendant les récréations pour écrire de l’assembleur à la main.
Si cela ne fait pas de moi un geek, je ne sais pas ce qui pourrait le faire. Pendant mon adolescence, j’ai également conçu des circuits électroniques. A propos, j’ai récemment recréé l’ABC80 sur un FPGA. C’était un projet très amusant.
Puis, je suis allé au lycée. J’étais déjà un développeur assez confirmé. Cependant, je n’avais pas une très bonne formation théorique. J’ai raté la plupart des cours d’introduction pour directement attaquer les choses théoriques compliquées ; c’était bien.
Je voulais avoir un doctorat à l’université de Northwestern, mais j’étais déjà très impliqué dans Linux, et j’ai réalisé que si je devais continuer dans la recherche, ce serait sur les systèmes d’exploitation ou sur les compilateurs. Malheureusement, aucun professeur ne traitait de ces sujets, j’ai donc décidé de quitter l’université.
----------------------------
GLMF : En 1999, vous avez démarré un projet annexe nommé " PXELINUX ". Celui-ci va aussi devenir un projet incontournable pour ceux qui veulent utiliser PXE pour démarrer un ordinateur à travers le réseau. Quel type de besoin vous a poussé à démarrer ce projet et surtout comment est-il devenu aussi célèbre ?
HPA : En fait, en 1999, c’était vraiment la honte que les PC étaient à peu près les seuls ordinateurs qui ne pouvaient pas démarrer en utilisant le réseau ; vous deviez acheter une ROM spécifique à votre matériel et votre système d’exploitation. C’était vraiment le bazar. Intel a réalisé que c’était une raison pour laquelle les gens achetaient d’autres machines (plus spécifiquement des Sun SPARC). Ils ont donc utilisé leur force pour imposer un standard.
Malheureusement, le standard qu’ils ont imposé, PXE, pourrait être décrit comme dément. Tout ce qui peut être fait est mal fait. Par-dessus ça, le logiciel qui était fourni et qui était supposé faire fonctionner ce nouveau standard était tellement buggé que la plupart des fonctionnalités n’étaient pas utilisables.
Il y avait donc besoin d’un petit bootloader de second niveau (petit, parce que certaines piles PXE explosent si vous essayez de télécharger plus de 32 K) et qui procurerait toutes les fonctionnalités que l’on attend d’un bootloader. Comme j’avais déjà SYSLINUX qui était déjà petit (il était conçu pour des disquettes), j’ai réalisé que le même code source pourrait être utilisé, plutôt que de repartir de zéro. L’avantage principal était que toutes les fonctionnalités de SYSLINUX étaient disponibles dans PXELINUX.
----------------------------
GLMF : Depuis la version 3.00, un nouveau programme nommé " EXTLINUX " est apparu, mais reste nettement moins connu et utilisé que les autres projets (isolinux/pxelinux). D’après vous, qu’est ce qui fait qu’il est moins connu et utilisé que GRUB ou LILO ?
HPA : J’aimerais bien le savoir. EXTLINUX fonctionne sur plus de configurations que GRUB, mais GRUB est disponible depuis plus longtemps et les distributions Linux sont très réticentes au changement.
----------------------------
GLMF : Dans le processus de développement de {pxe|ext|iso|linux}, quelle est la part de contribution de la communauté ? Est-ce suffisant ? Si non, quel type de développeur recherchez-vous ?
HPA : J’ai écrit la plupart du code du projet SYSLINUX. Ceci est en partie dû au fait que je suis très difficile sur la qualité du code, mais aussi parce que le cœur du produit est écrit en assembleur (nécessaire pour avoir un résultat compact). Peu de personnes ont un bon niveau en assembleur et, souvent, lorsque je reçois des patchs brillants de la part de certains utilisateurs, ils sont trop risqués.
Plus récemment, j’ai ajouté à SYSLINUX un environnement en plein développement appelé " COM32 ". Cela va permettre de rendre plus facile l’ajout de fonctionnalités et permettre ainsi à la communauté de contribuer plus largement. J’envisage même de remplacer une partie du code écrite en assembleur par du C. C’est un projet coûteux en temps et je ne suis pas sûr de l’avoir.
Est-ce assez ? Par rapport au temps que j’ai passé sur SYSLINUX, c’est relativement limité. Je pense que ce n’est pas assez dans le sens où je ne peux pas faire tout ce que j’aimerais réaliser dans ce projet. J’aimerais tout particulièrement voir plus de personnes pour compléter la documentation. La documentation de SYSLINUX n’est pas en très bon état, et ce, même après 12 ans.
GLMF : Combien de temps attribuez-vous à vos projets ? (par semaine ou par jour)
HPA : Cela varie largement. Je passe environ 20 heures par semaine à mes travaux autour de Linux, mais c’est définitivement compliqué de tout concilier dans sa vie, cela implique bien évidemment mon travail et ma famille.
----------------------------
GLMF : Vous étiez le webmaster de kernel.org, qu’est ce qui vous a fait arrêter cette tâche ?
HPA : Je suis toujours webmaster. Cependant, j’ai maintenant une équipe de cinq volontaires y compris moi-même. Ces derniers temps, la plupart du travail technique sur kernel.org est réalisé par les autres membres. Pour ma part, je m’occupe du sponsoring et des aspects juridiques.
----------------------------
GLMF : Est-ce que le travail que vous réalisez sur ces outils est lié à certains besoins que vous avez dans votre travail ?
HPA : Quelques-uns, oui.
----------------------------
GLMF : Est-ce que votre société utilise votre travail ? Si oui, vous donne-t-elle du temps pour les développer ?
HPA : Je pense qu’il est certain que chaque société qui utilise Linux utilise des outils que j’ai réalisés. La plupart des sociétés où j’ai travaillé étaient plutôt favorables, mais le temps que l’on me laissait pour ces projets était très variable. Transmeta, par exemple, supportait ces activités, mais après un changement de direction, on m’a demandé d’arrêter mes activités sur Linux. J’ai donc décidé que quitter cette entreprise.
----------------------------
GLMF : Est-ce que votre société aide au développement d’initiatives Opensource ?
HPA : Je suis désolé, je ne peux pas commenter les activités de mon entreprise.
----------------------------
GLMF : Depuis 10 ans, vous offrez à la communauté open source des outils incontournables. Que nous préparez-vous pour la suite ?
HPA : Ca fait plutôt 14 ans et même plus si l’on compte quelques outils libres que j’ai écrits pour MS-DOS. Mon projet principal pour le moment est de faire rentrer klibc dans l’arbre de développement du noyau et aussi quelques développements sur SYSLINUX. SYSLINUX 3.30 aura un support graphique avancé : c’était une demande récurrente. J’ai aussi quelques projets complètement nouveaux que j’aimerais commencer prochainement, mais je ne peux pas en parler pour le moment.
----------------------------
GLMF : Quelle question étiez-vous certain que je vous poserai et que je n’ai pas posée ?
HPA : Une chose sur laquelle j’aimerais que les gens se pose des questions est la " partie obscure " de l’Open Source. J’ai passé beaucoup de temps et malheureusement d’argent à travailler sur des projets open source, mais, malheureusement, certains ne respectent pas ça. Régulièrement, je reçois des critiques de la part des utilisateurs qui régulièrement me demandent de régler des problèmes qui leur sont spécifiques, et ce, sans contrepartie, bien entendu. Plusieurs fois, j’ai vraiment évalué la possibilité de tout arrêter parce que cela devenait trop pénible, heureusement ça s’est passé.
Si vous utilisez du logiciel open source, s’il vous plaît, prenez un peu de temps pour remercier les développeurs. Ce n’est pas la peine d’envoyer de l’argent ou du matériel, mais parfois un email sympa ou une carte postale, c’est bien, voire mieux. Un simple merci donne envie de continuer. Nous faisons ce travail parce que les utilisateurs apprécient ce travail. S’il n’y avait pas d’utilisateurs, tout cela ne serait que du temps perdu.
----------------------------
GLMF : Je voudrais vous remercier d’avoir accepté de répondre à cette interview pour permettre aux lecteurs de mieux vous connaître.
HPA : Merci d’avoir fait cette interview. C’est toujours sympa de rencontrer les utilisateurs. Et après tout, s’il n’y avait pas d’utilisateurs, tout le monde open source serait inutile.
Retrouvez cet article dans : Linux Magazine 89