1

Compare commits

..

2 Commits

Author SHA1 Message Date
5e00c0c7c4 Lien vers IRC 2026-02-23 15:12:53 +01:00
7f614688d0 Formulaire de recherche 2026-02-23 15:10:11 +01:00
149 changed files with 109 additions and 3740 deletions

View File

@@ -83,7 +83,7 @@ Il s'agit d'un site statique généré avec Hugo, dont la version peut être vé
## Instructions relatives aux articles
- Utiliser exclusivement les apostrophes (`'`) et les guillemets (`"`) non-typographiques
- Ne pas utiliser les apostrophes et les guillemets typographiques dans le markdown (mais garder les caractères accentués)
- Une phrase par ligne
- Ne jamais terminer une ligne par un double-espace
@@ -162,10 +162,13 @@ Il s'agit d'un site statique généré avec Hugo, dont la version peut être vé
- `title` : Titre que je donne à mon article
- `date` : Si possible avec l'heure, mais la majorité de mes articles actuels ne contiennent que la date
- Le frontmatter peut contenir d'autres attributs optionnels, autres que les taxonomies :
- `cover` : Chemin vers l'image illustrant l'article. Cette image doit être stockée dans le dossier `{chemin du bundle}/images/`. Elle sera utilisée pour générer la vignette de l'article, et affichée en en-tête de l'article. Je la désigne par _cover_, _image de couverture_, ou _image d'en-tête_
- `dossier` : Plusieurs bundles partageant une même valeur pour l'attribut `dossier` seront regroupés dans un _dossier virtuel_ tout en résidant physiquement dans leurs dossiers _physiques_ respectifs
- Exemple : `dossier: [ "Exploitation de mes données météo" ]`
- Cet attribut devrait être complété par un attribut `weight`
- Par exemple :
```json

View File

@@ -7,12 +7,6 @@ disableHugoGeneratorInject: true
enableEmoji: true
timeZone: Europe/Paris
theme: ["2026"]
security:
funcs:
getenv:
- "^HUGO_"
- "^CI$"
- "^MEILI_SEARCH_API_KEY$"
params:
lists:
layout: spotlight

View File

@@ -1,9 +1,6 @@
goldmark:
parser:
wrapStandAloneImageWithinParagraph: false
attribute:
block: true
title: true
renderer:
unsafe: true
tableOfContents:

View File

@@ -2,12 +2,12 @@ favicon: /favicon.png
# Pas de / pour les ressources qui seront transformées
# Et les placer dans /assets et non dans /static
logo: logo-large.png
description: "Richard Dern et ses opinions impopulaires"
themeColor: "#060c14"
description: "et ses opinions impopulaires"
search:
action: /recherche/
param: q
meilisearch:
endpoint: /api/search
indexUid: blog_posts
apiKey: "cf49bcdb1b08e5c502c41956d38ce0be80d5e79e9f084e6f15f4485f87d63c30"
hitsPerPage: 20

View File

@@ -30,11 +30,6 @@ Si vous m'envoyez un email depuis une adresse hébergée par l'un ou l'autre, il
Si vous avez choisi une adresse hébergée par Microsoft ou Google (et probablement d'autres fournisseurs tiers), vous devez changer pour un fournisseur de messagerie respectueux de la [neutralité du Net](https://fr.wikipedia.org/wiki/Neutralité_du_réseau).
### Messagerie instantanée
Pour me contacter plus rapidement, vous pouvez me trouver sur IRC sous le pseudo "Richard", sur le serveur `irc.dern.ovh:6697`, dans le salon `#lounge`, ou en cliquant sur [ce lien](https://irc.dern.ovh/).
Indiquez simplement le "_Nick_" de votre choix avant de vous connecter.
## Montrer votre ❤️
Si vous aimez ce que je fais, et que vous souhaitez faire quelque chose pour moi, j'ai plusieurs options à vous proposer.
@@ -44,4 +39,4 @@ Si vous aimez ce que je fais, et que vous souhaitez faire quelque chose pour moi
- Vous pouvez m'offrir un jeu de ma [wishlist Steam](https://store.steampowered.com/wishlist/id/richarddern/#sort=order) ou [Gog](https://www.gog.com/fr/u/RichardDern/wishlist)
- Vous pouvez m'offrir un produit de ma [wishlist Amazon](https://www.amazon.fr/hz/wishlist/ls/24XQEFC7L3GQB)
Vous pouvez également acheter mes livres :
Vous pouvez également acheter mes livres :

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "L'écran d'accueil du jeu est à la hauteur de tout le reste : magnifique"
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Première page de mes réglages graphiques"
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Deuxième page de mes réglages graphiques"
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Les écrans de chargement sont agrémentés du clin d'oeil à ces pauvres chèvres qui servent de repas."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "La nouvelle carte de la campagne, partiellement révélée."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Couché de soleil sur une volière à Vegas."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Restaurants, boutiques de souvenirs et stands de boissons forment toujours le trio de base pour contenter les visiteurs."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Ils n'ont toujours pas de plumes, mais je les emmènerai bien en balade quand même..."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "_JWE3_ a fait monter d'un cran l'aspect organique des parcs, mêlant objets naturels et constructions artificielles. On pourrait presque respirer la poussière et sentir le métal et le béton chauffés par le soleil."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Les _Diplodocus_ dans leur enclôs du Montana."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
#description: ""
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Sur l'île de Kauai."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Et certaines parties sont mobiles ! Ici, l'antenne s'anime !"
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
#description: ""
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Là aussi, belle photo qui met en évidence la robe des _Parasaurolophus_, prise alors que je chutais de mon piédestal rocheux."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Katsuyama, au Japon."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
#description: ""
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
#description: ""
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Dire que je n'ai encore vu qu'un cinquième de la campagne à ce stade !"
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Katsuyama, au Japon."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Je suis plutôt content de cette capture, même si j'étais en train de me casser la gueule entre les rochers..."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Plus près et... on commence à voir les faiblesses de certaines textures."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Jouant avec son frère."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Câliné par sa mère."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
#description: ""
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Il y a quantité d'éléments de décor dans le catalogue, même sans compter sur le _marketplace_ du _workshop_."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Je n'ai pas résisté à la tentation, si déjà j'ai les éléments à portée de main. J'avoue, la composition aurait pu être bien meilleure."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
#description: ""
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Le bateau de _Jurassic Park III_."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "De quoi se faire un manoir musée, façon Lockwood."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
#description: ""
#prompt: ""

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.8 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.8 MiB

