Drupal : entretien avec Dries Buytaert

Quel est le point commun entre l’APRIL, Ubuntu-fr et Framasoft ? Une volonté commune de faire avancer le logiciel libre francophone, oui, certes, mais plus pragmatiquement ces trois vénérables institutions ont décidé, sans se concerter, de migrer cette année leur site vers Drupal. Enfin pour être précis, Framasoft n’y est pas encore mais on y travaille en coulisses.

Ce CMS, connu pour sa grande souplesse et modularité a en effet le vent en poupe actuellement[1]. Du coup nous avons eu envie d’en savoir plus en traduisant cette interview de son créateur, le belge Dries Buytaert.

Le créateur de Drupal imagine l’avenir de la publication Web en plug-and-play

Drupal’s Creator Envisions Web Publishing’s Plug-and-Play Future

Entretien conduit par Michael Calore – 19 juin 2008 – Webmonkey.com
(Traduction Framalang : Vincent, Olivier et Don Rico)

L’aventure de Dries Buytaert[2] commence à l’université quand il code un forum privé pour sa résidence étudiante. Neuf ans plus tard, ce modeste logiciel de forum est devenu Drupal, l’un des systèmes de gestion de contenu Open Source le plus populaire sur le Web, qui compte des milliers de contributeurs actifs. En mars 2008, Dries Buytaert se rapproche de l’entrepreneur Jay Batson, et ensemble ils fondent Acquia, entreprise commerciale qui propose un support technique aux inconditionnels de Drupal et la promotion, l’adoption ainsi que le développement de la plate-forme.

Webmonkey a rencontré Dries et Jay pour discuter de l’histoire de Drupal, des nouveautés à venir et du rôle que leur société va jouer dans l’avenir du projet.

Webmonkey : Dries, peux-tu nous raconter l’histoire de Drupal ? La naissance de l’idée et comment la plate-forme a pris corps ?

Dries Buytaert : C’est arrivé un peu par accident. En 1999, j’étais étudiant à l’Université d’Anvers en Belgique. Je faisais du développement Web en CGI et avec des « server-side includes » (programmation côté serveur), mais je voulais en savoir plus sur des technologies telles que PHP et MySQL. Au même moment, nous avons eu besoin d’un système de messagerie interne pour notre résidence étudiante. J’ai alors écrit un forum de discussion simple. Et une fois mon diplôme obtenu, j’ai décidé de mettre mon forum interne sur Internet.

Quand j’ai enregistré un nom de domaine pour ce projet, j’ai voulu inscrire le nom « Dorp », qui veut dire « petit village » en néerlandais. Mais à cause d’une faute de frappe je me suis retrouvé à enregistrer le nom de domaine Drop. Ça peut paraître étonnant, mais Drop.org était disponible, et comme c’est un mot anglais qui a plusieurs significations, j’ai décidé de le conserver.

Notre communauté d’utilisateurs originelle s’est éteinte assez rapidement, mais j’ai continué à y travailler en apportant de nouvelles fonctionnalités comme les flux RSS ou un système de notation du contenu par les utilisateurs. Les visites sur le site ont été de plus en plus nombreuses, et chacun apportait idées et des suggestions, comme par exemple modifier l’algorithme qui gère la modération des commentaires. À un moment, je recevais tellement de suggestions que j’ai décidé d’ouvrir le code source. C’était la version 1.0 de Drupal, qui est sortie début 2001.

Au moment de la sortie, j’étais assez sûr d’avoir un bon système. Je pensais qu’il tenait la comparaison avec les autres technologies Open Source telles que PHP-Nuke, et que c’était donc la bonne décision.

Webmonkey : L’un des aspects clés de la conception de Drupal est sa modularité. Les utilisateurs installent un noyau logiciel et ajoutent ensuite des fonctionnalités en installant des modules spécialisés. D’où vient cette idée d’architecture modulaire ?

Buytaert : Ça faisait partie de l’idée de départ. J’étais presque choqué que la plupart des autres systèmes ne proposent pas de conception modulaire – pour moi, avec mon background d’étudiant en informatique, ça me semblait très naturel. En ce temps-là, j’étais aussi impliqué dans le noyau Linux, à travailler sur les pilotes de réseau sans-fil. C’est à l’évidence aussi un système modulaire, j’y ai certainement puisé mon inspiration.

Jay Batson : Moi qui ai eu à faire à pas mal de systèmes de gestion de contenu avant de rencontrer Dries, je peux dire que la plupart des autres CMS ne viennent pas de personnes qui sont diplômés en informatique. Ils ont été élaborés par des web-designers ou des programmeurs qui étaient peut-être autodidactes et avaient bidouillé un système qui fonctionnait plus ou moins. Ils n’émanaient pas de personnes qui ont une réelle formation en informatique. C’est là une des grandes différences entre Drupal et les autres systèmes.

Webmonkey : La popularité de Drupal auprès de ceux qui cherchent à construire un site autour d’une sorte de réseau social n’est plus à démentir. Est-ce parce qu’il offre un contrôle précis de la gestion des utilisateurs, ou est-ce parce que Drupal est devenu populaire en même temps que les réseaux sociaux prenaient leur essor ?

Buytaert : À mon avis, la gestion des utilisateurs en est bel et bien la raison principale. Drupal est un système multi-utilisateurs depuis le début, mais la plupart des autres systèmes ne sont pas au niveau de Drupal pour ce qui est de la gestion des utilisateurs et des droits d’accès.

