Hebdomadaire Shaarli

Tous les liens d'un semaine sur une page.

Semaine 40 (September 29, 2025)

Installation de Linux Mint sur un Acer Swift 1 : le parcours du combattant – Tugaleres.com

L’article relate l’installation laborieuse de Linux Mint sur un Acer Swift 1 SF114-31-P68BW, une opération qui a pris bien plus de temps que prévu (plus de deux heures au lieu de 25 minutes). Le premier obstacle a été l’impossibilité de désactiver le Secure Boot dans le BIOS, résolue en définissant un mot de passe BIOS. Ensuite, après une installation apparemment réussie, le PC affichait « No Bootable Device » au redémarrage. La solution a consisté à ajouter manuellement le fichier shimx64.efi comme fichier UEFI de confiance dans le BIOS, puis à reconfigurer l’ordre de démarrage pour placer Linux Mint en première position. L’auteur critique la complexité imposée par Acer pour une simple installation d’un autre système d’exploitation, malgré la documentation officielle, et espère que son retour d’expérience aidera d’autres utilisateurs confrontés au même problème. Un témoignage utile pour ceux qui souhaitent passer à Linux sur ce modèle !

How We Migrated 1 Billion Records from DB1 to DB2 Without Downtime | by Himanshu Singour | Sep, 2025 | Medium

L’auteur raconte comment son équipe a migré plus d’un milliard d’enregistrements d’une base de données critique (contenant des données financières) vers une nouvelle, sans aucune interruption de service. Voici les étapes clés et les leçons apprises :

  1. Migration par lots des données historiques : Les données ont été divisées en chunks par plages d’ID, chargées en parallèle avec les index et contraintes désactivés pour accélérer le processus, puis vérifiées par des checksums pour garantir l’intégrité.

  2. Écritures doubles (dual writes) : Pendant la migration, chaque nouvelle écriture était dupliquée vers l’ancienne et la nouvelle base. Les échecs étaient gérés via une file Kafka de réessai, avec des écritures idempotentes pour éviter les doublons.

  3. Lectures fantômes (shadow reads) : Les requêtes étaient exécutées en silence sur la nouvelle base et comparées à l’ancienne pour détecter des incohérences (fuseaux horaires, collations, valeurs NULL), permettant de corriger les problèmes avant de basculer les utilisateurs.

  4. Bascule progressive (cutover) : La nouvelle base a été préchauffée (cache et index), et le basculement a eu lieu à 4h30, heure de faible trafic, avec un mécanisme de retour arrière (rollback) prêt. Les métriques business et techniques ont été surveillées en temps réel.

  5. Observabilité totale : Des tableaux de bord ont suivi la latence, le lag de réplication, les deadlocks, et les KPI métiers pour détecter instantanément tout problème.

Leçons clés :

  • Les migrations à grande échelle se font par lots parallèles, avec des mécanismes de reprise et de vérification.
  • Les dual writes et les shadow reads sont essentiels pour capturer les données en temps réel et valider la nouvelle base.
  • La bascule doit être préparée comme une opération critique : cache préchauffé, monitoring obsessionnel, et plan de rollback.
  • Une migration réussie repose sur la conception distribuée (idempotence, files de réessai) et une observabilité fine (WAL, cache, deadlocks).

En traitant la migration comme un problème de system design plutôt que technique, l’équipe a pu garantir une transition sans temps d’arrêt, malgré la pression et les risques financiers.

podman : Utiliser podman comme docker avec les mêmes commandes - Wiki - Wiki

Ce shaarli explique comment utiliser Podman comme un substitut à Docker, en permettant l'exécution des commandes Docker habituelles avec Podman. L'article détaille l'installation du paquet podman-docker, qui fournit un script docker émulant les commandes Docker, ainsi que la suppression du message d'avertissement via la création du fichier /etc/containers/nodocker. Il aborde aussi la compatibilité avec docker-compose grâce à l'installation de podman-compose, et présente deux solutions pour gérer le démarrage automatique des conteneurs (via Quadlet ou en activant le service podman-restart). L'objectif est de faciliter la transition pour les utilisateurs habitués à Docker, tout en profitant des avantages de Podman, notamment son absence de démon.

