Conférence DrupalCon Lille 2023

Conférence DrupalCon Lille 2023 : revivez les moments forts

Le DrupalCon Lille 2023 s'est déroulé du 17 au 20 octobre au Grand palais de Lille. Durant quatre jours intenses, près de 1 300 passionnés de la technologie Drupal se sont rassemblés pour explorer les dernières avancées et échanger autour de l’avenir de ce pilier technologique.

Que révèle cette nouvelle édition du DrupalConLille 2023 ? Découvrez les moments clefs de cet événement incontournable !

Drupal : Vers l’infini et au-delà

Le fondateur de Drupal et co-fondateur d’Acquia, Dries Buytaert, a pris la parole pour dévoiler l’orientation de Drupal pour les mois à venir.

La version actuelle, 10.1, sera bientôt remplacée par la version 10.2 à la fin de l'année 2023. Les améliorations prévues dans cette nouvelle version visent principalement à améliorer l'ergonomie du back-office en ajoutant de nouveaux champs sur les entités, une fonctionnalité très attendue ! La version 10.3, prévue pour l'été 2024, devrait également repenser une partie du back-office en mettant l’accent sur une refonte significative du menu.
Une fonctionnalité d’auto-update du core et des modules contribués sera aussi introduite, bien qu’elle présente quelques limitations.

La sortie de la version 11 du CMS est quant à elle prévue pour la fin de l'année 2024.

Enfin, la date de fin de vie de Drupal 7 a été repoussée au 5 janvier 2025, offrant ainsi aux utilisateurs davantage de temps pour migrer vers la version la plus récente de Drupal, à savoir Drupal 10.

Découvrez notre expertise Acquia

Drupal face à la concurrence : le marketing comme axe stratégique

La compétition technologique est à son apogée, avec un marché foisonnant de solutions de plus en plus exhaustives et performantes. Bien que Drupal demeure le CMS le plus avancé techniquement sur le marché, cette distinction seule ne suffit plus face à une multiplication et une diversification des offres. L'enjeu n'est plus seulement d'atteindre l'excellence, mais aussi de le faire savoir. C'est pourquoi Dries Buytaert et la Drupal Association envisagent d'intégrer le marketing comme un pilier stratégique pour les années à venir.

 

Drupal et l’Intelligence Artificielle (IA)

L'intelligence artificielle (IA) gagne toujours plus de terrain dans le domaine de l'informatique, comme en témoigne l’affluence du public aux conférences. Il semblerait d'ailleurs que les visuels présentés lors de la Keynote de Dries aient tous été créés via Midjourney.

Durant le DrupalCon, nous avons eu l’opportunité d’assister à des démonstrations d'outils offrant la possibilité d'incorporer des explications de ChatGPT sur les erreurs de logs. Une autre fonctionnalité notable mise en avant consistait à segmenter automatiquement des utilisateurs d'un site pour l'envoi de newsletters personnalisées.

Néanmoins, certains ateliers ont soulevé certaines préoccupations concernant l'utilisation de l'IA à la place des développeurs juniors ou des contributeurs. Le Groupe Digitalist a présenté une expérience audacieuse réalisée sur plusieurs mois, consistant à intégrer ChatGPT, Copilot et Midjourney en tant que “nouvelles recrues”. Les résultats de cette initiative ont mis en évidence l’importance d’analyser minutieusement le travail réalisé, en raison de biais potentiels. La question qui demeure est : pour combien de temps encore ?

Une autre avancée significative a été dévoilée : l'intégration de l'Intelligence Artificielle via un module ChatGPT dédié à Drupal. Il s'agit d'une suite de modules et d'une API de base pour l'intégration d'OpenAI dans Drupal, utilisée pour générer un texte, des images et pour analyser des contenus. Ce module intègre ChatGPT directement dans l'éditeur de contenu et est actuellement en version bêta pour une utilisation dans Drupal 10.

En savoir plus sur la web factory » conçue avec Acquia pour Legrand

Le headless sous Drupal : une solution avantageuse ou à éviter ?

La tendance actuelle se concentre vers le Headless. Cependant, cette approche n'est pas toujours la solution optimale. Sous Drupal, il est facile de déployer rapidement une version Headless en utilisant NextJS avec le kit de démarrage https://github.com/wunderio/next-drupal-starterkit, permettant une installation rapide et opérationnelle en une ligne de commande.

Cependant, en dehors de cas spécifiques, l'usage d'une architecture frontale Headless pourrait ne pas s’avérer nécessaire. Bien que l'intégration sous Drupal semble complexe pour les débutants, l'adoption d'une architecture Headless représente une solution pour contourner ces difficultés.
D'autres CMS sur le marché mettent également en avant l'approche Headless, avec des investissements marketing conséquents, suggérant que cette méthode représente la meilleure solution pour tous (Strapi, Sanity, Contentful).

 

Drupal et les tests : quel processus ?

Sous Drupal, les tests prennent quatre formes distinctes :

  • Les tests Unitaires évaluent les fonctions et le code PHP avec très peu de dépendances
  • Les tests Kernel examinent les fonctions et le code PHP avec un Kernel bootstrap, et quelques extensions installées
  • Les tests Fonctionnels testent une instance Drupal entièrement chargée.
  • Les tests Fonctionnels Javascripts vérifient les fonctionnalités JavaScript et AJAX en utilisant Webdriver.
     