View File

@@ -1,182 +0,0 @@
---
title: Jurassic World Evolution 3
date: "2026-03-05 01:38:12"
cover: images/2958130_20260302225758_1.png
genres:
- jeu de gestion économique
entreprises:
- Epic Games Store
- Frontier Developments
- Microsoft Store
- PlayStation Store
- Steam
links:
- name: Page Wikipédia
url: https://en.wikipedia.org/wiki/Jurassic_World_Evolution_3
lang: en
- name: Site officiel
url: https://www.frontier.co.uk/games/jurassic-world-evolution-3
wikidata_id: Q134723499
weather:
temperature: 7.77777777777778
humidity: 62
pressure: 1024.38256370315
wind_speed: 3.5405568
wind_direction: 108
illuminance: 0
precipitations: false
source:
- influxdb
comments_url: https://com.richard-dern.fr/post/479
---
## En bref
- Le meilleur de la saga
- Bravo à Frontier qui a écouté les critiques des joueurs
## Configuration
Ma [machine de jeu](/interets/informatique/2022/04/15/mon-nouveau-pc-de-jeu-est-arrive/) est un Ryzen 9 5900X, 32G de mémoire vive, et une RTX3080 10G.
Elle tourne sous [NixOS](https://nixos.org/) 25.11.
Je joue sur un téléviseur [4K@120Hz](/interets/informatique/2024/01/15/2024-l-annee-du-changement/) (LG C3 55 pouces).
![](images/2958130_20260302225811_1.png)
![](images/2958130_20260302225818_1.png)
## Rappels
[Le premier opus](/critiques/jeux-video/jurassic-world-evolution/) était excellent, mais il manquait cruellement de contenu, en particulier concernant les objets et les options pour personnaliser les parcs.
J'estimais qu'il était beaucoup plus accessible que _Planet Coaster_ que j'avais acheté en même temps.
[Le deuxième volet](/critiques/jeux-video/jurassic-world-evolution-2/) a un peu étoffé le contenu, mais se trouvait grevé par d'autres défauts qui l'ont rendu, à mes yeux, moins intéressant au fil du temps, malgré ma conclusion originale.
## Critique
La campagne s'est largement étoffée, et nous offre l'accès à des contrées encore jamais explorées, pas même dans la saga cinématographique ou ses _spin-offs_.
Mais avant d'y évoluer, il faudra passer par des lieux déjà connus.
Un bon moyen de s'ancrer dans le canon avant d'introduire des nouveautés bienvenues, tout en permettant au joueur de se familiariser avec son environnement de gestion de parc.
Les habitués de la série de jeux-vidéo trouveront sans doute ces présentations un peu laborieuses, considérant que les mécaniques sous-jacentes n'ont pas vraiment changé.
Il s'agit toujours de recruter des scientifiques, d'envoyer des expéditions chercher des fossiles, en extraire l'ADN ou les vendre, jusqu'à pouvoir incuber des œufs, relâchés dans un enclos approprié, tout en s'assurant que les visiteurs sont contents du parc.
![](images/2958130_20260302230629_1.png)
Mais cette redondance apparente avec les deux volets précédents n'est finalement que la mécanique de base d'un jeu de gestion de parc à dinosaures, et _Jurassic World Evolution 3_ a beaucoup plus à offrir.
Et c'est tout l'intérêt de commencer par la campagne, même si on maîtrise le jeu de bout en bout.
![](images/2958130_20260302225950_1.png)
Il n'est plus question ici d'épisodes indépendants à achever séquentiellement.
Ici, les allers-retours seront fréquents, et l'histoire conduira le joueur à switcher d'un parc à un autre dès le début de la campagne.
Heureusement, ce papillonnage n'a pas de conséquence négative sur les parcs laissés en attente.
Ces interruptions, ces voyages d'un parc à un autre, permettent une rupture visuelle ponctuelle, ce qui n'est pas pour me déplaire, compte tenu de la diversité des lieux visités.
![](images/2958130_20260302230305_1.png)
![](images/2958130_20260302231244_1.png)
![](images/2958130_20260302231655_1.png)
{.center }
La beauté du jeu est phénoménale, et je crois qu'elle est notamment due à l'introduction du [ray-tracing](https://fr.wikipedia.org/wiki/Ray_tracing).
La lumière et les ombres sont beaucoup plus naturelles, apportent plus de contraste, et contribuent finalement à une immersion que je n'attendais pas d'un jeu de gestion de parc.
![](images/2958130_20260302231458_1.png)
![](images/2958130_20260302234755_1.png)
{.center }
![](images/2958130_20260302234356_1.png)
![](images/2958130_20260302234701_1.png)
La caméra à la première personne offre un point de vue rapproché.
Accessible à tout moment depuis le menu principal, elle permet de visiter littéralement son parc.
Ce n'est pas une nouveauté de _Jurassic World Evolution 3_, mais c'est dans ce nouvel opus que j'en fais le plus usage.
La raison ?
La richesse et la diversité de la faune, de la flore, des paysages et des structures, qui atteignent des sommets.
On est comme Sarah Harding dans [_The Lost World_](/critiques/films/the-lost-world-jurassic-park/) : on ne peut se contenter de regarder, il faut qu'on "touche".
![](images/2958130_20260302234506_1.png)
![](images/2958130_20260302235320_1.png)
![](images/2958130_20260302231149_1.png)
![](images/2958130_20260302231821_1.png)
Mais cette vue à la première personne est quelque peu frustrante : instinctivement, je reprends mes réflexes dans [_ARK: Survival Evolved_](/critiques/jeux-video/ark-survival-evolved/), je veux bondir, aller partout, gratouiller un dinosaure, interagir avec eux.
J'oublie que je suis dans un jeu de gestion de parc, principalement parce qu'à la première personne, je peux aller là où je ne suis pas censé aller en tant que _visiteur_ : à l'intérieur des enclos.
Pourtant, les déplacements sont à la fois contraints et hasardeux : il n'est pas rare de rester coincé dans les rochers, à la recherche de l'emplacement parfait pour une photo.
Et nul saut ne viendra nous aider, sinon les sauts épileptiques de la caméra qui tente de suivre un chemin qui n'a pas été prévu pour elle.
![](images/2958130_20260302235235_1.png)
Donc, pour parfaitement apprécier la vue à la première personne : restez dans les chemins prévus à cet effet !
![](images/2958130_20260302231731_1.png)
![](images/2958130_20260302231341_1.png)
![](images/2958130_20260302232056_1.png)
Malgré la complexité visuelle, apportée par la diversification des lieux visités, je ne me sens pas comme d'habitude, surchargé, incapable de reproduire ou enrichir ce que je vois.
Je n'ai pas l'impression que les outils mis à ma disposition sont trop compliqués pour que je puisse assembler correctement deux formes.
Pourtant, c'est le point qui me faisait le plus peur avec ce nouveau volet : j'ai eu vent de la diversification des outils de constructions, plus proches de _Planet Coaster_ que de _Jurassic World Evolution_.
Et si j'ai si peu joué à _Planet Coaster_, c'est parce que cette complexité me faisait peur.
Dans les deux épisodes précédents, je posais mes routes, mes bâtiments, mes clôtures, je m'occupais de mes animaux, et je ne me préoccupais pas du tout de l'aspect esthétique de mes parcs.
Mais ici, ça serait une trahison intellectuelle de ne pas exploiter tout ce que le jeu peut nous offrir.
![](images/2958130_20260302234545_1.png)
![](images/2958130_20260305002008_1.png)
![](images/2958130_20260305002508_1.png)
Et, maintenant que le jeu offre un _workshop_ (malheureusement pas intégré à celui de Steam), on peut télécharger des _blueprints_ qui sont, pour certains, de toute beauté.
Il y a de gros, gros fans _hardcore_ qui ont déjà accompli un travail absolument  positivement monstrueux.
![](images/2958130_20260305002732_1.png)
![](images/2958130_20260305002836_1.png)
![](images/2958130_20260305002858_1.png)
![](images/2958130_20260305002940_1.png)
Tout cela ferait presque oublier la vue classique d'un jeu de gestion de parc, alors qu'elle n'est pas moins méritante.
![](images/2958130_20260305001637_1.png)
L'optimisation du jeu est excellente.
Je peux zoomer ou dézoomer comme un porc, me balader aux quatres coins d'une immense carte en mode créatif, je n'ai à déplorer que de rares ralentissements, parfaitement compréhensibles sur des cartes très fournies.
Il est très clair que, sur ce point aussi, _JWE3_ a bénéficié d'améliorations considérables.
![](images/2958130_20260302225905_1.png)
On pourra toutefois reprocher des temps de chargement relativement longs, mais, surtout, l'absence apparente de sauvegarde automatique en quittant le jeu.
On doit sauvegarder manuellement, puis quitter.
Mais la grande nouveauté de cet épisode est l'introduction des bébés dinosaures.
![](images/2958130_20260302235531_1.png)
![](images/2958130_20260302235840_1.png)
Réunissez un mâle et une femelle, offrez-leur un petit nid d'amour (littéralement), et quelques instants plus tard, vous pourriez y découvrir un œuf, duquel sortira un juvénile, et tout ce qu'il a à offrir de plus "kawaï".
Après, vous le gardez ou vous le vendez...
## Appréciation
Le jeu a atteint une maturité insoupçonnée.
Je compare ici avec la saga _Civilization_, qui a trébuché avec le sixième épisode et qui s'est franchement viandé avec le septième, au point qu'on se demande si la série peut y survivre.
C'est rare qu'un épisode ultérieur soit meilleur que les précédents.
Mais c'est indéniablement le cas pour _Jurassic World Evolution 3_ qui comble tous les déficits de ses prédécesseurs.
À part pouvoir visiter l'intérieur des laboratoires et observer les scientifiques travailler, j'ignore ce qu'il pourrait manquer à ce jeu.

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "J'ai du mal à me décider : on a évolué un peu ou pas du tout ?"
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
# description: ""
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
attribution: "ChatGPT 5.2"
description: "L'artisan persiste à vouloir exercer son métier dans un monde qui l'a rendu obsolète."
prompt: "The image shows an experienced farrier, kneeling on the pavement by a modern city garage at dusk. He is focused on fitting a horseshoe to the hoof of a dark brown horse while his worn gear and a toolbox rest beside him, set against the bustling urban backdrop of reflective buildings, cars, pedestrians, and illuminated billboards."

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "L'interface de connexion de _The Lounge_."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Je sais, c'est choquant."
#prompt: ""

Binary file not shown.

Before

Width:  |  Height:  |  Size: 107 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 476 KiB

View File

@@ -1,171 +0,0 @@
---
title: Nouveautés du blog
date: "2026-02-24 00:15:30"
cover: images/cover.png
tags:
- Vibe coding
- Intelligence Artificielle
- Design
- Blog
- IRC
- Nostalgeek
entreprises:
- OpenAI
weather:
temperature: 8.88888888888889
humidity: 99
pressure: 1022.01209165491
precipitations: false
wind_speed: 4.1842944
wind_direction: 232
illuminance: 0
source:
- influxdb
comments_url: https://com.richard-dern.fr/post/476
---
## Nouveau design
Comme presque chaque année depuis 2021, j'ai créé un nouveau design pour le blog.
Il est toujours **totalement dépourvu de javascript**, le CSS fait toujours moins de 15ko, et la page d'accueil pèse un peu moins de 1.5Mo.
Je suis plutôt content du résultat, surtout que mes blocs "spotlight" ("À la une" et les critiques sur la page d'accueil) fonctionnent plutôt bien et apportent une dynamique que j'estime bienvenue.
La différence par rapport aux années passées est que je me suis laissé tenter par le [_vibe coding_](https://fr.wikipedia.org/wiki/Vibe_coding).
Mais avant de fermer l'onglet de votre navigateur et de vous dire que plus jamais vous ne visiterez mon site parce que je suis un suppôt de Satan, laissez-moi une chance de m'exprimer.
Il y a fort longtemps, avant l'avènement des méthodes dites "[agiles](https://fr.wikipedia.org/wiki/Méthode_agile)" et leur exploitation massive (avant la fin des années 2000), les développeurs avaient une autre façon de travailler : ils rédigeaient **un cahier des charges**.
Les développeurs étaient au contact du client qui exprimait son besoin.
Leur rôle était de traduire la pensée humaine abstraite du client en une application mathématique concrète.
Essayez de vous souvenir : c'était l'époque où, lorsqu'un éditeur d'application ou de jeux-vidéo sortait un nouveau produit, les clients n'avaient pas forcément un Internet haut-débit pour télécharger des mises à jour régulières.
C'était l'époque où, quand un produit était commercialisé, il était réputé **fini**.
![](images/what-why.gif)
Lorsque "tout le monde" informatique s'est mis aux méthodes agiles, on ne faisait plus de cahier des charges.
On faisait des _specs_, courtes et ciblées, que les commerciaux ou le service après-vente (ou autre dénomination élogieuse) communiquaient aux développeurs.
Ces derniers furent isolés du client final, et perdaient au passage la vision d'ensemble du produit.
Le client fut alors mis dans une position où toute modification de son idée initiale devait faire l'objet d'un ticket, puis d'un sprint.
Plus personne ne réfléchit au **projet**, mais on avait tous gagné en "agilité".
Lorsque le client a besoin d'une nouvelle fonctionnalité (ou décide qu'il veut décaler une image d'un pixel vers la gauche), il déclenche en réalité une longue procédure (simplifiée ici) :
- Le client interpelle le prestataire.
- Le prestataire envoie la demande au chef de projet.
- Le chef de projet chiffre la demande en moyens humains, financiers et temporels.
- Le prestataire compile ces informations et voit avec la direction des finances.
- Les finances approuvent ou rejettent la demande.
- On demande au chef de projet de faire des compromis.
- Le chef de projet crée un ticket, qui n'est **pas** la demande initiale du client, mais un **compromis** de cette demande.
- Les développeurs sont affectés au ticket.
- Les développeurs soumettent le code "approprié".
- Les modifications passent par une batterie de tests automatisés.
- On déploie une infrastructure de tests que l'on est censés imaginer aussi proche que possible de l'infra de déploiement, sauf que personne ne la connait.
- On affecte des membres du service support aux tests manuels.
- On déploie le patch en production.
- Ça ne convient pas au client : on recommence.
![](images/agile.webp)
L'Intelligence Artificielle est ensuite venue combler le déficit évident de cette "méthode" : le client demande directement à l'IA de faire ce qu'il veut.
Si le résultat n'est pas à la hauteur de ce qu'il voulait, le client ne peut s'en prendre qu'à lui-même : c'est lui qui s'est mal exprimé.
Il reformule alors, corrige, modélise sa propre application avec l'aide de l'IA.
C'est ce que proposent désormais [Wix](https://fr.wix.com/ai-website-builder) ou [Wordpress](https://wordpress.com/fr/createur-de-site-web-ia/), pour ne citer qu'eux.
Il est loin le temps où le client savait ce qu'il voulait, où il était capable d'aligner sa vision dans un document complet, conjointement avec les développeurs grâce à un lien social, et où le livrable était considéré comme **définitif**.
Je n'ai jamais adhéré à ce schéma.
C'est peut-être pour ça que j'ai connu tant d'échecs professionnels : parce que j'avais l'intuition que cela allait nous conduire, vingt ans plus tard, à l'[extinction du métier de développeur](/interets/liens-interessants/2026/02/09/28a32442/), alors que [j'espérais pendant longtemps](/interets/informatique/2023/02/10/faire-du-developpement-un-artisanat/) qu'on en ferait un artisanat, dans le sens noble du terme.
Donc, si je ne suis plus le développeur, et que je ne suis pas celui qui vend un produit, je suis forcément le client.
Mieux : je suis un client exigeant qui sait exactement ce qu'il veut et qui est capable de le formaliser dans un cahier des charges exhaustif.
J'ai rédigé mon cahier des charges pour mon nouveau design au poil de cul.
Tout y était, tout ce que je voulais, à l'exception des mockups que j'ai remplacé par des descriptions textuelles claires et complètes parce que je n'ai aucun talent artistique.
Et au moment de me lancer dans l'implémentation de ce cahier des charges, mon cerveau a gelé.
Le burn-out, tapis dans l'ombre, et la dépression temporairement mise en sourdine, tout cela s'est ranimé d'un coup, en même temps qu'une épiphanie : si je ne peux plus coder, mais que je peux encore écrire un cahier des charges, alors je vais laisser [ChatGPT](https://chatgpt.com/) "exécuter ma vision".
Et le fait est que ChatGPT s'est bien débrouillé.
Le code était immonde, pas optimisé, avec des effets de bord monstrueux que je n'aurais jamais pu tolérer dans ma carrière, mais le résultat visuel et fonctionnel était conforme à mes exigences.
Ça a durement mis à l'épreuve ma capacité  virtuellement inexistante à lâcher prise.
Pourtant, il m'a suffi de quelques instructions supplémentaires dans un fichier [`AGENTS.md`](https://agents.md) pour corriger le tir et forcer ChatGPT à refactoriser et produire un résultat un peu meilleur.
À ce jour, tout n'est pas parfait, des optimisations sont encore possibles, et c'est une bonne chose : je ne suis plus capable de développer, mais je suis parfaitement capable d'expliquer à une IA comment travailler correctement.
Et les [skills](https://developers.openai.com/cookbook/examples/skills_in_api) devraient faire partie de ma boîte à outils dans un avenir proche.
Au final, ce n'est pas vraiment du _vibe coding_ _stricto sensu_.
C'est de la modélisation logicielle par LLM, mais au lieu de partir de petites specs "au feeling" ([à l'arrache...](https://www.la-rache.com/)), je pars sur un cahier des charges dûment rempli, comme au bon vieux temps.
Encore une fois, ce n'est pas parfait, mais je suis satisfait dans la mesure où j'ai avancé sans avoir eu besoin de m'arracher les cheveux.
## Recherche
J'ai dit, au début de cet article, que le blog est toujours totalement dépourvu de javascript.
En réalité, il y a un fichier de javascript, mais il n'est chargé et utilisé que sur la nouvelle [page de recherche](/recherche/).
Cette fonctionnalité sur mon site est, là encore, une affaire de lâcher-prise, à petite dose bien contrôlée.
J'approche des 500 publications, et ma rédaction se densifie et se diversifie.
Je pense donc qu'il n'est plus déraisonnable d'envisager la possibilité de caresser l'idée qu'éventuellement il soit potentiellement possible[^humour] de faire une recherche.
[^humour]: Humour par accumulation, dérision et absurdité.
Pour ceux que ça intéresse, et qui ont tenu le coup jusque-là, c'est [MeiliSearch](https://www.meilisearch.com) qui fait tourner le moteur.
Je l'ai choisi parce qu'il est disponible nativement sous NixOS et parce qu'il fait le job sans me prendre la tête.
## Chat
Encore un point sur lequel je me suis  un peu  ravisé : l'interaction avec mes visiteurs.
À la base, [mon manifeste](/manifeste/) indiquait mon refus de l'interaction immédiate.
Au fil des évolutions de mon blog, je me suis ouvert au fediverse, à [Matrix](/interets/informatique/2023/03/24/matrix-c-est-fini/), à [mastodon](/interets/informatique/2023/06/26/de-retour-sur-le-fediverse/) et dérivés, et même à [instagram](/interets/informatique/2025/12/10/j-ai-quitte-instagram/).
Aucune de ces plateformes ne m'a convenu, pour différentes raisons.
[J'en suis toujours revenu](/interets/informatique/2023/08/07/j-abandonne-le-fediverse/), et j'ai toujours privilégié le [contact](/contact/) par email.
Finalement, cela fait depuis deux mois que [je fais tourner](/interets/informatique/2025/12/13/commentez-mes-articles-sur-lemmy/) une instance de [lemmy](https://join-lemmy.org/), et elle est assez docile pour que j'oublie presque son existence ; c'est une chose que j'apprécie chez un serveur.
Du coup, j'avais envie de réaliser un vieux rêve : recréer chez moi l'expérience des messageries instantanées multi-utilisateurs des années 2000.
![](images/860_chat.jpg)
Les plus jeunes ne comprendront pas ma référence.
Les plus vieux ne comprendront pas pourquoi j'ai mis autant de temps avant de m'y mettre.
Figurez-vous que, comme pour ActivityPub, j'ai déjà essayé plusieurs fois, sans jamais y trouver mon compte.
J'ai eu mon lot d'installations du couple [anope](https://www.anope.org/)/epona, d'[UnrealIRCd](https://www.unrealircd.org/), et compagnie.
Trop de boulot pour pas grand-chose ; à l'époque où je les avais testés, en tout cas.
Je rajoute que ce sont aussi les solutions web qui ne m'ont jamais convenu.
À mes yeux, les clients pour [IRC](https://fr.wikipedia.org/wiki/Internet_Relay_Chat) sont austères et peu engageants, ce qui m'avait conduit, à une époque, à essayer [Movim](https://movim.eu/), visuellement plus chaleureux, mais comme toute stack [XMPP](https://xmpp.org), s'est révélé une plaie à maintenir.
Et comme je ne veux plus m'encombrer d'applications non-web, les choix étaient limités.
Or, j'ai pris connaissance de [The Lounge](https://thelounge.chat), client IRC basé sur le web, moderne et agréable à utiliser.
Bien qu'il ne soit pas parfait, il représente bien l'esthétique (modernisée) de "la belle époque" du web  toujours selon moi au contraire de [gamja](https://codeberg.org/emersion/gamja).
Le plus gros reproche que j'ai à lui faire concerne le formulaire d'entrée, que j'espérais pouvoir limiter au choix d'un pseudo ("_Nick_"), et l'absence de traduction en français qui pourrait dissuader certains lecteurs de me rendre visite.
![](images/login-thelounge.png)
Côté serveur, ChatGPT m'a suggéré [ergo](https://ergo.chat/), là encore pour son installation native sur NixOS.
J'ai eu quelques soucis avec les certificats, comme je m'y attendais, compte tenu de l'architecture de mon réseau, mais au final, tout fonctionne.
Et, effectivement, malgré quelques défauts, je retrouve un peu ce ressenti que j'avais à l'époque des guerres de bots à coup de _revenge-kick-ban_, des répondeurs, des robots conversationnels et autres [eggdrops](https://fr.wikipedia.org/wiki/Eggdrop).
Ça m'a rappelé que c'est comme ça que j'avais commencé à développer sur Internet : un chatbot sur IRC.
Ça fait vibrer ma corde nostalgique, et j'ai l'espoir d'attirer sur mon serveur deux catégories de visiteurs :
- les utilisateurs habituels d'IRC qui pourront accéder à mon salon (`irc.dern.ovh:6697`, `#lounge`) par leurs propres moyens,
- les visiteurs occasionnels qui ne seront pas réfractaires à un peu d'anglais pour saisir un "_Nick_" qui leur convient dans [l'interface web](https://irc.dern.ovh/) que je mets à disposition.
Et d'ailleurs, en parlant de bots, j'en ai _vibe codé_ deux :
- _WeatherBot_, qui vous accueillera avec ma météo du moment, fournie par [ma propre station](/interets/meteorologie/2023/09/15/mise-a-jour-de-ma-station-meteo/) via [Home Assistant](https://www.home-assistant.io)
- _BlogBot_, qui annoncera la publication de nouveaux articles, et offre une commande `!blog` (dont je vous laisse découvrir l'usage)
## Conclusion
Cette nouvelle version de mon blog m'a conduit à explorer des terres inconnues.
J'ai traversé le clivage causé par l'IA, et j'ai fini par embrasser le _vibe coding_ pour moderniser mes expériences d'antan.
Malgré ses défauts (et ceux de ses utilisateurs, concepteurs, promoteurs), l'informatique a ceci de particulier qu'elle comprime le temps : son évolution à une échelle sans précédent facilite la nostalgie rapide.
En somme, elle nous fait vieillir plus vite.
De plus, le fait d'avoir traversé un nouveau siècle, mais aussi un nouveau millénaire, lui confère des propriétés uniques dans notre esprit : des usages très récents à l'échelle de l'histoire humaine passent du statut de standard mondial à l'obsolescence en moins de dix ans.
Et l'IA met encore un coup d'accélérateur.
Je n'ai rien fait de spécial : j'ai mis à jour mon blog, comme des milliers de blogueurs à travers le monde à chaque instant.
J'ai pourtant l'impression d'avoir relié mon passé et mon avenir.
Je ne sais pas si l'IA causera notre perte ou sera notre salut, et le fait-même de se poser la question est troublant.
Je n'aurais pas cru être amené à tant de métaphysique, simplement en mettant mon site à jour.
Je suis juste content de ne pas m'être laissé dépasser par l'IA.

View File

@@ -152,6 +152,6 @@ Jai abandonné la souris pour un TrackPad.
## Consommation électrique
Je dispose dun onduleur Eaton Ellipse 1200 Pro qui présente la caractéristique intéressante de me fournir la consommation réelle de ce qui est branché dessus. Ainsi, je peux dire que lensemble de mon réseau consomme au total moins de 40W en moyenne. Je trouve que cest très satisfaisant. Londuleur pourrait ainsi fonctionner pendant deux heures sur batterie si une coupure de courant devait survenir. Largement de quoi voir venir…
Je dispose dun onduleur Eaton Ellipse 1200 Pro qui présente la caractéristique intéressante de me fournir la consommation réelle de ce qui est branché dessus. Ainsi, je peux dire que lensemble de mon réseau consomment au total moins de 40W en moyenne. Je trouve que cest très satisfaisant. Londuleur pourrait ainsi fonctionner pendant deux heures sur batterie si une coupure de courant devait survenir. Largement de quoi voir venir…
[^deadlink-1]: Lien inaccessible depuis le 1 novembre 2025

View File

@@ -1,4 +0,0 @@
#title: ""
attribution: "ChatGPT 5.3"
description: "ChatGPT a été mon seul espoir."
prompt: "Une illustration numérique vivante racontant une histoire de chaos numérique puis de sauvetage. À gauche, un enchevêtrement de câbles Ethernet serpente et étouffe une Freebox abîmée tandis que linscription IPv6 apparaît comme une tempête de feu au-dessus. Le logo flocon de NixOS est en train de sombrer dans une mer agitée faite de vagues et de pluie de code binaire. La scène est sombre et chaotique. À droite, la situation est lumineuse et paisible : un robot amical représentant ChatGPT, baigné de lumière, tend la main pour aider une personne soulagée qui sort de leau. Un arc-en-ciel traverse le ciel et une petite île technologique stable avec un symbole NixOS apparaît en arrière-plan. Dans le ciel est écrit Merci ChatGPT !. Style illustration numérique détaillée, composition narrative gauche-chaos / droite-sauvetage."

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "On reporte alors cette adresse de lien local dans le premier **Préfixe secondaire** de la Freebox"
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
#description: ""
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
#description: ""
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
#description: ""
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
#description: ""
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
#description: ""
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
description: "Obtention de l'adresse de lien local depuis l'interface d'OPNsense. C'est la deuxième adresse de la ligne `IPv6 Addresses`, qui commence toujours par `fe80`."
#prompt: ""

View File

@@ -1,4 +0,0 @@
#title: ""
#attribution: ""
#description: ""
#prompt: ""

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 593 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 158 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 166 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 238 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 408 KiB

Some files were not shown because too many files have changed in this diff Show More