Dans le Web, je trouve que c’est un peu comme dans l’automobile ! On peut y distinguer deux parties : d’un côté les concepteurs / constructeurs qui sont chargés de fournir le produit fini et de l’autre les réparateurs / mainteneurs qui entretiennent les produits finis et interviennent sur les défauts et/ou en cas d’accident !
Ayant déjà travaillé dans chacune de ces parties au fil de mon parcours, et étant actuellement dans la Team Support chez Whodunit, je partage ici plusieurs aspects de mon quotidien qui, au fil de discussions avec un ami de longue date, garagiste , m’ont fait penser que côté maintenance et support WordPress, c’est un peu comme entretenir son véhicule chez son garagiste préféré ! Carnet d’entretien, contrôle technique, réparations, pannes, … ou une nouvelle peinture peut-être ? !
« Ma voiture ne démarre plus … »
Dans nos deux métiers, on a remarqué qu’on recevait régulièrement des demandes qui ressemblent à ça : « Ma voiture ne démarre plus » ou « Mon site ne s’affiche plus ». Deux phrases courtes, deux urgences apparentes, et pourtant… aucune information exploitable.
Une voiture qui ne démarre plus, ça peut être la batterie morte, le démarreur HS, une durite percée, un problème électronique, ou simplement le réservoir vide ! Un site qui « ne s’affiche plus », c’est le même festival de possibilités : serveur down, erreur PHP fatale, base de données corrompue, certificat SSL expiré, plugin conflictuel, ou juste un système cache qui fait des siennes.
Remettre la situation dans son contexte
Avec l’expérience, on développe tous nos checklists mentales. Mon pote garagiste va demander si le voyant moteur est allumé, écouter le bruit que fait la voiture au démarrage, se renseigner auprès du client sur la date de la dernière révision.
De mon côté, je me pose systématiquement les mêmes questions : quel est le message d’erreur exact, suite à quelles actions précises le problème est apparu, si des mises à jour ont été faites récemment (plugins, feature, ajout de contenu, …), quelle est la configuration du navigateur du client, est ce que je peux reproduire le problème en staging ? Et c’est donc ça l’astuce … Des questions qui orientent immédiatement vers la bonne piste, et dans 70% des cas, on sait déjà où commencer les cherches avant d’ouvrir le capot.
Méthodologie : observer avant de démonter
C’est Abraham Lincoln qui disait : « Que l’on me donne six heures pour couper un arbre, j’en passerai quatre à préparer ma hâche ». L’appliquer permet en effet de se mieux se préparer avant de mettre les mains dans le cambouis et d’optimiser le temps d’intervention (pas toujours je vous rassure ^^).
C’est un principe fondamental pour ne pas s’éparpiller et s’embarquer dans un chantier sans fin : on ne démonte pas au hasard !
On observe, on écoute (coucou les logs), on teste (coucou le staging) et seulement après on agit. C’est avec cette logique qu’on debug WordPress proprement (et efficacement ! ).
Diagnostic complexe (et problèmes d’estimation)
Certaines demandes donnent des sueurs froides aux deux métiers. « Ma voiture broute » et « Mon site est lent » sont dans le top 3 des phrases qui annoncent plusieurs heures de recherche.
Pourquoi ? Parce que les causes possibles sont multiples.
Une voiture qui broute ça peut venir des bougies encrassées, d’un filtre à air saturé, d’injecteurs sales, d’un problème d’allumage, de carburant de mauvaise qualité, d’une vanne EGR défectueuse… La liste est longue.
Un site WordPress lent peut être dû à un hébergement sous-dimensionné, l’absence de cache, des images non optimisées, trop de plugins actifs, une base de données surchargée, des requêtes SQL mal optimisées, un thème mal codé… Même longueur de liste.
La seule solution ? Éliminer méthodiquement les possibilités. La mécanique d’une voiture c’est une suite logique d’actions / réactions en chaine pour enclencher le moteur et permettre de faire tourner le roues. Tout comme un WordPress qui a son moteur et ses composants permettant d’afficher des pages.
Mon ami branche sa valise de diagnostic, regarde les valeurs en temps réel, fait des tests de compression. Moi j’active Query Monitor, je regarde les temps de chargement par composant, j’active les logs et j’ajoute mes propres entrées pour cibler les composants qui posent problème ou dépendent du problème.
On procède par élimination, pas par intuition. Et il arrive malgré une bonne méthodologie et des outils de diagnostic avancées que la résolution de la panne impacte d’autres composants rajoutant du temps à l’intervention… D’ailleurs ca me fais penser au film Camping avec le garagiste qui dit « Ca va être du GRAND Mendes » … !

L’expérience qui accélère (et qui peut tromper)
Après des années de métier, certains diagnostics deviennent quasi instantanés. Un « clic-clic-clic » au démarrage ? C’est la batterie dans 95% des cas. Un « Error establishing database connection » ? Je vérifie d’abord les credentials dans wp-config.php et l’état du serveur MySQL.
C’est ce qu’on appelle le pattern recognition. Les mêmes problèmes reviennent constamment, et on finit par les identifier en quelques secondes. Mon ami estime que 80% de ses interventions sont des « classiques » déjà vus des centaines de fois. Pour moi, c’est identique : plugins incompatibles, mémoire PHP insuffisante, certificat SSL mal configuré… toujours les mêmes suspects.
Mais attention au piège. Les 20% de cas atypiques peuvent nous faire perdre du temps si on s’entête sur nos hypothèses habituelles. D’où l’importance de rester méthodique, même quand on pense « savoir » ce que c’est.
La Team Support, un état d’esprit
En première ligne pour aider, c’est là qu’on se sent à notre place. On partage cette passion de « réparer » / « bidouiller » depuis le lycée, et c’est d’ailleurs aussi ce qui fait qu’on est toujours amis aujourd’hui. Lui remet des voitures en état, moi des sites WordPress.
Nos garages sont différents, mais on a la même satisfaction de rendre un système fonctionnel.
Alors, rappelez vous que la prochaine fois que votre site vous lâche, il y a forcément une bonne âme comme nous qui vous attend au garage pour vous prendre en charge !