Cette diversité permet de tester différentes versions d'une page et réduit les risques de régressions liées à des modifications du code.
Parallèlement, maintenir un code de qualité implique de tester le respect des bonnes pratiques et des normes de code Drupal. Pour ce faire, plusieurs outils sont disponibles tels que PHPMD, PHPStan et Rector, qui vérifient la conformité du code déployé à des normes de qualité.

    Envie d'en savoir plus sur notre offre Experience Platform ?

    L’accessibilité sur Drupal, un enjeu de taille.

    L'accessibilité constitue aujourd'hui un enjeu majeur pour l'ensemble des sites web. Ce concept se décline sur trois niveaux distincts : A, AA et AAA, représentant les degrés d'améliorations nécessaires pour garantir une vision correcte du site pour tous (A étant la note la plus basse, et AAA la plus haute).

    Pour réduire les coûts, il est préférable de gérer l'accessibilité simultanément au développement, afin d'éviter d'intervenir sur l'intégralité du site une fois achevé.

    Pour faciliter cette démarche, la communauté a développé deux modules :
     

    A11Y Project Checklist : Ce module propose une liste de tâches essentielles pour garantir l'accessibilité d'un site. Chaque élément de cette liste peut être coché pour marquer sa réalisation, enregistrant l'utilisateur responsable ainsi que la date et l'heure d'exécution. Néanmoins, cette action étant réalisée manuellement, il est impératif de faire preuve de vigilance lors de la validation des tâches, car aucune vérification automatique n'est effectuée.

    • Editoria11y Accessibility Checker : Ce module analyse le rendu de la page et identifie une grande partie des problèmes d'accessibilité. Dans le cas des CMS, où une part importante du contenu peut être modifiée directement par le client dans le Back-Office, ce type de module peut être extrêmement utile pour éviter les erreurs, d’autant plus si le client ne possède pas de connaissances approfondies en matière d'accessibilité.

     

    Drupal : la sécurité au cœur de tous les sites

    La sécurité d'un site demeure une priorité incontournable, et il est communément admis qu'il ne faut jamais faire confiance aux utilisateurs !

    La communauté Drupal met à disposition plusieurs modules pour renforcer la sécurité d'un site, en complément des mesures de sécurité déjà intégrées dans le cœur de Drupal. Voici une liste non exhaustive de ces modules :

    • Security Review module effectue un contrôle rapide sur divers aspects de votre site afin de détecter toute faille de sécurité potentielle.
    • Security Kit permet d'ajouter des headers de sécurité comme Content-Security-Policy, Strict-Transport-Security et X-Frame-Options.
    • Password Policy renforce les fonctionnalités de sécurité des mots de passe et offre la possibilité de forcer le changement de mot de passe après un certain laps de temps.
    • Login security permet de bloquer le login d’utilisateurs après un certain nombre d’erreurs successives, voire de bannir une IP afin d’éviter les attaques sur les mots de passes des utilisateurs.

    Drupal : quid de la performance ?

    Une conférence captivante a abordé les principaux problèmes de performance ainsi que les méthodes pour les améliorer :

    -          Ces problèmes incluent une mauvaise gestion des contextes de cache, voire leur désactivation.

    -          Une configuration inadéquate des caches tags_list pour les Entités pose également un problème. Chaque Entité possède ce tag qui se rafraîchit lors de sa mise à jour. Les views génèrent automatiquement ces tags, et chaque mise à jour invalident le cache de toutes les views contenant cette Entité.

    -          L'utilisation excessive des JOINS dans les views, liée à la structure de base de données de Drupal (un champ correspondant à une table), entraîne des requêtes SQL très lourdes en raison du nombre élevé de tables à parcourir.

    - L'utilisation abusive des views n'est pas toujours pertinente dans tous les cas.

    -          De même, l'utilisation de paragraphes n'est pas toujours la meilleure solution ; une entité custom sur une seule table peut être bien plus rapide.

    -          Enfin, l'utilisation excessive de modules de contrib pose divers problèmes (sécurité, mises à jour et performances...). Parfois, créer un module personnalisé spécifique s'avère bien plus performant.

     

    Dans une optique d'amélioration des performances, la communauté Drupal s'est penchée sur la mise en place de tests de performances automatisés en utilisant le Framework Gander.

     

    Drupal et sa communauté

    La force de la communauté Drupal repose principalement sur la solidarité et la bienveillance entre ses membres pour évoluer. Cette dynamique s'est notamment illustrée lors du récent First-Time Contributor Workshop. Cet événement a donné l’occasion de partager les opportunités de contribuer à l'avancement de la communauté et les améliorations à venir.

    Il n'est pas nécessaire de savoir coder pour soutenir l'amélioration de la communauté. Tester les modifications apportées ou simplement traduire du contenu dans différentes langues contribuent déjà de manière significative.

    Pour accéder aux derniers problèmes soulevés dans le cœur de Drupal, un lien spécifique est disponible : bit.ly/drupal-novice. Actuellement, plus de 400 problèmes sont ouverts et en attente de résolution, principalement pour des modifications destinées à la version 11 prévue pour la fin de l'année prochaine.

    Cette édition de la DrupalCon a été riche en informations et en partage. La qualité et la grande quantité des conférences nous a offert l’opportunité de découvrir Drupal et son écosystème sous toutes les coutures. Nous avons été frappés de l’ouverture d’esprit ainsi que la bienveillance de la communauté qui nous a accueillie dans les meilleures conditions lors de la contribution Day. Nous espérons que la prochaine DrupalCon, qui se déroulera à Barcelone l’an prochain, suivra cette même organisation et offrira un accueil aussi chaleureux que celui que nous avons eu la chance de recevoir.

     

    Conférence DrupalCon Lille 2023


    Benjamin Garcia,  Ingénieur Concepteur Développeur PHP
    Sylvain Artigaux, Expert Technique
    Aurélien Glandu, Expert Drupal
    Baptiste Fischer, Ingénieur Concepteur Développeur PHP

    Comment mettre en place une usine à site Drupal ?

    Vous souhaitez échanger avec un expert ?

    Contactez-nous