L’article explique comment détecter des pages web similaires, même si leur contenu n’est pas strictement identique, en utilisant l’algorithme SimHash. Contrairement aux fonctions de hachage classiques comme MD5, qui produisent des empreintes radicalement différentes dès qu’un caractère change, SimHash génère des signatures numériques proches pour des contenus proches. Cela permet de repérer des doublons partiels, comme des fiches produits identiques avec une seule ville modifiée.
L’auteur détaille le fonctionnement de SimHash, inspiré d’une méthode publiée en 2002 et popularisée par Google en 2007 pour dédupliquer des milliards de pages. L’algorithme repose sur une "élection" de 64 questions binaires, où chaque mot du texte "vote" en fonction de son propre hachage. Le résultat final est une empreinte de 64 bits reflétant la similarité globale du contenu.
Enfin, l’article propose une implémentation en PHP sans dépendances, adaptée à des comparaisons en base de données pour des millions de pages. Cette approche évite le recours coûteux à des modèles de langage (LLM) tout en restant efficace pour des cas comme le crawler de redirection.io.
L’auteur explique comment persister la mémoire et la configuration personnalisée de Claude Code dans une sandbox Docker (sbx) pour éviter de tout perdre après suppression. Il utilise des kits mixin pour créer un lien symbolique vers un dossier .claude-project/ sur l’hôte, où sont stockés l’historique, les transcripts et les fichiers de config (comme CLAUDE.md ou les hooks). Cette méthode permet de conserver les données entre les sessions, même après un sbx rm.
L’article détaille aussi la configuration du kit via un fichier spec.yaml, exécuté au démarrage de la sandbox pour automatiser la création du lien et l’exclusion du dossier de la gestion Git. L’auteur partage son implémentation pour ceux qui souhaitent éviter de configurer manuellement ces éléments. La solution repose sur la version v2 des kits, compatible avec sbx 0.38.0.
CineLibre propose une sélection de films gratuits en replay, référencés depuis des plateformes officielles comme Arte, France.tv, M6+, TF1+, NOVO19, TV5Monde+ et HENRI. Le site permet de rechercher des films par titre, réalisateur ou acteur, et les classe par diffuseur, genre, langue originale ou décennie. Il facilite ainsi l’accès à des œuvres variées, issues de sources légales.
Parmi les films mis en avant, Fenêtre sur cour d’Alfred Hitchcock (1954) est un thriller où un photographe immobilisé observe son voisin et soupçonne un meurtre. Django unchained de Quentin Tarantino (2012), disponible sur M6+, mêle drame et western dans l’Amérique d’avant-guerre de Sécession. D’autres titres comme Call me by your name (2017) ou The Usual suspects (1995) complètent la sélection, avec des durées, notes et genres indiqués pour chaque œuvre.
La plateforme archive également des films via Internet Archive et met en avant des réalisateurs ou acteurs populaires. Les films sont présentés avec leur durée, année, note et plateforme de diffusion, offrant une vue d’ensemble pratique pour les spectateurs.
Ce billet explique comment moderniser un firewall iptables vieillissant sans perturber Docker, en prenant l’exemple d’un serveur exposé directement sur Internet. L’auteur souligne que les règles doivent refléter le chemin réel des paquets, qui a évolué depuis 2017, notamment avec l’intégration de Docker. Il revient sur quatre articles précédents pour montrer comment Fail2ban, SYNPROXY, ipset et CrowdSec ont été adaptés, tout en corrigeant des pratiques obsolètes comme le filtrage sur eth0 ou l’absence de gestion des connexions Docker.
L’article détaille les pièges rencontrés, comme l’impact de conntrack et SYNPROXY sur les connexions SSH, ou la nécessité de réviser les règles pour éviter de bloquer l’accès aux ports 22, 80 et 443. L’auteur insiste sur l’importance de maintenir des outils comme Fail2ban, CrowdSec et AbuseIPDB de manière complémentaire, plutôt que redondante, et partage des bonnes pratiques pour sécuriser le serveur dans un environnement "à peine agressif".
Enfin, le texte propose une mise à jour des règles iptables pour 2026, en intégrant les évolutions récentes comme la gestion des ipset, la rotation des clés API et une meilleure validation des données externes. L’objectif est de concilier sécurité renforcée et compatibilité avec Docker, tout en évitant les erreurs d’architecture qui pourraient rendre le serveur inaccessible.
Cette page propose neuf méthodes pour optimiser l’apprentissage grâce à l’IA, en s’appuyant sur des principes pédagogiques éprouvés comme la récupération active, l’espacement et la pratique exigeante. L’idée centrale est d’utiliser l’IA comme un coach plutôt que comme une simple machine à réponses, en évitant de déléguer entièrement le travail cognitif à l’outil. Par exemple, transformer l’IA en tuteur socratique, qui pose des questions et guide l’utilisateur vers la compréhension plutôt que de fournir des solutions toutes faites, maximise la rétention des connaissances.
L’article insiste sur une règle fondamentale : l’IA doit assister l’effort d’apprentissage sans le remplacer, car c’est l’effort personnel qui renforce la mémoire. Les techniques proposées, comme la création de flashcards automatisées suivies de révisions espacées, illustrent cette approche en combinant gain de temps et efficacité pédagogique. L’accent est mis sur l’interaction active avec le contenu, plutôt que sur la consommation passive d’informations.
Enfin, le texte met en garde contre les limites de l’IA, notamment ses erreurs potentielles, et recommande de croiser ses réponses avec d’autres sources pour éviter les biais. Destiné aux apprenants de tous niveaux, l’article encourage à appliquer ces méthodes immédiatement sur un sujet précis, en adaptant les prompts fournis pour une utilisation concrète.
L’auteur critique l’usage des chatbots, qu’il compare à une forme d’onanisme intellectuel ou de Guitar Hero créatif : amusant mais stérile, car il ne développe aucune compétence réelle. Il souligne que les utilisateurs, même en ayant la réponse sous les yeux, échouent à la restituer, illustrant l’absence d’apprentissage. L’analogie avec un plaisir solitaire et peu partageable renforce son rejet de cette pratique, qu’il juge à la fois inefficace et dénuée de valeur ajoutée.
Ploum admet avoir lui-même cédé à la tentation, en testant un chatbot pour générer des images, mais souligne l’absurdité de l’exercice : l’outil produit des résultats superficiels, comme une musculature exagérée imposée à un personnage, révélant ses biais. Il insiste sur le paradoxe où l’IA, présentée comme un gain de temps, exige en réalité un investissement disproportionné pour un résultat médiocre, à l’image d’un jardinier trop coûteux pour une petite pelouse.
Enfin, il généralise cette critique aux dynamiques managériales ou parentales, où déléguer une tâche simple à un "expert" (humain ou machine) s’avère contre-productif. Son ton mêle ironie et sérieux, dénonçant une mode technologique qui sacrifie l’effort personnel au profit d’une illusion de facilité, sans réel bénéfice durable.
L’article explique comment implémenter le pattern Unit of Work dans Symfony pour centraliser la gestion des opérations (création, mise à jour, suppression) sur différentes sources de données, y compris des services externes comme des API REST ou des files de messages. L’idée est de regrouper ces opérations dans une seule transaction logique, garantissant cohérence, clarté et testabilité, à l’image d’un panier d’achat où les modifications sont validées en une seule fois.
L’auteur propose une architecture en quatre composants : un objet Change pour représenter une opération, un service UnitOfWork pour collecter les changements, des Committer (interfaces) pour gérer l’écriture des données selon le backend, et des Repository modifiés pour enregistrer les changements au lieu de les exécuter immédiatement. Chaque Committer est spécialisé pour un type d’entité et un système de stockage.
L’implémentation repose sur une séparation claire des responsabilités, où le UnitOfWork agit comme un coordinateur central. Les changements sont regroupés par type d’entité avant d’être transmis aux Committer correspondants, permettant une intégration flexible avec Doctrine, des API ou d’autres services.
Parkinson’s Law, théorisé en 1955 par le historien britannique Cyril Northcote Parkinson, stipule que "le travail s’étend pour remplir le temps disponible pour son accomplissement". Cette observation, initialement une satire sur l’inefficacité bureaucratique, révèle un phénomène universel : plus une tâche dispose de temps, plus elle tend à occuper cet espace, souvent avec des ajustements superflus ou une procrastination déguisée en perfectionnisme.
L’auteur illustre ce principe par des exemples concrets, comme un courriel prenant une journée entière ou un projet de deux semaines réalisé en trois jours si le délai est serré. Cette expansion du travail s’explique par l’absence de pression initiale, qui encourage la lenteur, les micro-décisions et l’anxiété de dernière minute, transformant une tâche simple en un processus chronophage et souvent moins efficace.
À l’inverse, des contraintes temporelles strictes forcent une concentration accrue, éliminant les excès de perfectionnisme et accélérant la prise de décision. Le résultat est souvent une exécution plus directe et parfois même de meilleure qualité, car le manque de temps réduit les distractions inutiles.
L’article explique l’ATProto, un protocole ouvert développé par Bluesky pour créer des réseaux sociaux décentralisés, distinct d’ActivityPub utilisé par Mastodon. Contrairement à ce dernier, l’ATProto sépare l’identité de l’hébergeur, permettant aux utilisateurs de migrer sans perdre leurs données. Bluesky n’est qu’une application parmi d’autres possibles sur ce protocole.
L’identité dans l’ATProto repose sur trois éléments clés : le handle (nom lisible et modifiable), le DID (identifiant stable et permanent) et le PDS (serveur hébergeant le dépôt). Le DID, lié à une clé publique, permet de vérifier l’authenticité des données et de changer de PDS sans perdre son identité.
L’article détaille aussi le fonctionnement technique, comme les records (données structurées) et les blobs (fichiers adressés par leur contenu), ainsi que la vérification des signatures pour garantir l’intégrité des données. Il montre comment déployer son propre PDS ou écrire une application sur l’ATProto, soulignant son approche auto-certifiée et décentralisée.
L’article présente la création d’un assistant de code review basé sur l’IA, spécialisé dans le projet Symfony, en combinant PHP, Ollama et Qdrant. L’idée centrale est d’exploiter les milliers de retours historiques de la communauté Symfony pour générer des critiques de code plus pertinentes et adaptées, plutôt que des conseils génériques. L’auteur a développé un système utilisant une recherche sémantique (RAG) pour analyser les pull requests et les commentaires des contributeurs expérimentés, comme stof ou Nicolas Grekas, afin d’offrir des retours ciblés.
L’outil, nommé Symfony Reviewer MCP, repose sur une architecture en deux parties : un pipeline de génération de données vectorielles (à partir des archives GitHub) et un serveur MCP exposant ces données via une interface standardisée. L’indexation a été réalisée localement avec Ollama (modèle embeddinggemma-300m) et Qdrant, sans recourir à un GPU, au prix d’un temps de traitement long mais économiquement acceptable. L’application est développée en PHP 8.5 et Symfony 8.1, démontrant une approche pragmatique pour intégrer l’IA dans des workflows de développement existants.
L’article explique comment moderniser un script de sauvegarde obsolète en utilisant Codex via l’extension Remote SSH de VS Code, plutôt que de réécrire aveuglément le code. L’auteur, confronté à des changements d’infrastructure (migration Debian, conteneurs Docker disparus), a préféré auditer le script existant en temps réel sur le serveur, en s’appuyant sur l’IA pour vérifier la validité des chemins, des commandes et des ressources (conteneurs, volumes, espace disque). Cette approche interactive permet de confronter les hypothèses du code à la réalité du serveur, évitant ainsi des erreurs liées à des hypothèses erronées.
L’outil Remote SSH de VS Code joue un rôle clé en transformant le serveur distant en espace de travail direct, où Codex peut analyser les fichiers et exécuter des commandes dans le contexte réel. L’auteur souligne l’importance de ne pas laisser l’IA agir sans contrôle, notamment en matière de privilèges : Codex propose des commandes en lecture seule et demande explicitement l’autorisation avant toute opération sensible, garantissant ainsi une supervision humaine constante.
Le processus a révélé des incohérences majeures dans le script, comme des chemins de sauvegarde inexistants ou des conteneurs Docker disparus, prouvant l’utilité de cette méthode. En combinant audit interactif et vérification immédiate, l’auteur évite une refonte hasardeuse et s’assure que la nouvelle version du script correspond à l’état actuel du serveur.
L’article de Maxence Maireaux analyse le retour du mythe du 10x engineer avec l’essor de l’IA, illustré par une thèse récente selon laquelle l’IA polariserait le métier de développeur. Les ingénieurs les plus compétents, capables de superviser et valider le travail des agents IA, deviendraient indispensables, tandis que les profils moyens seraient marginalisés. Les données, comme celles du rapport DORA 2024 ou des études METR, montrent cependant que l’IA peut aussi réduire la stabilité des livraisons et creuser l’écart entre productivité perçue et réelle, comme en témoignent des cas concrets de code généré sans vérification approfondie.
L’auteur reconnaît la pertinence du diagnostic sur les risques de la confiance aveugle dans l’IA, qui accélère l’accumulation de dette technique et la perte de connaissance des systèmes. Cependant, il critique la conclusion économique qui en découle, comparant ce raisonnement au mythe du 10x engineer, popularisé par une étude contestable des années 1960 et aujourd’hui relancé par l’IA. Ce mythe, qui glorifie les "stars" individuelles, ignore les leçons des recherches en psychologie organisationnelle, comme celles de Google, qui soulignent l’importance de la sécurité psychologique et du travail d’équipe plutôt que du talent isolé.
En conclusion, l’article met en garde contre la résurgence de cette croyance simpliste, rappelant que l’efficacité collective repose davantage sur des dynamiques collaboratives que sur des individus exceptionnels. L’IA, loin de justifier une segmentation extrême du métier, devrait plutôt inciter à repenser les méthodes de travail pour éviter les pièges de la productivité illusoire et de la dépendance technologique.
Cet article explique comment distinguer une revendication de fuite de données d’une fuite confirmée, en soulignant que les annonces non vérifiées sont souvent exagérées pour des raisons économiques. Il détaille les méthodes de vérification à appliquer avant de reprendre un chiffre, comme croiser les sources ou analyser les échantillons fournis, et met en garde contre la confusion entre une ligne de base de données et une personne réelle.
L’auteur illustre son propos avec des exemples récents de revendications non confirmées (Intermarché, Bureau Vallée, DGFiP) et souligne que seule une minorité de cas aboutissent à une confirmation officielle, parfois avec des écarts significatifs entre les chiffres annoncés et la réalité. Il insiste sur l’importance de ne pas relayer sans filtre ces affirmations, qui servent souvent de levier de communication pour leurs auteurs.
Enfin, l’article propose des critères pour évaluer la crédibilité d’une revendication et rappelle les actions attendues d’une organisation concernée, tout en clarifiant la signification du silence d’une entreprise dans ce contexte.
Le 11 août 2026, le service Bloctel, qui permettait aux Français de s’opposer au démarchage téléphonique, a définitivement fermé ses portes, remplacé par un régime d’interdiction du démarchage sauf consentement préalable. Cinq jours plus tôt, le 6 août, une fuite de données a exposé environ 3 millions de numéros de téléphone, dont 600 000 issus de la liste Bloctel, après un accès frauduleux à un compte professionnel. La DGCCRF a confirmé l’incident le 12 août, soulignant que la base officielle n’avait pas été piratée, mais que des fichiers échangés avec des professionnels avaient été compromis.
Cette fuite révèle les risques liés à la gestion des données professionnelles et la valeur potentielle d’un simple fichier de numéros pour les escrocs, même sans informations complémentaires. Elle survient dans un contexte où le démarchage téléphonique devient illégal par défaut, sauf preuve de consentement, marquant un tournant dans la protection des consommateurs. Les entreprises doivent désormais adapter leurs pratiques pour se conformer à cette nouvelle réglementation.
L’article détaille les actions concrètes à mener pour les particuliers, comme vérifier leur inscription sur les nouvelles listes de consentement, et pour les entreprises, qui doivent désormais prouver le consentement explicite avant tout appel. Il souligne aussi l’importance de sécuriser les accès aux données professionnelles pour éviter de futures fuites.
La page d'Alsacreations explique la vulnérabilité CSRF (Cross-Site Request Forgery), classée parmi les risques critiques par l'OWASP. Elle repose sur l'envoi automatique des cookies par le navigateur, permettant à un site tiers d'effectuer des actions au nom d'un utilisateur connecté sans son consentement. Par exemple, un lien malveillant ou un formulaire caché peut déclencher une requête vers un service bancaire, exploitant la session active de la victime.
Contrairement à une idée reçue, l'utilisation de requêtes POST ne suffit pas à se prémunir contre les CSRF, car un formulaire peut être soumis automatiquement via JavaScript. La méthode POST améliore la sécurité, mais une protection supplémentaire est nécessaire. La solution la plus efficace consiste à intégrer un token CSRF, une valeur aléatoire unique générée par le serveur et vérifiée à chaque soumission de formulaire, empêchant ainsi les requêtes non autorisées.
L'article explique comment arrêter de faire plaisir aux autres en agissant sur le délai de réponse de deux secondes avant une décision. Plutôt que de travailler sur l'estime de soi, il propose des scripts préétablis pour éviter les réponses automatiques, comme un "non" clair ou un "oui limité". L'idée est de reprendre le contrôle avant que l'habitude ne s'enclenche, surtout utile pour les quadras et quinquas submergés par leurs responsabilités.
L'auteur distingue le "people pleasing" d'un trouble psychologique, le reliant plutôt à des tendances comme la sociotropy ou la communion non atténuée, où l'on privilégie les autres au détriment de soi. Une enquête YouGov révèle que près de la moitié des adultes américains s'identifient comme tels, soulignant l'ampleur du phénomène.
La solution repose sur des techniques simples et immédiates, comme retarder sa réponse ou encadrer un "oui", sans nécessiter une introspection longue. L'objectif est d'éviter l'épuisement en gérant mieux les demandes du quotidien.
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 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.
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é.
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.