Comment protéger vos serveurs et lutter efficacement contre les crawlers d’IA

Face à la multiplication des robots d’indexation (notamment ceux des LLM), Bearstech propose plusieurs stratégies pour limiter leur impact : filtrage (via robots.txt, blacklist d’IP ou User-Agents, outils comme Darkvisitor ou Cloudflare), mitigation (rate-limiting avec HAProxy, tests inversés comme Anubis ou Cloudflare Turnstile), délégation (CDN avec WAF comme Cloudflare ou Bunny), et surtout optimisation (cache avec Varnish/Redis, tuning de base de données, tests de charge). Aucune solution n’est universelle : chaque approche a ses avantages (efficacité, simplicité) et inconvénients (maintenance, faux positifs, coût). L’idéal ? Combiner filtrage ciblé, cache agressif et optimisation pour rendre son infrastructure plus résiliente, tout en préservant le référencement et l’expérience utilisateur. Une analyse fine du trafic et des goulets d’étranglement reste indispensable. 🛡️🔍

Service - Month-End - Scott H Young

Scott H. Young clôt son année de projet Foundations avec un mois dédié au service, une thématique qui l’a amené à repenser sa philosophie de vie. Bien que ses actions concrètes (dons de sang, dons à des associations recommandées par GiveWell) aient été limitées par les contraintes logistiques du bénévolat, cette période a surtout marqué un changement d’attitude : passer d’une vision où la morale est une contrainte à une vie épanouie, à une approche où l’épanouissement personnel devient une contrainte secondaire au service des autres. Il réalise que, comme pour les autres fondations (fitness, alimentation, etc.), ce sont les changements d’état d’esprit plutôt que les habitudes qui durent. Ce mois lui a aussi permis de comprendre que le bonheur et la satisfaction peuvent émerger davantage d’une vie tournée vers l’impact positif que vers la recherche directe du bien-être. Une réflexion profonde sur l’altruisme et la construction d’une vie significative, avec l’espoir de s’engager davantage à l’avenir.

Paris Web 2025 : l'inclusivité au cœur de l'événement - Alsacreations

Paris Web 2025 a marqué les esprits avec une édition placée sous le signe de l’inclusivité, de l’accessibilité, de la diversité et de l’écoconception. Organisée à l’Institut Louis Pasteur, la conférence a proposé des présentations variées, accessibles (LSF, vélotypie) et engagées, mêlant technique, retours d’expérience et réflexion sur les bonnes pratiques du web.

Parmi les temps forts, on retient notamment la conférence d’Agnès Haasser sur le HTTPS et ses enjeux de sécurité, un retour d’expérience percutant d’Anne Faubry et Chloé Corfmat sur l’accessibilité pour les personnes déficientes visuelles (au-delà du RGAA), et une démonstration convaincante des Passkeys par Daniel Garnier-Moiroux. D’autres sujets comme le design validiste, l’Unicode, les Web Components, ou encore l’impact psychosocial de l’IA ont aussi rythmé ces deux jours. L’événement a confirmé son rôle de bulle inspirante et bienveillante pour les passionné·e·s du web, avec des interventions de qualité et une approche résolument humaine et pratique.

Pain — David Larlet

David Larlet donne sa recette du pain. Il n'y a plus qu'à essayer

Choix de l’infra et hyperviseur, Pourquoi Proxmox ? Choix de l’hyperviseur pour notre cloud interne | by Thibault Buze | Sep, 2025 | Medium

Thibault Buze explique dans ce troisième volet de Sous le capot du cloud le choix de Proxmox VE comme hyperviseur pour leur cloud interne, après une analyse des besoins clés : haute disponibilité (HA), automatisation, interopérabilité et simplicité d’opération. Parmi les alternatives (vSphere, Hyper-V, OpenStack), Proxmox s’impose pour son approche ouverte (KVM/QEMU, LXC), native HA (migration à chaud, bascule automatique), flexible (stockage iSCSI/NFS/ZFS, intégration TrueNAS) et automatisable (API, Terraform, cloud-init). L’architecture repose sur 3 hôtes minimum, des réseaux dédiés (management, stockage, données) et une intégration fluide avec Kubernetes (via Longhorn). Le tout est industrialisé en Infrastructure as Code (Terraform), garantissant reproductibilité et traçabilité. Points clés : séparation des plans de trafic, sauvegardes testées (Proxmox Backup Server), et monitoring rigoureux. Une solution souveraine, économique et scalable, idéale pour des clusters hébergeant 500 à 2000 pods.

