Quotidien Shaarli

Tous les liens d'un jour sur une page.

Aujourd'hui - August 12, 2026

Quand le cache de Symfony ralentit votre application... - JoliCode

L’article de JoliCode explique comment un problème de performance dans une application Symfony a été diagnostiqué et résolu. Le composant Cache de Symfony, via son mécanisme de protection anti-stampede (peu documenté), a été identifié comme responsable de ralentissements inattendus, notamment dans une médiathèque d’administration et des endpoints d’API. Les symptômes incluaient des temps de réponse aléatoires et une première visite lente, sans lien avec le stockage ou les requêtes SQL.

Après avoir écarté plusieurs pistes (stockage, optimisations SQL), le diagnostic a révélé que le temps était perdu dans LockRegistry::compute, bloqué par des verrous (flock) liés au cache. Le problème, absent en préproduction, illustre les pièges des mécanismes de cache mal compris, même dans des environnements identiques.

La solution a consisté à ajuster la configuration du cache pour limiter l’impact de cette protection, évitant ainsi les attentes inutiles. L’article souligne l’importance du profilage en production pour identifier des causes contre-intuitives, plutôt que de se fier à des hypothèses.

Folding Globes — print · cut · fold your world

Folding Globes propose des globes à imprimer, découper et assembler soi-même, permettant de visualiser la Terre ou des lieux personnalisés sous forme de polyèdres variés (icosaèdre, cube, dodécaèdre, etc.). L'utilisateur peut choisir parmi plusieurs styles de cartes (photos satellites, atlas vintage, minimaliste, etc.) et personnaliser son globe en ajoutant des épingles pour marquer des lieux ou des QR codes pour des liens externes. Les fichiers PDF générés, sans filigrane, sont disponibles en formats A4 ou A3, avec un prix unique de 6,95 $.

Le projet, développé par MapScaping, repose sur des données cartographiques libres de droits, créditées pour chaque thème. L'interface intuitive guide l'utilisateur étape par étape, de la sélection de la forme à l'aperçu final avant impression. Les globes finis offrent une représentation géométrique originale de la Terre, adaptée à un usage éducatif ou décoratif.

Réseaux sociaux : et si nous avions la solution pour échapper aux géants américains ? | Eventuallycoding

L’article explore une alternative aux monopoles des réseaux sociaux américains en proposant une approche décentralisée et ouverte, plutôt que de créer une nouvelle plateforme centralisée. L’idée centrale repose sur le protocole ATProto, qui permet une architecture décentralisée où les utilisateurs hébergent leurs données sur des serveurs personnels (PDS), échappant ainsi au contrôle des géants technologiques. Contrairement à des solutions comme Bluesky, qui reste une application américaine, ATProto sépare le protocole de l’interface, permettant à des acteurs européens comme Eurosky de proposer des services locaux tout en restant interconnectés.

L’auteur souligne que cette décentralisation redonne aux utilisateurs le contrôle sur leurs données, évitant leur exploitation par une poignée d’entreprises. Le protocole permet aussi une modularité inédite, où chaque composant (stockage, modération, visualisation) peut être personnalisé ou remplacé, favorisant l’innovation et la souveraineté numérique, notamment en Europe. Une solution qui contraste avec les modèles traditionnels, où les données sont captives des plateformes.

L'Agent Development Environment : une nouvelle unité de travail - JoliCode

L’« Agent Development Environment » (ADE) est présenté comme une évolution de l’environnement de développement traditionnel adaptée à l’arrivée des agents IA : l’unité de travail n’est plus seulement le fichier ou le dépôt de code, mais une tâche complète confiée à un agent, qui peut explorer le projet, proposer un plan, modifier le code et préparer une pull request. Des outils comme Orca ou Jean permettent ainsi d’orchestrer plusieurs agents en parallèle, chacun travaillant dans un environnement Git isolé grâce aux worktrees, tout en regroupant tickets, contexte, code et revues. Cette approche modifie le rôle du développeur, qui passe davantage de l’écriture directe du code à la définition des tâches, au pilotage des agents et à la validation de leurs résultats. L’auteur insiste néanmoins sur la nécessité de conserver un contrôle humain fort : privilégier les agents en lecture seule pour l’analyse et la planification, valider leurs plans avant exécution et relire entièrement le code généré, le développeur restant responsable de ce qui est finalement intégré.