C’est un système très communautaire de par sa conception. Par exemple, le site d’origine Drop.org ressemblait beaucoup à Digg, où l’on pouvait soumettre des liens et voter pour chaque suggestion. Ce type d’interaction entre les utilisateurs a été une fonction clé de Drupal dès le départ. Au fil du temps, nous nous sommes éloignés de ces fonctionnalités. Le système de vote a été retiré du cœur du système, mais il existe toujours sous forme de module. À la place, nous évoluons vers une plate-forme capable d’en faire plus, aussi bien pour ce qui concerne la gestion de contenu Web traditionnelle que pour la partie « sociale ».

Batson : Ils ont aussi eu un coup de booster parce que Drupal 5 avait comme slogan « Plomberie pour la communauté ». Au moment où les sites communautaires gagnaient en importance, le système se vendait lui-même comme étant optimisé pour cette fonction.

À ce moment là également, beaucoup de monde est venu grossir les rangs de la communauté Drupal et contribuer au code. Ainsi, une part importante du code a été écrite autour de ces fonctionnalités communautaires. Je sais qu’à cette époque Dries consacrait l’essentiel de son temps à la gestion de ces contributions, afin de garder un noyau Drupal réduit tout en s’assurant que les fonctions clés étaient présentes et, en même temps, en insistant sur l’importance des modules.

Buytaert : J’ai toujours encouragé les autres à être créatifs dans leurs contributions au code de Drupal. Je pense qu’il est extrêmement important de ne brider personne. Ainsi, pour ceux qui veulent bâtir un réseau social ou un clone de Flickr, il est à mon sens essentiel que Drupal, en tant que plate-forme, les y aide. C’est ce que permet la conception modulaire.

Webmonkey : Parlez-nous d’Acquia, la société que vous avez fondée ensemble.

Batson : Notre but est de devenir pour Drupal ce que sont Red Hat et Canonical pour Linux. Si vous cherchez une version de ce logiciel Open Source avec support technique, vous venez nous voir et vous payez un abonnement. Pour le prix de l’abonnement, vous obtenez une distribution, un ensemble de services pour la maintenance et les mises à jour, plus un accès à notre centre de support technique. Si par exemple vous êtes responsable d’un site de média important dont toute la partie logicielle est construite autour de Drupal et que vous avez une question, vous aurez alors la possibilité de nous contacter directement par téléphone. Vous obtiendrez votre réponse en moins d’une heure, au lieu d’envoyer un courriel et de patienter une journée ou d’attendre sur IRC que la personne qualifiée se connecte. À l’opposé, notre service est également adapté aux petits sites qui ont besoin d’aide pour l’installation des modules ou pour gérer les mises à jour. C’est un modèle économique qui a déjà fait ses preuves dans l’Open Source.

L’autre rôle que peut jouer Acquia, c’est le support de la communauté des développeurs Drupal. Drupal a une merveilleuse croissance organique. En gros, la communauté double chaque année. C’est impressionnant, mais nous voudrions la voir croître d’un facteur dix.

Webmonkey : Combien de développeurs travaillent sur Drupal à l’heure actuelle ?

Buytaert : Pour Drupal 6, la dernière sortie importante en date, 900 personnes environ ont contribué au cœur. À titre de comparaison, c’est équivalent au nombre de personnes qui contribuent au noyau Linux. Il y a plus de 2000 modules additionnels et chaque module est maintenu par un ou plusieurs développeurs. Le site Drupal.org compte entre 250000 et 300000 utilisateurs enregistrés. Ils ne sont pas nécessairement développeurs, mais ces personnes participent à la communauté d’une façon ou d’une autre.

Webmonkey : Que nous réserve Drupal pour l’avenir ?

Buytaert : Nous travaillons en ce moment même sur Drupal 7. Nous aurons une meilleure couche d’abstraction pour les bases de données, un meilleur support pour les outils WYSIWYG, et des améliorations dans la facilité d’utilisation pour les administrateurs, ce qui rendra Drupal plus facile à configurer.

Nous développons une nouvelle fonctionnalité essentielle, appelée Kit de Construction du Contenu (CCK). Celle-ci vous permet de définir de nouveaux types de contenu en passant par une interface Web. Par exemple, si vous avez un site de vélo et que vous voulez que vos utilisateurs puissent partager leurs balades favorites, vous pouvez créer un nouveau contenu que vous appellerez "parcours". Ce contenu pourra inclure un point de départ, un point d’arrivée, un lien vers Google Maps, quelques photos de la route, du texte décrivant le parcours. Une fois que vous avez toutes ces données, vous pouvez choisir de visualiser ce parcours sur une carte Google, de l’afficher dans un tableau, ou d’en faire ce que bon vous semble. Plusieurs vues différentes peuvent être extraites de ce grand sac de données utilisateur, et tout ceci à partir d’une simple interface Web.

Avec Drupal, notre objectif à long terme, c’est de vraiment démocratiser la publication en ligne grâce aux contributions de la communauté, de rendre possible, pour tout un chacun, la création de sites Web puissants et intéressants, en quelques clics seulement. Drupal vous permet d’avoir un prototype opérationnel en quelques heures, sans avoir à écrire une seule ligne de code. C’est vraiment un outil très puissant.

Notes
[1] Qu’il me soit tout de même permis de remercier vivement la communauté Spip pour l’extraordinaire service rendu et de saluer comme il se doit la toute nouvelle version 2.0.
[2] Crédit photo : Gabor Hojtsy (Creative Commons By-Sa)