tc

L'article introduit la commande Linux tc (traffic control), utilisée pour simuler et contrôler le trafic réseau. L’article montre comment ajouter un délai de 500 ms aux paquets avec tc qdisc add dev wlp3s0 root netem delay 500ms, puis supprimer cette règle avec tc qdisc del. L’outil netem permet aussi de perdre, dupliquer ou corrompre des paquets, idéal pour tester des conditions réseau difficiles. L’autrice mentionne qu’avec un routeur Linux, on peut même ralentir le trafic d’autres utilisateurs (comme celui d’un frère), et invite à explorer tc qdisc show pour voir les règles actuelles. Le zine complet et d’autres comics sont disponibles via abonnement ou sur le site.

ip

Cet article explique la commande Linux ip, utilisée pour visualiser et modifier la configuration réseau. L’article détaille quelques sous-commandes utiles comme ip addr list (affiche les adresses IP des interfaces), ip route list (affiche la table de routage), et montre comment changer une adresse MAC pour contourner des restrictions réseau (par exemple dans les cafés). D’autres options comme ip link (gestion des interfaces), ip neigh (table ARP), et ip xfrm (pour IPsec) sont mentionnées, ainsi que des astuces comme l’utilisation de --color pour une sortie colorée ou --brief pour un résumé. Le zine complet et d’autres comics sont disponibles via un abonnement à la newsletter ou sur le site de l’autrice.

UX et accessibilité numérique : repenser vos interfaces pour éviter le défilement horizontal - Alsacreations

L’article aborde les enjeux d’accessibilité et d’UX liés au défilement horizontal sur le web, un choix de design souvent esthétique mais problématique pour de nombreux utilisateurs (personnes naviguant au clavier, avec des troubles moteurs ou visuels, etc.). Bien que populaire (carrousels, galeries, etc.), ce modèle pose des défis majeurs : contenu manqué, navigation complexe, gestes difficiles, perte de repères, et incompatibilités selon les appareils. Le RGAA et les WCAG encadrent ces pratiques en France, rappelant que l’accessibilité améliore l’expérience pour tous et favorise l’inclusion. Si le défilement horizontal est parfois incontournable, des bonnes pratiques existent (balises ARIA, contrôles clairs, navigation clavier, gestion du focus) pour limiter ses impacts négatifs. L’article conclut en encourageant à privilégier la clarté, la simplicité et l’inclusion plutôt que les tendances visuelles, soulignant que les carrousels, par exemple, sont souvent peu efficaces et mal perçus par les utilisateurs. Une réflexion utile pour repenser les interfaces de manière plus universelle.

Disque Dur en Panne Sèche ? Oublie ncdu, GDU débarque et met tout le monde d'accord ! 🚀 - Le Geek Heureux

GDU (Go Disk Usage) est présenté comme le successeur moderne et ultra-rapide de ncdu pour analyser l’utilisation des disques sous Linux. Développé en Go, il se distingue par sa vitesse fulgurante (optimisé pour les SSD et multi-CPU), une interface intuitive et une installation simplifiée (disponible via les dépôts ou GitHub). Idéal pour identifier rapidement les fichiers encombrants, il s’impose comme un outil indispensable pour les administrateurs système et développeurs, surtout sur des serveurs distants ou des arborescences volumineuses. Une alternative efficace pour éviter les messages « Disk Full » et optimiser l’espace disque en un clin d’œil. (Lien GitHub : dundee/gdu)

A Developer’s Guide to the Command Logger Bundle for Symfony - DEV Community

