Adieu les fichiers de config : le jour sans fin des développeurs
Tailwind met sa configuration dans le CSS, les frameworks devinent tout depuis l'arborescence. Le confort revient… comme il revient tous les dix ans.
Six heures du matin. Le radio-réveil s'allume. Une voix enjouée annonce : « Grande nouvelle dans le monde du dev : fini les fichiers de configuration, place aux conventions ! »
Tu te frottes les yeux. Tu as déjà entendu cette phrase. Tu l'entendras encore. Bienvenue dans le jour sans fin des développeurs.
Cette fois, c'est Tailwind qui range sa configuration directement dans le CSS, et les métaframeworks qui devinent de plus en plus de choses rien qu'en regardant ton arborescence de fichiers. Tout le monde applaudit. Moi aussi, un peu. Mais je reconnais le décor.
La boucle temporelle
Le scénario tourne depuis une vingtaine d'années, et il ne change jamais :
- une convention implicite s'impose, tout le monde est content ;
- on la trouve rigide, alors on ajoute de la configuration ;
- la configuration devient un monstre à trois têtes ;
- on la trouve verbeuse, alors on revient à la convention.
Et le radio-réveil se rallume. Six heures du matin.
Sauf que cette fois, un détail a changé dans le décor : une part croissante du code est écrite par des machines. Une convention, une IA la devine à partir de millions de projets. Ton fichier de config maison, avec ses trois bidouilles d'il y a deux ans et son commentaire « NE PAS TOUCHER », par contre… bon courage.
Je ne dis pas que c'est LA raison du retour des conventions. Mais je n'arrive pas à croire que ce soit une coïncidence.
Ce que tu gagnes à te réveiller dans ce monde-là
- moins de choses à apprendre quand tu débarques sur un projet ;
- un projet qui vieillit mieux, parce qu'une convention suit les mises à jour pendant qu'une config maison dérive en silence ;
- des outils de génération de code qui se plantent moins, puisque tout le monde range ses affaires au même endroit.
Ce que tu perds en route
- la trace de ce qui rend ton projet unique. Un fichier de config, c'est le journal intime de tes écarts. Quand tout devient implicite, l'exception devient invisible, jusqu'au jour où elle casse ;
- l'issue de secours. Les conventions gèrent le cas courant à merveille. Le cas particulier, lui, passe de « trois lignes de config » à « impossible, désolé » ;
- le vrai prix de la migration. Le guide officiel décrit la migration idéale, dans un monde idéal. Il ne décrit pas ton projet, avec ses cinq plugins et ses trois surcharges empilées comme des couches de papier peint.
Comment briser la boucle
Avant de migrer quoi que ce soit, fais la liste de tous les endroits où ton projet s'écarte des réglages par défaut. Puis vérifie, un par un, qu'ils ont un équivalent dans le nouveau monde.
Liste courte ? Fonce. Liste longue ? Ce n'est pas une migration d'outil, c'est la réécriture d'une partie de ton produit. Mieux vaut le découvrir maintenant qu'après avoir promis « un après-midi, grand max » en réunion.
✍️ À toi : ta pire migration « ça prendra un après-midi ». Tout le monde en a une, et c'est exactement ce qui rend ce genre d'article vivant.
Six heures du matin, demain
Personne n'écrit jamais d'article sur la migration qui a pris trois semaines au lieu d'un après-midi. C'est pourtant le seul chiffre qui compte pour ceux qui doivent la faire.
Et dans dix ans, quand la radio annoncera le grand retour des fichiers de configuration, tu pourras sourire. Tu sauras déjà comment le film se termine.