Le piège des CMS - La dépendance

Hier j'étais à Drupagora, vous savez le genre d'événement qui a pour objectif de mettre dans la même salle des clients potentiels et des boîtes qui proposent du Drupal. D'un côté des gens qui ont des gros sous et de l'autre des gens qui essayent de les rassurer en leur disant qu'ils peuvent tout, mais alors, tout faire.

Le couteau suisse

On a déjà parlé du couteau suisse, l'outil qui fait tout (tellement qu'on peut se tailler une chaussure dans une forêt avec une souche d'arbre) mais dont on ne sert généralement que d'un seul des éléments.

Au début on voulait un couteau et finalement on a un objet lourd, plus cher, et plus complexe à transporter. En France on appelle ça, la logique Shadoks. Le client veut une interface pour éditer des billets de 3 lignes et on lui installe un gros CMS des familles avec tout ce qu'il faut pour prochainement diriger un avion avec sa tablette.

La question qui blesse et la réponse qui tue

Lors de la conférence sur Drupal 8, on a eu 2 petites questions super, où plutôt 2 réponses géniales.

Question 1 : Combien de temps pour maîtriser Drupal 8 ?
Réponse : 2 jours… à condition de maîtriser au préalable la nouvelle façon de coder qui demande 1 ou 2 ans d'expérience.

Donc on fait du Drupal depuis 2 ans, c'est génial, on peut tout faire rapidement ; mais pour passer à la version d'après, c'est immédiat excepté les 2 ans nécessaires pour se former à une nouvelle écriture. On peut tout faire mais c'est long.

Question 2 : je développe en Drupal 6, facilité de passer à Drupal 8 ?
Réponse : c'est immédiat… pour les données. Pour les fonctionnalités ? Ah oui, il faut tout recoder.

Donc je suis un client, je paye pour de la création de valeur. Ok, vous me suivez ? Je paye pour de la valeur. Mon presta me dit que pour passer à Drupal 8, je dois repayer pour avoir à la fin, quasiment, la même valeur. Je paye une maison et mon constructeur me dit que pour avoir une véranda, je dois reconstruire la même maison à l'identique mais en briques.

balancoire-projet

La mise à jour des CMS

Vous êtes une boîte et vous ne maîtrisez pas bien les complexités relatives à un CMS. Vous vous lancez dedans pour la création de gros sites que vous allez maintenir sur plusieurs années.

A la sortie de la version suivante, soit vous passez directement à cette version et alors vous recodez tous les sites pour lesquels c'est nécessaire, soit vous devez maintenir 2 compétences dans vos équipes concernant les différentes versions du CMS.

Donc au final, pas mal de complexité au niveau relation client, migration, formation des équipes ; beaucoup de dépendance envers les développeurs, la maturité de la techno…

Moi, j'appelle ça une perte de temps et d'argent et surtout un bon gros mensonge au client sur la qualité de ses équipes. La technologie n'a pas apporté la valeur escomptée, vous auriez mieux fait de réfléchir 2 minutes et de prendre votre temps.

Conclusion

Loin de moi de critiquer un outil en particulier, comme Drupal, mais évitez d'avoir cette attitude béate et ce discours où toutes les solutions se résument à prétendre posséder un couteau suisse (Framework ou CMS).

Il vaut mieux parfois marcher pieds nus qu'avec des gros sabots en bois. Avoir un bon char rapide plutôt qu'une ligne Maginot.

Il est essentiel de maîtriser le code mis en place et de veiller à sa maintenabilité. Les CMS, et chaque CMS, existent pour des usages bien spécifiques. Votre processus de développement doit s'assurer que le maximum de compétences soient partagées par le maximum de personnes et que que celui-ci corresponde effectivement à la demande.

Il faut faire du solide et pour cela privilégier la simplicité.