Le Command Logger Bundle pour Symfony est un outil conçu pour suivre l'exécution des commandes console directement dans une base de données, idéal lorsque l'accès aux fichiers de log est impossible. Il enregistre pour chaque commande : son nom, ses arguments, les horaires de début et de fin, le code de sortie, les messages d'erreur et un identifiant unique. Simple à installer via Composer, il permet de configurer les commandes à logger (via attributs ou fichier YAML) et offre des commandes CLI pour consulter, filtrer ou purger les logs. Son objectif principal est de répondre rapidement à des questions clés : la commande a-t-elle été exécutée ? Quand ? Avec quel résultat ? Il ne capture pas la sortie console, mais fournit une traçabilité essentielle pour le débogage et l'audit.

Waterfall : la recette de l'échec

Mathieu Eveillard explique pourquoi les méthodologies séquentielles (comme le waterfall) échouent systématiquement dans l’informatique de gestion, notamment à cause de l’effet tunnel : développer pendant des mois sans feedback utilisateur mène souvent à des produits inadaptés ou inutiles. Les étapes rigides (cahier des charges, appel d’offres, développement, etc.) ignorent l’incertitude des besoins réels et les erreurs d’estimation, transformant les projets en jeux de roulette russe où le client finit captif de coûts imprévus. La solution ? L’Agilité : itérer par petites étapes, valider avec les utilisateurs, et construire la confiance progressivement, plutôt que de miser sur des documents figés et des engagements irréalistes. Une critique percutante des limites du waterfall et un plaidoyer pour des approches plus flexibles et collaboratives.

Mes astuces pour réaliser de bons tutoriels - Le Hollandais Volant

L’auteur partage ses conseils pour en réaliser des efficaces. Le point clé : rien n’est trivial. Il insiste sur la nécessité d’expliquer chaque étape, même celles qui semblent évidentes, car le public peut ne pas maîtriser les bases (où lancer une commande, comment allumer un appareil, etc.). Il recommande de définir le vocabulaire technique, d’expliquer le pourquoi derrière chaque action (ex. : choix d’un outil, respect d’une température), et d’adapter le contenu au public visé (novice, intermédiaire, expert). La précision est essentielle : éviter les formulations vagues comme « suivez la procédure normale », et lister clairement les prérequis (matériel, logiciels, permissions). Autre astuce : tester son tuto en le suivant soi-même ou en le faisant essayer à un débutant pour repérer les oublis ou ambiguïtés. Enfin, il encourage à utiliser un vocabulaire rigoureux (ex. : la RFC 2119 pour distinguer « doit », « devrait », « peut ») et à justifier chaque étape pour éviter erreurs et frustrations. L’objectif ? Rendre le tutoriel accessible, reproductible et sans zone d’ombre, quel que soit le domaine (informatique, cuisine, aéronautique…).

Tutoriel : Le Design Pattern Strategy dans Symfony (pour les débutants) — YoanDev

Ce tutoriel explique comment implémenter le Design Pattern Strategy dans Symfony, en partant d’une approche naïve avec des if/else pour aboutir à une solution professionnelle et maintenable. L’objectif est de créer un système d’analyse de céréales (blé, orge, tournesol, etc.) qui puisse s’étendre facilement sans modifier le code existant.

L’auteur détaille trois étapes :

  1. Approche naïve avec des if/else ou match (PHP 8+), simple mais peu extensible et difficile à maintenir.
  2. Solution optimale avec le Strategy Pattern : chaque type de céréale est géré par une classe indépendante (stratégie) implémentant une interface commune. Symfony utilise des attributs comme #[AutoconfigureTag] et #[AutowireIterator] pour injecter automatiquement les stratégies dans un manager, qui délègue l’analyse à la stratégie adaptée.
  3. Avantages : respect du principe ouvert/fermé, testabilité, et extensibilité (ajouter une céréale = ajouter une classe).

Le tutoriel inclut des exemples concrets, des comparatifs, et un projet GitHub pour illustrer la mise en œuvre. Une ressource idéale pour comprendre comment structurer du code Symfony flexible et évolutif.

Mon Lab Idéal 2025 : Comment j'ai créé mon empire IT dans une étagère (sans faire de bruit ni pulvériser la facture EDF) ! 🚀 - Le Geek Heureux

