Drupal
22/11/2011

Drupagora : retour sur une sélection de conférences

image
Le 10 novembre dernier, nous étions partenaires de l'événement Drupagora à Paris. Plusieurs conférences avaient lieu en même temps donc nous n'avons malheureusement pas pu assister à toutes. Voici cependant un rapide compte rendu des sessions auxquelles nous avons pu assister.

Le 10 novembre dernier, nous étions partenaires de l'événement Drupagora à Paris. Plusieurs conférences avaient lieu en même temps donc nous n'avons malheureusement pas pu assister à toutes. Voici cependant un rapide compte rendu des sessions auxquelles nous avons pu assister.
Vous pourrez aussi trouver la plupart des supports de présentation sur la page du programme de l'événement, n'hésitez pas à vous y reporter pour plus de détails.

Session 1 : gestion des médias

Très bonne présentation de la solution de gestion des médias sur le site Radio France, Drupal 6.
La solution utilisée ici est Scald, pas encore disponible sous D7. Module développé par la radio pour leur gestion des médias.
http://drupal.org/project/scald

Une alternative montante à Scald est Mediafront, disponible quant à elle sur D7 .
Cette solution, développée pour la gestion des médias dans DrupalGardens dispose d'un nombre de fonctionnalités de plus en plus important, notamment car la communauté de développeurs autour de cette solution est très active.

Mediafront : http://drupal.org/project/mediafront

Session 2 : réussir un projet Drupal

Présentée par Maxime Topolov, Directeur technique Adyax, cette session a été l'occasion d'aborder tous les points qui peuvent poser problème pour la bonne gestion d'un projet Drupal.
Des questions au combien importantes ont été développées parmi lesquelles :
=> Drupal pour quels types de projet ?
=> Drupal est il adapté aux méthodes Agile ?
=> Quelle est l'équipe projet Drupal idéale ?
=> Comment estimer un projet Drupal ?
=> Comment spécifier pour Drupal ? (question abordée également lors d'une session dédiée)

ET M. Topolov sait comment captiver ses troupes via les 10 commandements Drupal :

I. Structurer ton contenu en premier lieu, tu devras (Entités, Champs, Taxonomies)
II. Aucune fonctionnalité dans les templates tu ne coderas
II bis. (pas de requêtes SQL non plus, hein !)
III. Le cœur de Drupal tu ne toucheras point (ni les modules contribs)
IV. Views, Ctools & Panels tu utiliseras !
V. Les caches, dès le début du projet tu activeras (Varnish, Memcached, Boost, AuthCache)
VI. Du WYSIWYG tu n’abuseras point
VII. Les déploiements par le code et les scripts tu feras (Drush, Features, Deploy…)
VIII. Avant de coder une fonctionnalité, le module existant 10 fois tu chercheras
IX. Apache SOLR pour la recherche tu utiliseras !
X. Si faire soi-même tu ne sais pas, à un professionnel tu t’adresseras

Session 3 : comment réussir son référencement et profiter de la force de Drupal ?

En résumé, et comme nous venons de faire un article dédié à cette problématique, je listerai simplement les modules Drupal cités par le conférencier, passant sur les rappels plus généralistes à propos des stratégies à mettre en place :
=> Réécriture des URL : path auto, path alias, path redirect, global redirect, token
=> Page title : Page title, taxonomie titre,
=> Nodewords : gestion des metatags, noindex/nofollow
=> Sitemaps xml
=> CKE link pour le linking interne

Session 4 : comment spécifier pour Drupal

Explications sur la marche à suivre pour spécifier sur Drupal. Ici le support de présentation permet de donner un cadre assez avancé de spécification pour Drupal.
« Les spécifications recouvrent toute la documentation permettant de décrire ce qu'une réalisation doit couvrir. C'est l'expression détaillée des besoins. » C'est en fait une phase d' « industrialisation » du projet.

Elles vont donc avoir pour but d’associer au plus vite les besoins du client à la façon dont on peut les implémenter dans Drupal

Les spécifications Drupal doivent tenir compte de la nature du projet mais aussi des modules existants.
On retrouve toujours :
=> du contenu (node)
=> des utilisateurs (user)
=> une interface utilisateur (theme)
=> des fonctionnalités (modules)
=> des contraintes techniques (infrastructure, performance, etc.)

Spécifier pour Drupal, c’est reprendre chacun de ces items et définir comment ils vont être adressés vis-à-vis du client et vis-à-vis de l’équipe de développement.

Il faut enfin penser à tout ce que le client ne pense pas !!

Session 5 : Solutions de recherche avec Drupal

Les fonctions de recherche sont importantes car c'est une des fonctionnalités les mieux utilisées par les internautes. De plus c'est une bonne fonctionnalité pour accéder à des archives.
Enfin, un bon moteur de recherche améliore les taux de conversion sur les sites e-commerce.
C'est important car 27% des internautes tapent le nom du produit dans le moteur de recherche, 16% la catégorie et 5% la marque (marketingsherpa.com 2007).

Le module search par defaut dans Drupal a des défauts. Le plus contraignant étant la performance, il vaut mieux s'orienter vers une autre solution dès que le site prend de l'importance. L'une des solutions existantes est Apache SolR :
=> Maintenu par Acquia
=> Moteur de recherche écrit en Java / J2EE, architecture ouverte.
=> Permet d'être intégré à Drupal facilement : module dédié
=> Application faite pour indexer des données en grande quantité
=> Très rapide, se dégrade peu avec le trafic
=> Gestion du cache performante
=> Scalability
=> Indexation des différents documents (à travers le module tika)
=> Notion de scoring et critères avancés
=> La recherche par filtres, par facette. 
=> C'est le moteur de recherche de drupal.org
Se repporter au support de présentation pour des éléments plus techniques.

En synthèse, nous avons participé à une journée très formatrice et bien plus adaptée à nos aspirations de chefs de projet que les drupalcamps ; ce qui était l'objectif de la conférence en même temps ; ça tombe bien ;-)