Interview avec Rasterman

Rasterman est une figure de marque dans le monde Linux. Son travail sur Enlightenment et Imlib en font l'un des programmeurs les plus connus au monde. Mais qui se cache derrière le pseudo du rasterman, quels sont les projets en cours et comment voit-il le futur de Linux ? Autant de questions auxquelles il a bien voulu nous répondre.

Avant toute chose, parlons un peu de toi. Quel est ton vrai nom ?

Carsten Haitzler.

D'où vient ton surnom de Rasterman ?

Il n'y a pas de véritable sens à ce nom. Je l'ai pris au début d'Internet comme la plupart des gens pour l'email, l'IRC, etc. A l'époque, les vrais noms n'étaient pas en vogue et j'ai donc utilisé Rasterman plutôt que Carsten Haitzler. Tout le monde m'appelle encore Raster aujourd'hui et cet alias m'est resté collé.

Comment l'histoire a-t-elle commencée ? Es-tu un hacker-né ?

Hummmm, voyons voir... Je suis vraiment un artiste dans l'âme. Ma mère est une artiste et j'ai hérité de ses talents pour le dessin, la peinture et de l'art de créer des choses, mais de façon un peu plus pratique. J'ai toujours voulu que mes dessins ressemblent le plus possible à des photographies. Je voulais également qu'ils prennent vie, qu'ils bougent et interagissent... J'ai découvert l'informatique lorsque j'avais 7 ans et je suis passé à la pratique l'année suivante. Je me suis rendu compte qu'elle permettait de donner vie aux images, de les déplacer et de les faire réagir en fonction de sa volonté. J'étais fasciné et j'ai appris à les contrôler. J'ai commencé avec un VIC 20 (c'est ce qu'on avait en classe), puis est arrivé le C64 et enfin, j'ai eu mon propre Amiga à 12 ans. J'ai joué avec pendant plusieurs années, j'ai appris la programmation en assembleur et j'ai lu toutes les spécifications du matériel. Je n'ai véritablement utilisé mon premier PC qu'en 1996 et j'ai découvert combien Unix était personnalisable et "hackable" (avec ses compilateurs, bibliothèques, headers et les tonnes de code source). Fasciné à nouveau, je passais mon temps à lire les man pages et à analyser les sources provenant d'autres personnes... Autant de temps perdu sur mes études, mais ça a finalement payé... J'ai appris le C. J'ai assimilé la programmation Xlib et finalement eu un PC à la maison (sous Linux car je n'aimais simplement pas Dos / Windows). C'est à ce moment que j'ai commencé à écrire xflame, enlightenment, imlib, rxvt-xpm, etc.

Combien de personnes travaillent sur E ? Le projet a-t-il besoin d'aide ?

De l'aide, oui. Tous les projets ont besoin d'aide, la plus grande, la meilleure... Nous avons de l'aide, un petit peu ici et là, des patchs, des fichiers .po, etc. Mais il n'y a finalement que quelques "gros" contributeurs qui travaillent sur E. Cela demande un effort individuel que les gens trouvent difficile à faire :)

Quel est le but spirituel d'E ? Rendre Linux plus fun ?

C'est un peu plus personnel en fait. Je veux mon propre "perfect desktop environment", quelque chose qui ressemble davantage à l'Amiga... Mais je comprends que toutes les personnes ne sont pas identiques. Donc, sur le chemin, je rends toutes les options configurables. Ainsi, tous peuvent avoir ce qu'ils veulent :) Au final, je veux qu'E soit un desktop shell puissant, agréable, lisse, sans coutures... qui prend place autour de vos applications (qu'elles soient KDE, Gnome, X, Motif est sans importance). E doit rendre les applications plus fun, plus plaisantes et plus puissantes...

A propos de fun, beaucoup de gens semblent dire que Linux devrait ressembler à Win9x pour être utilisable par l'utilisateur de base. E n'est-il que pour les personnes qui veulent oublier le monde MS ? Pour les geeks ?

Ces personnes sont dans l'erreur. Franchement, j'ai personnellement vu des CEO et des gestionnaires de compagnies "baver" (NDT : drool over) sur E et insister pour installer Linux car justement c'était différent. Ceci s'appelle la "product differenciation". Si Reebok, Nike, etc. décidaient de faire des clones des chaussures des autres, elles ne se vendraient pas. Ils font de la pub et rendent leurs chaussures plus fantaisistes, construisent une image... qui fait vendre. Ainsi, le client connaît la différence et est fier de posséder une chaussure différente. La même chose s'applique pour les voitures, les vêtements, etc. Avoir la même couleur de voiture que tous les autres dans la rue n'arrive pas, les gens veulent la couleur qu'ils aiment, le modèle qu'ils aiment...

La plupart de votre travail aujourd'hui est fait sur Imlib2. Quelles sont les nouveautés ?

Imlib2 est considérablement plus rapide sur plusieurs points. Elle est entièrement basée sur RGBA. Par exemple, elle garde le canal alpha et peut faire toutes les manipulations avec un alpha blending. Son code de scaling est plus rapide et de meilleure qualité - elle supporte les polices truetype anti-aliased (lissées). Elle possède également un système de chargement modulaire permettant de charger et d'enregistrer des images d'un format quelconque. Et ce, par simple ajout d'un chargeur dans un répertoire. Ainsi, toutes les applications utilisant Imlib2 peuvent subitement supporter ce format. Tous les chargements d'images peuvent être monitorés via des callbacks. J'ai sur mes cartes une accélération OpenGL prévue. Il est donc possible de rendre les opérations blend/scale/render BEAUCOUP BEAUCOUP BEAUCOUP plus rapides sur du matériel graphique 3D... Je suis sûr d'avoir manqué quelque chose. Pour être plus simple, il y a un monde de différences. Imlib1.x était conçu pour remplacer libXpm et ajouter du cache, une gestion saine de la couleur et le support du scaling. Imlib2 est une nouvelle bête conçue pour faire tout ce que les utilisateurs d'Imlib1.x voulaient mais qui n'avait jamais été prévu au départ.

Prépares-tu une arme secrète ? Comme un GL Enlightenment avec plein d'effets spéciaux (FX lumineux en icônisant une fenêtre...) ?

Voir plus haut :) Imlib2 est mon arme secrète... Et si j'ajoute une accélération OpenGL, elle ne sera pas simplement plus rapide, mais VRAIMENT TRES rapide. A partir de maintenant, tout dans E sera basé sur des polices true type anti-aliasées, l'alpha blending des images... :)

Faisons un grand saut dans le futur. Que vois-tu ? Quel est ton monde Linux parfait ?

Une Linux box sans mode texte - Elle boote et possède une GUI avant même que le kernel monte les périphériques... Je ne veux plus voir de mode texte. Je veux booter facilement sur un login graphique, un log avec une transition douce entre tout cela. Je veux un gestionnaire de fichier simple tout comme celui de l'Amiga (je travaille sur ça pour E 0.17) avec des icônes dans des fenêtres avec des barres de défilement si nécessaire, mais pas de barre d'outils, de barre de menu... Si j'ai besoin d'un menu, j'en aurai un qui soit contextuel avec le bouton droit de la souris. Tout sera configurable, personnalisable... Changer le look and feel de n'importe quoi... VOILA ce que je veux.

Propos recueillis via email par Denis Bodor
Linux Magazine France n° 14 - Février 00