L’auteur partage son expérience pour monter un home lab ultra-optimisé : deux mini-PC (un GMKtec 5825U avec Ryzen 7 5825U, 64 Go de RAM et un NVMe de 2 To récupéré d’une PS5 pour la virtualisation sous Proxmox, et un Intel N100 pour le firewall OPNsense avec ports SFP 10G), le tout pour moins de 700 €. Objectifs remplis : silence absolu, consommation électrique maîtrisée, et performances au rendez-vous (10 VM simultanées, Jellyfin en 4K, Home Assistant, Bitwarden, etc.). Le tout tient dans une étagère, avec une Freebox Delta en mode bridge pour du 10G, un NAS Qnap pour le stockage, et des switches 2.5G/10G. Un setup malin, évolutif et discret, parfait pour expérimenter (Kubernetes, NixOS…) sans exploser la facture d’électricité ni le budget ! 💡🔌

Retour sur l'API Platform Conference 2025 | Les-Tilleuls.coop

L’API Platform Conference 2025 célèbre les 10 ans du framework avec des annonces fortes et un double focus : performance extrême et expérience développeur (DX). Côté performance, l’intégration d’extensions PHP écrites en Go (via FrankenPHP) et le support natif de gRPC pour PHP ont volé la vedette, permettant des gains inédits en rapidité et stabilité, comme en témoigne l’adoption par Laravel Cloud. API Platform 4.2 a aussi été dévoilé, avec des outils comme l’ObjectMapper de Symfony pour simplifier la transformation d’objets et des gains de performance multipliés par 2 ou 3.

La deuxième journée a mis l’accent sur la DX : schémas JSON pour la configuration YAML dans Symfony, l’arrivée de PIE (remplaçant moderne de PECL), et des réflexions sur l’Agent Experience (AX) pour mieux collaborer avec les IA. Fabien Potencier a notamment proposé d’ajouter un fichier llms.txt pour faciliter l’intégration des LLM. Enfin, des conférences sur les feature flags, la contribution au cœur de PHP, et l’histoire des femmes dans la tech ont rappelé l’importance de l’humain et de l’outillage moderne. En résumé, PHP se réinvente comme un écosystème hybride, performant et centré sur les développeurs, invitant à tester FrankenPHP, adopter les nouvelles pratiques DevOps et repenser l’architecture des projets. Une édition résolument tournée vers l’avenir ! 🚀

Architectures de cluster : Standalone vs HA — comment concevoir (et opérer) une HA Kubernetes on-premise | by Thibault Buze | Sep, 2025 | STEAMULO Blog

Cet article compare les architectures standalone et haute disponibilité (HA) pour Kubernetes on-premise, en expliquant comment concevoir et opérer un cluster HA. L’article détaille l’importance de redonder les composants critiques (comme l’API Kubernetes) pour éviter les points de défaillance uniques (SPOF), même si cela peut introduire de nouveaux défis (ex. : un load balancer devant les control planes peut lui-même devenir un SPOF). Il présente aussi une solution de stockage HA avec TrueNAS (exposant des volumes bloc via iSCSI) et Longhorn pour orchestrer la réplication, les snapshots et la reconstruction automatique en cas de panne d’un nœud. L’auteur insiste sur la nécessité de bien dimensionner chaque couche (stockage, réseau, contrôle) pour garantir la résilience du cluster, tout en soulignant que la haute disponibilité commence par la redondance du plan de contrôle et une gestion fine des volumes persistants. Le billet s’inscrit dans une série technique explorant les bonnes pratiques pour opérer Kubernetes en production.

ss

L'article explique comment utiliser la commande ss (socket statistics) sous Linux pour identifier et gérer les processus utilisant un port réseau. L’article montre comment ss -tunapl permet de lister les serveurs en cours d’exécution et d’afficher les PID des processus, utile pour libérer un port occupé (comme le 8080). Les options comme -n (affichage des ports en numérique), -p (affichage des PID), et d’autres (-l, -t, -u) sont détaillées pour filtrer les sockets TCP, UDP ou Unix. L’autrice recommande ss plutôt que netstat, plus ancien et complexe, pour une utilisation plus simple et efficace. Le zine complet et d’autres ressources sont disponibles via abonnement ou sur le site.

