Quotidien Shaarli
Aujourd'hui - February 6, 2026
L'article de Blake Lundquist sur Smashing Magazine explore l'utilisation de la nouvelle règle CSS @scope comme alternative aux conventions de nommage rigides (comme BEM) et aux abstractions lourdes (comme les frameworks CSS-in-JS). Il souligne les défis de maintenir des styles CSS dans des interfaces complexes, où les styles fuient souvent vers des zones non intentionnelles, entraînant des sélecteurs de plus en plus spécifiques. Les conventions de nommage comme BEM peuvent aider, mais elles sont souvent difficiles à maintenir dans des applications interactives. Les développeurs se tournent alors vers des frameworks comme Tailwind pour éviter la cascade CSS. Cependant, cette approche a aussi ses inconvénients, comme des configurations de build lourdes et des styles mélangés avec le markup. L'auteur suggère que @scope pourrait offrir une solution plus élégante en permettant de scoper les styles de manière plus intuitive et maintenable.
Cet article explore la tendance croissante des frameworks HTML-first, comme htmx, qui révolutionnent le développement web en revenant à une approche plus simple et performante, centrée sur le HTML et le serveur, plutôt que sur des applications monopages (SPA) complexes. Il met en lumière les problèmes de surcharge JavaScript, les avantages en termes de performance, de simplicité et de maintenance, ainsi que les cas d'utilisation idéaux pour cette approche. L'auteur souligne également les bénéfices pour le SEO, l'accessibilité et l'expérience utilisateur, tout en discutant des situations où une approche différente pourrait être plus appropriée.
Ce tutoriel explique comment appliquer la Clean Architecture à un projet Symfony, en utilisant PHP 8.4. L'auteur, Arthur Jacquemin, partage son expérience et ses exemples concrets pour aider les développeurs à comprendre et assimiler cette philosophie. Il insiste sur le fait que la Clean Architecture n'est pas un dogme, mais une approche flexible qui peut être adaptée selon les besoins du projet. Le tutoriel est destiné aux développeurs PHP familiarisés avec Symfony, mais le code présenté reste accessible. L'objectif est de transformer un mini-projet étape par étape vers une approche "clean", en protégeant le cœur métier et en le découplant des implémentations techniques.
Le Context Driven Engineering émerge comme un nouveau paradigme de développement logiciel à l’ère de l’IA : au lieu de simplement générer du code à partir de prompts, les équipes doivent fournir un contexte structuré (spécifications, contraintes, règles et documentation) et suivre un workflow type spec-plan-act afin de fiabiliser la production et d’industrialiser l’usage des assistants. L’article montre que cette évolution entraîne la mise en place de règles pour les agents, d’outils de gouvernance, d’intégrations CI/CD et de nouvelles pratiques de documentation, tout en soulevant des enjeux humains et organisationnels tels que la formation des juniors, la mutation du rôle des développeurs et la nécessité de conserver les fondamentaux de l’ingénierie — architecture, tests, sécurité et documentation — qui deviennent encore plus critiques dans un contexte où le code peut être produit massivement par des IA.
L'article explique le fonctionnement de PAM (Pluggable Authentication Modules), un mécanisme d'authentification sous Linux. PAM permet de gérer l'authentification des applications de manière flexible et indépendante, en utilisant des bibliothèques dynamiques et des fichiers de configuration. Il offre de nombreux avantages, tels que la modification des méthodes d'authentification sans recompiler le code, la définition de plages horaires et de lieux de connexion, l'utilisation de méthodes d'authentification avancées (cartes à puce, biométrie, etc.), et l'intégration avec des annuaires LDAP. PAM est un outil incontournable pour l'authentification et l'accès aux systèmes Linux, disponible en Open Source. L'article explique également le principe de fonctionnement de PAM, qui repose sur des directives utilisant des bibliothèques dynamiques pour autoriser ou refuser l'accès aux utilisateurs en fonction de diverses conditions.
Uncloud est une solution d’auto-hébergement hybride, légère et décentralisée, conçue pour simplifier la gestion d’infrastructures Docker sans la complexité de Kubernetes ou Nomad. Développé en Go et Rust, il utilise WireGuard pour le réseau VPN, Corrosion pour synchroniser les données entre nœuds via SQLite, et Caddy comme reverse proxy intégré. L’outil permet de déployer des services via des fichiers Docker Compose enrichis d’extensions spécifiques (comme x-ports ou x-machines), et gère automatiquement les certificats Let’s Encrypt et les DNS internes. Idéal pour les développeurs ou petites structures souhaitant une alternative simple et efficace à Kubernetes, Uncloud évite la surcharge de gestion tout en offrant une haute disponibilité basique via la redondance. Il est compatible avec les architectures x86_64 et ARM, et s’installe facilement via des commandes CLI, avec une intégration possible dans l’AUR pour Arch Linux. L’auteur, ancien utilisateur de Nomad, souligne sa simplicité et son efficacité pour remplacer des stacks complexes, tout en reconnaissant ses limites (pas de gestion avancée de haute disponibilité ou de secrets pour l’instant). Uncloud se positionne comme une solution pragmatique pour ceux qui veulent se concentrer sur le développement plutôt que sur l’infrastructure.
Cet article d'Alsacreations explore l'évolution du design web responsive au-delà des breakpoints traditionnels, en introduisant le concept d'Intrinsic Web Design. Il met en lumière les nouvelles fonctionnalités CSS modernes comme les mots-clés intrinsèques (auto, min-content, max-content, fit-content, stretch) et les fonctions mathématiques (clamp(), min(), max()) pour créer des composants web fluides et adaptables. L'article aborde également l'utilisation avancée de Flexbox et Grid Layout pour gérer l'espace de manière dynamique, sans recourir à des media queries. Un outil maison, Elastic, est mentionné pour faciliter la génération de formules CSS fluides.
Ce site permet d'apprendre à faire des nœuds : utile pour l'escalade, la navigation, etc. Il présente les différents types de nœuds, avec des explications pour les faire.
Ce tutoriel explique comment configurer une connexion VPN via Wireguard sur une Freebox pour utiliser un DNS local de type PiHole ou AdGuard. L'auteur décrit les étapes pour activer le serveur Wireguard sur la Freebox, comprendre et modifier le fichier de configuration généré, et remplacer l'adresse DNS par défaut par celle de son serveur PiHole/AdGuard. Ainsi, en se connectant via le VPN, toutes les machines bénéficient d'un filtrage des DNS pour bloquer publicités et trackers.
Le "Randomness Testing Guide" est une ressource pédagogique pour tester "l'aléatoire" des séquences binaires. Il propose des tests statistiques simplifiés comme le test de fréquence, de blocs, de runs, de fréquence de mots et d'autocorrélation. Inspiré par les tests du NIST pour l'AES, ce guide vise à rendre la randomness testing accessible aux amateurs, en évitant la complexité des méthodes initiales.
Cet article explique les bases des transactions de bases de données SQL. Une transaction est une séquence d'opérations (lecture, création, mise à jour, suppression) exécutée de manière atomique. Les transactions peuvent être validées (commit) ou annulées (rollback), et les bases de données comme MySQL et Postgres sont conçues pour gérer les scénarios imprévus. Les transactions permettent également l'exécution simultanée de requêtes sans interférence, grâce à des lectures cohérentes qui isolent les transactions en cours des modifications externes. L'article aborde également les niveaux d'isolation et les mécanismes spécifiques à MySQL et Postgres pour assurer la cohérence des transactions.