Frankensite – ou comment l’IA a ressuscité un site

Dernièrement, comme beaucoup d’entre nous, j’ai profité de la puissance de l’IA pour mener à bien certaines choses qui étaient plus ou moins en stand-by par manque de temps, le genre de tâches un peu ingrates qu’on repousse toujours au lendemain sans trop y penser, et parmi elles il y avait notamment le fait de changer d’hébergeur et de réorganiser ma constellation de sites épars, avec de vieux trucs qui traînaient sur free.fr, Vercel, Ionos, le tout reposant sur des bases techniques disparates.
Bref, en remuant ces vieux meubles et ces vinyles que l’on garde sans jamais trop savoir pourquoi, j’ai été submergé par une véritable bouffée de nostalgie et propulsé dans le temps. J’en ai profité pour remettre en ligne la toute première version de mon site internet qui, je l’avoue, m’avait rendu très fier : compatibilité avec les navigateurs de l’époque, rendu visuel « artisanal », easter eggs cachés un peu partout et librairie jQuery exploitée à son maximum. Pierre angulaire de ce design : un fond violet au motif assez original, que j’avais peaufiné puis téléchargé via un outil en ligne de l’époque.

En tirant le fil de la nostalgie, je me suis remémoré à quel point cet outil de génération de motifs était génial pour planter un décor à moindres frais. C’était surtout un outil pour les profils visuels et créatifs, un bac à sable aux règles très contraignantes, mais où les possibilités étaient infinies. Le fonctionnement était le suivant : un set de motifs était à disposition, avec de nombreux paramètres comme la taille, les couleurs ou la texture. Comme j’avais mis le lien de cet outil directement sur mon site, dans ma liste de « liens cools », il m’a été aisé de voir ce que le service était devenu plus de quinze ans après.
De plus, s’il m’avait vraiment plu à l’époque, je restais assez frustré de ne pas retrouver cet outil qui mariait, dans son interface, la complexité et la simplicité de manière aussi élégante. Bref, poussé par une curiosité gonflée de nostalgie, je clique sur le lien pour aller voir ce que le site est devenu.
L’URL répond. Mais le site n’a plus rien à voir : ce ne sont désormais que des pages de contenus SEO sans grand intérêt.

Comme tout bon historien d’Internet qui se respecte, la réponse a cette déception étais de passer par web.archive.org. Les dieux des internet sont de mon coté, les archives sont pléthoriques.

Les temps de réponses sont laborieux, les pages archivées manquent parfois de ressources, mais au moins il y a de quoi explorer dans cet océan de cache. mon choix s’arrête sur une archive des années 2008, surement la version qui est la plus proche de ce que j’ai connue et utilisée.

En explorant les différentes versions, je tombe sur la version actuelle du projet, patterninja.com, beaucoup plus complète, plus propre, plus moderne évidemment, mais avec ce décalage difficile à expliquer où quelque chose manquait malgré tout, peut-être la simplicité, peut-être juste le contexte de l’époque, ou alors ce biais un peu trompeur qui embellit tout ce qui est passé. Je retrouve également le nom de la personne qui a tenu ce projet à bout de bras.
Ressusciter d’entre les morts
J’aurais pu m’arrêter là. Mais j’avais envie de refaire fonctionner cet outil ancestral — pas une réplique parfaite, mais retrouver ce « truc » qui génère un rendu vibrant directement à partir d’un motif simple. Facilement, en quelques clics, avec une palanquée d’options intuitives à utiliser. Je le voulais car j’étais passé par ce chemin pour déclencher l’inspiration de mon vieux site. Je ne me souvenais plus si le motif avait été un point d’entrée ou de sortie, mais il avait été une étape essentielle de la composition de son univers graphique. Et c’est parce que je voulais réemprunter le même chemin pour mes nouveaux projets que j’avais à nouveau besoin de cet outil. L’outil d’origine n’existait plus, mais là où j’aurais jeté l’éponge tout seul, j’ai estimé que le temps de le recréer avec l’IA était désormais jouable.
Je suis donc parti de quelque chose de très simple : sauvegarder la page en local, nettoyer tout ce qui n’était pas essentiel et virer les couches inutiles (les restes de fonctionnalités sociales, les frames de la Wayback Machine). Assez vite, je me suis retrouvé face à une série de petits blocages techniques, pas forcément complexes mais nombreux : des miniatures basées sur des GIF plutôt que des SVG, des problèmes de rendu en local avec des images floues, etc.
C’est là que ça devient intéressant parce que j’ai commencé à déléguer ces micro-problèmes à l’IA : demander un script pour aller récupérer des SVG depuis des URLs reconstituées, ajuster des comportements, comprendre pourquoi certaines choses ne marchaient pas, et petit à petit tout s’est remis en place. Pas d’un coup, mais plutôt par itérations successives. Avec ce sentiment assez étrange de voir un système ancien reprendre vie sans vraiment passer par le processus classique de développement. En un week-end, le gros du travail avait été fait ; A l’heure de l’AI, ça peut sonner comme peu efficace, mais malgré tout, j’étais assez content du résultat. Une fois que tout fonctionnait à peu près, je me suis permis de dériver un peu, ajouter deux ou trois fonctionnalités qui manquaient selon moi.
Panique éthique
J’aurais pu garder le site dupliqué en local et ne jamais le repartager. Une question se posait donc : ce que je faisais était-il du vol, un hommage ou du fan art ? Après tout, il y avait des motifs très travaillés que je n’avais pas créés. Le mieux était de prendre le taureau par les cornes : contacter l’auteur original pour lui décrire honnêtement ma démarche. Je m’engageais, lors de mon premier e-mail, à ne pas en faire une version commerciale et à le citer comme auteur original. À noter que, là encore, l’IA m’a aidé à rédiger un message ciselé pour ce besoin relativement unique en son genre.

