Skip navigation.

Drupal: Un choix stratégique pour tous les sites

Je reçois de temps en temps des messages de personnes qui voudraient construire leur site et qui se demandent si Drupal est le bon choix pour eux. Souvent, les questions qu'on me pose sont une variation de la suivante: est-ce que Drupal peut satisfaire mon cahier des charges? Je voudrais ci et ça, est-ce que Drupal peut le faire?

J'utilise Drupal depuis maintenant 4 versions majeures (Drupal 4.6, 4.7, 5 et 6), j'ai un niveau très confortable d'expérience à coder des modules Drupal ad-hoc pour différents projets. Malgrès tout cela, je ne connais pas tout, loin s'en faut.

Cependant, je pense pouvoir être en mesure de dire que Drupal serait un bon choix dans la plupart des cas. Ce qui fait la force essentielle de Drupal est sa modularité, et son excellent API (ensemble de fonctions permettant à un développeur de coder des modules supplémentaires).

Avec Drupal, on peut créer des sites des plus simples aux plus compliqués. Il faut cependant bien comprendre le prix.

Partons des sites les plus simples. Si ce dont on a besoin n'est qu'un simple site statique, pourquoi ne pas rester avec html + css. Pourquoi s'encombrer d'une base de donnée, de php, et d'un CMS (Content Management System, un logiciel comme Drupal permettant de gérer le contenu d'un site). Tout cela, il faut le maintenir, le mettre à jour au fur et à mesure que des failles de sécurités sont découvertes. Ceci est vrai avec n'importe quel CMS.

Si on doit s'encombrer d'un CMS mais qu'on a seulement une tâche simple à faire, autant choisir un CMS spécialisé dans cette tâche. Par exemple, si on n'a seulement besoin que d'un blogue personnel, pour une seule personne, autant utiliser un logiciel spécialisé pour les blogueurs.

Ceci dit, il faut être sûr que c'est le bon choix à long terme. Le fait est qu'on peut très bien utiliser Drupal pour créer un simple site statique. Drupal est aussi très bien adapté pour créer un blog pour une seule personne... ou pour toute une communauté.

Le problème est qu'un site est quelque chose d'organique et dont les besoins ont tendance à évoluer et grandir. Je me suis déjà trouvé dans la situation de devoir migrer tout un site statique (html seulement) vers Drupal. Aussi, si on utilise un logiciel de blogue et qu'après un certain moment on désire quelque chose de plus, une migration complète vers un CMS offrant plus de possibilités de croissance peut être une opération très délicate.

On en arrive donc aux sites dont les besoins sont dans la moyenne. Pour eux, Drupal est un choix sûr. Il suffit de fouiner dans la section des modules contribués (contributed?) par la grande communauté Drupal, pour trouver les quelques modules d'appoints qui vont compléter les fonctions du coeur de Drupal (Drupal core). On a ainsi un site fait sur mesure. En fonction du choix de modules, on peut avoir un site aux fonctions et à l'apparence très simple, ou bien un site communautaire important avec toute sortes de fonctions qu'on trouve couramment dans les forums ou les blogues, etc.

N'oublions pas le prix pour ces sites dans la tranche moyenne. Le prix monétaire se limite souvent au prix de l'hébergement. Le logiciel lui-même (Drupal et ses modules) est un logiciel libre que l'on peut télécharger gratuitement. Avec un minimum de compétences technique, et en sachant lire des instructions (parfois en anglais seulement, pour certains modules moins populaires), une personne devrait pouvoir s'en sortir toute seule pour compléter l'installation de Drupal.
Le coût se mesure en temps: il faut prendre le temps de lire la documentation, chercher les forums pour trouver les réponses aux questions éventuelles, etc.
De plus, ce coût en temps va continuer. Une fois le site mis en route, il faut le maintenir. Il faut mettre à jour le logiciel. Surtout, surtout! il faut s'inscrire à la liste d'annonce de failles de sécurité afin de bien garder à jour le logiciel. Ensuite, il faut mettre à jour les versions majeures de Drupal au fur et à mesure qu'elles apparaissent.

Le prix est aussi un certain niveau d'inconvenance: le coeur de Drupal est de bonne qualité et les failles de sécurités découvertes ne sont pas nombreuses. La qualité des modules contribués varient beaucoup d'un module à un autre, en fonction de la popularité d'un module. La traduction française de l'interface d'un module donné n'existe pas toujours. Il suffit d'une bonne âme pour traduire ce qu'il faut et partager la traduction avec le reste de la communauté. Les failles de sécurités sont plus nombreuses (donc plus on aura de modules, plus on aura de chances de devoir mettre le site à jour régulièrement). Les bugs existent et le développeur en charge n'est pas toujours disponible pour les fixer. Dernièrement, lors d'une majoration de Drupal (par ex. lors du passage de Drupal 6 à Drupal 7), on peut se rendre compte qu'un des modules communautaires n'est pas encore (ou ne sera pas) mis à jour.

Bien sûr, si on est près à payer un bon développeur, on peut mitiger beaucoup de tout ceci.

Je ne veux pas peindre un tableau plus sombre qu'il ne l'est actuellement. En général, il n'y pas trop de problèmes, souvent rien de majeur. Mais tout cela, ce sont des possibilité qui existent avec n'importe quel CMS, Drupal y compris.

On en arrive finalement à la tranche supérieure des sites. Ces sites ont un cahier des charges très spécifique car le site doit remplir une fonction très précise. L'ensemble des modules déjà disponibles peut satisfaire 80% des besoins, mais il reste les 20% qui représentent le coeur du projet, ce petit truc en plus qui fera que le site sera unique.

Et c'est à ce niveau qu'on voit que Drupal est un choix judicieux dès le départ. J'ai déjà fait mention de l'excellent API de Drupal. Avec cet API, un bon développeur qui en a une bonne connaissance pourra coder n'importe quel module fournissant les fonctions autrement manquantes. J'oserais presque dire que tout est possible (sauf moudre le grain, faire le café, laver le linge...).

Là, le prix est fondamentalement financier: la limite de ce qui est possible et les délais de livraison dépendent directement des compétences et de l'expérience du développeur. Un bon développeur a un prix. On parle ici de coder un module ou une série de modules qui seront uniques pour votre site. Et ensuite, ces modules, il faut les maintenir, les faire évoluer, et les mettre à jour à chaque majoration de Drupal, donc une petite partie du prix sera récurent.

Pour conclure, Drupal est dans la très grande majeure partie des cas un choix judicieux, que l'on veuille commencer avec un site très simple ou que l'on ait besoin d'un site avec des fonctions plus avancées, voire uniques et faites sur mesure. Le prix sera de différente nature et variera en fonction de ce qui est requis.