In the economy of user effort, be a bargain, not a scam • Lea Verou

Dans ce billet, Lea Verou explore l’idée que le succès d’un produit dépend de la manière dont il gère l’effort demandé à l’utilisateur en fonction de la complexité des cas d’usage. Elle illustre ce principe avec plusieurs exemples : Google Calendar, qui optimise les cas simples tout en permettant les cas complexes avec un effort supplémentaire ; l’élément HTML <video>, où la personnalisation des contrôles devient soudainement très coûteuse en effort ; l’éditeur Instagram, qui sépare les filtres prédéfinis des réglages avancés ; et Coda, qui intègre intelligemment des formules générées automatiquement pour faciliter la transition entre simplicité et complexité. Elle souligne aussi l’importance de concevoir des interfaces qui minimisent l’effort utilisateur, même si cela complique l’implémentation, comme le montre l’exemple des robinets ou des bornes de train d’Oslo. L’article plaide pour une courbe d’effort progressive, évitant les « falaises d’utilisabilité » où un petit besoin supplémentaire exige un effort démesuré. En résumé, un bon design doit être une « bonne affaire » pour l’utilisateur, pas une arnaque.

Doctrine ORM Performance Pitfalls: Lazy vs Eager vs Extra Lazy | by Bohdan Pastukh | Sep, 2025 | Medium

L’article aborde les pièges de performance dans Doctrine ORM, notamment la différence entre les stratégies de chargement Lazy, Eager et Extra-Lazy pour les associations entre entités. Par défaut, Doctrine utilise le Lazy Loading, qui peut entraîner le problème classique du N+1 : une requête initiale pour récupérer les articles, suivie d’une requête supplémentaire pour chaque article afin de charger ses commentaires, ce qui dégrade fortement les performances. L’exemple donné montre comment une simple boucle pour afficher le nombre de commentaires par article peut générer 1 + N requêtes (N étant le nombre d’articles), et charger inutilement toutes les données des commentaires en mémoire. L’article souligne l’importance de choisir la bonne stratégie de chargement pour éviter ces écueils.

Taking SVG “screenshots” of HTML elements

Cet article explique comment générer des "captures d’écran" au format SVG d’éléments HTML, notamment pour les réutiliser dans des fichiers HTML, EPUB ou PDF. L’auteur présente deux bibliothèques JavaScript permettant de convertir du HTML en SVG, avec une préférence pour html-to-svg. Il détaille une méthode pour créer une page web contenant plusieurs démonstrations de mises en page CSS, chacune convertie en SVG via un script. Chaque section peut être affichée ou téléchargée sous forme d’image SVG, avec un nom de fichier dérivé de l’ID de la section. L’astuce repose sur l’utilisation de Blob et de URL.createObjectURL pour générer un lien de téléchargement fonctionnel. Une solution pratique pour intégrer des visuels dynamiques et scalables dans divers formats de documents.

L’IA : décoder le jargon avant de se planter  • Lecodeestdanslepre

Le billet "L’IA : décoder le jargon avant de se planter" propose un décryptage accessible des termes techniques liés à l’intelligence artificielle, comme les tokens, les LLM (Large Language Models), les embeddings, le RAG (Retrieval-Augmented Generation) ou encore le MCP, afin d’aider les développeurs et curieux à mieux comprendre le fonctionnement des outils comme ChatGPT et éviter les pièges courants. L’objectif est de démystifier ces concepts pour une utilisation plus éclairée et efficace de l’IA.

The Simple Habit That Saves My Evenings | alikhil | software engineering, kubernetes & self-hosting

Ali Khil partage une habitude simple mais efficace pour préserver ses soirées en tant qu’ingénieur logiciel : au lieu de prolonger sa journée de travail en se disant « encore 20 minutes », il note les prochaines étapes à réaliser avant de partir. Cette pratique évite l’épuisement, permet de revenir le lendemain avec un esprit frais et une motivation intacte, tout en favorisant un meilleur équilibre entre vie professionnelle et personnelle. Une astuce inspirée par l’expérience, où l’envie de terminer une tâche sur le moment se transforme souvent en heures perdues et en frustration. À la clé, moins de surmenage et des idées nouvelles après une nuit de repos.

