François Castets
Journal

Des notes de chantier.Notes from the build.

Ce qui a cassé, ce qui a marché, et le chiffre qui le prouve. Des retours de chantier plutôt que des billets écrits pour remplir.What broke, what worked, and the number that proves it. Field reports rather than posts written to fill space.

22 October 202622 October 2026

Budget de crawl : pourquoi Google ne lit pas tout votre siteCrawl budget: why Google does not read your whole site

Sur un site à forte volumétrie, le moteur n'explore qu'une partie des pages. Comment orienter son passage vers celles qui comptent.On a high-volume site, the crawler only reads part of it. How to steer its visits towards the pages that matter.

Lire la noteRead the note
21 October 202621 October 2026

Automatiser la production d’articles sans publier de la bouillieAutomating article production without publishing slop

Une chaîne de rédaction assistée pour neuf médias : ce qu'on automatise, ce qu'on ne délègue jamais, et le garde-fou qui évite le pire.An assisted writing pipeline for nine media sites: what gets automated, what never gets delegated, and the guardrail that prevents disaster.

Lire la noteRead the note
20 October 202620 October 2026

Multisite ou neuf installations ? Le choix et ce qu’il coûteMultisite or nine separate installs? The choice and what it costs

Le multisite WordPress mutualise tout, y compris les pannes. Les critères qui ont fait pencher la balance pour un réseau de neuf médias.WordPress multisite shares everything, outages included. The criteria that settled it for a nine-site media network.

Lire la noteRead the note
19 October 202619 October 2026

Servir ses propres emplacements publicitaires sans ad serverServing your own ad slots without an ad server

Une régie maison pour neuf médias : rotation, plafonnement, comptage des impressions, et pourquoi tout cela tient sans plateforme externe.An in-house ad platform for nine media sites: rotation, frequency capping, impression counting, and why none of it needs an external platform.

Lire la noteRead the note
18 October 202618 October 2026

Neuf médias, neuf thèmes : pourquoi je n’ai pas mutualiséNine media sites, nine themes: why I did not share the code

Un thème commun aurait divisé la maintenance par neuf. J'ai écrit neuf thèmes distincts à la place, et voici le raisonnement qui a mené là.A shared theme would have divided maintenance by nine. I wrote nine separate themes instead, and here is the reasoning that led there.

Lire la noteRead the note
17 October 202617 October 2026

Un annuaire de 3 645 fiches sous WordPress : le schéma de donnéesA 3,645-entry directory on WordPress: the data model

Métadonnées sérialisées ou colonnes dédiées ? Le choix de modélisation qui décide si un annuaire WordPress tiendra la charge ou pas.Serialised post meta or dedicated columns? The modelling decision that determines whether a WordPress directory will hold up.

Lire la noteRead the note
16 October 202616 October 2026

Données structurées pour un annuaire de lieux : ce que Google comprend vraimentStructured data for a places directory: what Google actually understands

LocalBusiness, adresse, horaires, note : le balisage qui fait apparaître une fiche dans les résultats enrichis, et celui qui ne sert à rien.LocalBusiness, address, opening hours, rating: the markup that earns a rich result, and the markup that does nothing.

Lire la noteRead the note
15 October 202615 October 2026

Du GPS du navigateur au tri par distance : les pièges du trajetFrom the browser’s GPS to distance sorting: the traps along the way

Demander la position, gérer le refus, arrondir, convertir en kilomètres : le parcours complet d'une géolocalisation web, et les erreurs classiques.Asking for a position, handling a refusal, rounding, converting to kilometres: the full path of a web geolocation, and the classic mistakes.

Lire la noteRead the note
14 October 202614 October 2026

Afficher 3 645 marqueurs sur une carte sans faire fondre le téléphonePutting 3,645 markers on a map without melting the phone

Mille marqueurs sur une carte web et le défilement se met à saccader. Regroupement, rendu vectoriel et chargement par zone : ce qui marche vraiment.A thousand markers on a web map and scrolling starts to stutter. Clustering, vector rendering and loading by viewport: what actually works.

Lire la noteRead the note
13 October 202613 October 2026

Répondre à « autour de moi » sur 3 645 escape games en moins de 100 msAnswering “near me” across 3,645 escape rooms in under 100 ms

Une recherche géolocalisée sur 3 645 salles, sans serveur dédié ni base spécialisée. Le détail de la requête, des index et du cache qui tiennent la charge.Geolocated search across 3,645 escape rooms, with no dedicated server and no specialised database. The query, the indexes and the cache that hold up.

Lire la noteRead the note