Le lendemain, il me répondait et me donnait carte blanche.
Phylogénétique des internet
Je l’ai donc mis sur GitHub et j’ai continué à l’améliorer. J’ai ajouté de nouveaux motifs, changé l’identité visuelle en créant un logo, adapté le tout au mobile — parce que forcément, en 2008, ce n’était pas encore une contrainte — et ajouté de petites features absentes du site original ici et là. Déjà, à ce moment-là, le projet n’était plus seulement une restauration ; il devenait un peu quelque chose d’autre, une sorte de version parallèle qui n’aurait jamais existé sans cette dérive. Toute la magie de la mémétique. Au final, j’ai pu utiliser l’outil comme je l’avais fait quinze ans plus tôt, sauf que cette fois, il appartient à Internet et est disponible pour tout le monde.
Je ne peux qu’évidemment vous encourager à le consulter sur https://patternator.200.work :

La puissance
Avant, construire un projet, c’était souvent choisir ses dépendances, accepter leurs contraintes et composer avec des couches qu’on ne maîtrisait pas vraiment, parce que les recréer aurait été trop long et trop coûteux ; on évoluait donc dans un écosystème rigide.
Maintenant, avec ces outils, un développeur seul peut reconstituer ou inventer ces couches intermédiaires presque à la demande. Pour reprendre une image, l’architecte peut maintenant créer ses ouvriers sur mesure. Mieux encore : il peut aussi fabriquer les briques à la taille qui lui convient. Et s’il veut aller plus loin, il peut même fabriquer et rationaliser l’usine qui produira ses briques spécifiques.
Aujourd’hui, cet architecte peut, d’une certaine manière, invoquer directement les compétences dont il a besoin, ajuster les outils en temps réel et créer des passerelles entre des couches qui n’étaient pas censées communiquer. Il réduit surtout cette distance entre l’intention et l’exécution qui était, jusque-là, le vrai point de friction.
Évidemment, cela ne veut pas dire que les développeurs d’aujourd’hui vont réinventer la roue pour chaque détail. Mais le problème de beaucoup de bibliothèques de code n’a-t-il pas été de se positionner sur leur rôle, de définir leur périmètre ? Quelles fonctions doivent-elles remplir précisément ? Pour quels usages ? Définir leur scope a toujours été un élément déterminant, car une bibliothèque qui remplit un maximum de cas gagne en poids et perd en performance la plupart du temps. À l’inverse, une bibliothèque trop précise est très efficace, mais ne va pas forcément remplir le rôle qu’on voudrait lui assigner, ou alors il faudra ajouter des surcouches pour qu’elle s’adapte aux besoins spécifiques du projet.
Avec l’IA, toutes ces problématiques d’arbitrage tendent à devenir caduques. Si une bibliothèque ou un outil ne correspond pas exactement à nos besoins, il devient ridiculement facile d’implémenter le sien, adapté à 100 % à son projet. C’est exactement ce que j’ai fait avec Patternator : recréer un outil sur mesure pour mes besoins très spécifiques.
La madeleine
Cette recréation veut sûrement dire autre chose également. En psychologie cognitive, on sait que la récupération d’un souvenir est facilitée si l’on se trouve dans le même état ou contexte que lors de l’encodage. Généralement, on parle de contexte environnemental (un lieu, une odeur). Mais dans mon cas, il s’agit d’un contexte dit « opératoire ». En reconstruisant l’interface et en récupérant les motifs, j’ai sûrement recréé l’écosystème technique qui avait permis à mon « moi » de 2008 de créer. L’outil a donc un rôle psychologique : c’est un stimulus, un déclencheur pour essayer de retrouver mon état d’esprit de l’époque. Cet élément clé porte un nom en psychologie cognitive : c’est un indice de récupération (retrieval cue).
La première image est évidemment générée par IA, et je me suis fait aider par celle-ci pour les corrections orthographiques et quelques rares passages rédactionnels. La manière dont j’ai procédé pourrait faire l’objet d’un post ; j’attends vos commentaires et encouragements !