L'inertie du clavier | Les Humeurs de Gee (29) | Grise Bouille

Cette chronique humoristique de Gee aborde le thème de l’inertie technologique, en prenant pour exemple le clavier, dont les dispositions (QWERTY, AZERTY) et certaines touches (comme "Inser") persistent malgré leur obsolescence ou leur manque d’optimisation. L’auteur souligne que ces choix datent de l’ère des machines à écrire et ne sont pas adaptés aux usages modernes, mais que le coût du changement (apprentissage, incompatibilité avec les autres claviers) freine toute évolution. Il évoque aussi les avantages des logiciels libres, comme GNU/Linux, qui permettent de contourner certaines limites matérielles grâce à des fonctionnalités logicielles (accès facilité aux majuscules accentuées, espaces insécables, etc.). Enfin, il invite à adopter le logiciel libre pour gagner en flexibilité et en modernité, tout en gardant un ton léger et critique envers les habitudes ancrées.

Designing agentic loops

Simon Willison explore dans ce billet la notion de "designing agentic loops", une compétence clé pour tirer parti des agents de codage comme Claude Code ou Codex CLI. Ces outils, capables d’exécuter du code, de corriger des erreurs et d’itérer vers une solution, ouvrent de nouvelles possibilités, mais aussi des risques (commandes dangereuses, exfiltration de données, attaques par rebond). Pour les utiliser efficacement, il recommande de les faire tourner en mode "YOLO" (sans demande de confirmation systématique), mais dans un environnement sécurisé comme GitHub Codespaces ou un conteneur Docker isolé. Il souligne l’importance de bien choisir les outils et les accès (par exemple, limiter les permissions et les budgets pour les API), et d’identifier les problèmes adaptés à cette approche : débogage, optimisation de performances, ou mise à jour de dépendances. L’automatisation des tests et la documentation claire des outils disponibles (via un fichier AGENTS.md) sont essentielles pour maximiser leur utilité. Une réflexion encore émergente, mais prometteuse pour accélérer le développement logiciel.

Pourquoi certains aciers sont-ils aimantables et d’autres non ? - Couleur-Science

La réponse réside dans leur structure cristalline et leur composition. Le fer pur et les aciers simples (fer + carbone) adoptent à température ambiante une structure cubique centrée (BCC), dite ferrite, qui est ferromagnétique : leurs atomes s’alignent sous l’effet d’un champ magnétique, rendant le matériau aimantable. En revanche, les aciers inoxydables, riches en chrome et souvent en nickel, peuvent adopter une structure cubique faces centrées (FCC), dite austénite, qui est paramagnétique et donc peu ou pas attirée par un aimant. Le nickel favorise cette structure FCC, tandis que le chrome peut la stabiliser même à température ambiante. Certains inox (comme les séries 304 ou 316) ne sont donc pas aimantables, contrairement à d’autres (comme les séries 410 ou 420), qui conservent une structure ferritique ou martensitique (BCC ou BCT) et restent magnétiques. Tout dépend de la composition et des traitements thermiques ou mécaniques subis par l’alliage. Une astuce pour tester : promenez un aimant chez vous, vous verrez que certaines poignées ou casseroles en inox ne réagissent pas, contrairement à des outils ou des fonds de casseroles en acier classique.

Spec-driven development: Using Markdown as a programming language when building with AI - The GitHub Blog

L'auteur propose une approche innovante de développement piloté par les spécifications (« spec-driven development ») en utilisant le Markdown comme langage de programmation, avec l’aide d’agents d’IA comme GitHub Copilot. L’idée est de décrire l’intégralité d’une application dans un fichier Markdown (par exemple main.md), qui sert à la fois de documentation et de spécification technique, puis de laisser l’IA générer le code source (ici en Go) à partir de ce fichier. Le workflow repose sur quatre fichiers clés : un README.md pour la documentation utilisateur, un main.md pour la spécification technique (incluant la logique métier, les schémas de base de données, et même des extraits GraphQL), et des prompts (compile.prompt.md, lint.prompt.md) pour guider l’IA dans la génération et l’optimisation du code.

L’avantage principal est de centraliser la logique et la documentation en un seul endroit, évitant les incohérences et facilitant les mises à jour. Le développeur édite le Markdown, demande à l’IA de « compiler » la spécification en code, puis teste l’application. Cette méthode permet une itération rapide et une meilleure synchronisation entre la documentation et l’implémentation. Cependant, la compilation peut ralentir à mesure que le projet grandit, et l’approche nécessite une description claire et précise des attentes. L’auteur envisage d’étendre cette méthode à d’autres langages et d’intégrer des tests automatisés. Une expérience prometteuse, surtout avec les progrès des agents IA, mais qui demande une rigueur dans la rédaction des spécifications.

Pourquoi Kubernetes est devenu incontournable pour les hébergeurs (2025) — HA, scalabilité, observabilité : le trio gagnant. | by Thibault Buze | Aug, 2025 | STEAMULO Blog

Cet article explique pourquoi Kubernetes s’est imposé comme une solution incontournable pour les hébergeurs en 2025, grâce à un trio gagnant : haute disponibilité (HA), scalabilité et observabilité. L’article souligne que Kubernetes permet d’atteindre des niveaux de disponibilité théoriques très élevés (bien au-delà des 99,9 % des anciennes infrastructures VM), grâce à des mécanismes intégrés comme les réplicas, les probes, l’anti-affinity et des plans de contrôle redondants. Les hébergeurs abandonnent progressivement les approches traditionnelles (VM par projet, sur-provisionnement, déploiements manuels via Ansible) pour adopter Kubernetes, qui offre une gestion plus efficace des ressources, des déploiements sans coupure et une meilleure observabilité. L’auteur annonce une série d’articles pour approfondir chaque aspect : haute disponibilité, stockage, load balancing, mises en production fluides, sécurité et gouvernance des coûts, illustrant ainsi la maturité et l’adoption massive de Kubernetes dans le cloud moderne. La disponibilité réelle reste cependant à mesurer en production avec des SLO et une observabilité renforcée.

Le positionnement par ancre : anchor positioning - Alsacreations

Le positionnement par ancre (anchor positioning) est une nouvelle fonctionnalité CSS qui permet de positionner visuellement un élément par rapport à un autre, indépendamment de leur place dans le DOM. Idéal pour les info-bulles, menus contextuels ou modales, il utilise anchor-name pour définir une ancre et position-anchor pour l’associer à un élément positionné (en absolute ou fixed). Le placement s’effectue via anchor() ou position-area, tandis que anchor-size() permet d’adapter les dimensions de l’élément en fonction de l’ancre. La propriété position-try gère les débordements en proposant des solutions de repli. Compatible avec les navigateurs modernes, cette technique offre une alternative flexible aux méthodes traditionnelles, tout en nécessitant une attention particulière à l’accessibilité. Des outils comme Anchor Tool et des démos pratiques illustrent son potentiel.

MicroStack évolue : compatibilité HP EliteDesk et Lenovo ThinkCentre pour votre homelab

Le projet MicroStack, un rack modulaire imprimé en 3D pour organiser des mini-PC en homelab, s’enrichit désormais avec la compatibilité des HP EliteDesk/ProDesk et Lenovo ThinkCentre Tiny, en plus des Dell OptiPlex Micro déjà supportés. L’auteur a répondu aux demandes de la communauté en développant des modules dédiés pour chaque marque, tous inter-compatibles et empilables, permettant de mixer les appareils dans un même rack. La collection comprend aussi des modules de stockage et un "chapeau" pour une finition propre. Le design utilise un motif honeycomb pour une bonne ventilation et il est recommandé d’imprimer en PETG pour une meilleure résistance thermique. Le projet, open source et disponible sur MakerWorld, a reçu un accueil positif, avec des retours d’utilisateurs montrant des installations mixtes. L’auteur invite à proposer d’autres modèles de mini-PC à intégrer et encourage les retours et partages pour faire évoluer le projet.