Quotidien Shaarli

Tous les liens d'un jour sur une page.

Hier - January 11, 2026

Rendre le terminal intelligent : alias et scripts Indispensables • Lecodeestdanslepre

Ce billet de blog explique comment rendre son terminal plus intelligent et productif grâce à des alias, des scripts et des intégrations. L'auteur partage ses astuces pour améliorer l'historique des commandes, l'autocomplétion, et l'utilisation de Docker avec FZF. Il montre également comment automatiser la gestion des versions de Node.js et PHP, rendant le terminal presque magique. Des exemples de code sont fournis pour illustrer chaque amélioration.

Configurer Google Jules avec Docker pour une CI/CD autonome • Lecodeestdanslepre

Ce billet explique comment configurer Google Jules, une IA, pour automatiser les tâches de QA, sécurité et performance d'un projet Symfony avec Docker. L'auteur, ne pouvant consacrer beaucoup de temps à la maintenance, utilise Jules comme une équipe de support asynchrone. Il décrit le défi de rendre l'IA compatible avec Docker et partage un script Bash qui configure l'environnement pour que Jules puisse interagir avec la stack complexe (Docker, PostgreSQL, Redis, Meilisearch) sans compromettre l'intégrité du projet. Le script gère la détection dynamique du contexte, les permissions Git et Docker, et permet à Jules de piloter le daemon Docker de la machine hôte.

CQRS avec Symfony Messenger : Domptez la complexité de vos applications

Cet article explique comment implémenter le pattern CQRS (Command Query Responsibility Segregation) avec Symfony Messenger pour structurer et simplifier le code des applications Symfony. Le CQRS sépare les opérations d'écriture (Commands) et de lecture (Queries), permettant une meilleure organisation, une séparation claire des responsabilités et une validation des données avant la logique métier. L'article détaille les étapes pour créer une application de gestion de bibliothèque, incluant la création d'une entité Book, d'un DTO, la configuration de Symfony Messenger, et l'implémentation des Commands et Queries avec leurs contrôleurs respectifs. Un prérequis est la connaissance de Symfony Messenger.

L'attribut hidden until-found - Alsacreations

L'attribut hidden="until-found" en HTML permet de masquer du contenu tout en le rendant accessible via la fonction de recherche (Ctrl+F) des navigateurs et les moteurs de recherche. Contrairement à display: none, qui cache complètement le contenu, cet attribut révèle le texte lors d'une recherche, améliorant ainsi l'accessibilité et le référencement. Il est pris en charge par les dernières versions des navigateurs majeurs et ne pose pas de problèmes d'accessibilité si bien implémenté.

Shortcodes : de WordPress à une architecture PHP 8.5 • Lecodeestdanslepre

Ce billet explore l'évolution des shortcodes de WordPress, ces balises dynamiques comme [gallery id="123"], en les modernisant avec les standards de PHP 8.5 et Symfony 8. L'auteur, ayant travaillé sur l'intégration d'une galerie d'images dans un article Markdown, analyse les forces et faiblesses de l'API historique de WordPress, qui, malgré sa simplicité et son succès, présente des dettes techniques critiques : pollution de l'espace de noms global, absence de typage, vulnérabilités XSS, et couplage fort entravant les tests. La réponse à la problématique architecturale est affirmative : il est possible de reconstruire cette API en conservant son ergonomie tout en y insufflant fiabilité, sécurité et performances. L'article propose ainsi une modernisation des shortcodes pour une utilisation plus sûre et efficace.

Le Singleton – un antipattern déguisé - Human Coders Blog

L'auteur explique pourquoi le pattern Singleton, bien que séduisant par sa simplicité, se transforme souvent en antipattern coûteux. À travers son expérience sur un projet legacy truffé de Singletons, il montre comment ce pattern crée des dépendances cachées, rend les tests impossibles et engendre des problèmes de concurrence. Le Singleton, en agissant comme une variable globale déguisée, viole plusieurs principes SOLID (Dependency Inversion, Single Responsibility, Open/Closed) et complique la maintenance du code. Les tests deviennent difficiles à écrire et à isoler, tandis que la gestion de l’état global partagé introduit des bugs aléatoires et des goulots d’étranglement. L’auteur propose des alternatives comme l’injection de dépendances, la composition root ou les factories, qui rendent le code plus testable, flexible et maintenable. Il conclut que le Singleton doit être évité dans la plupart des cas, sauf pour des ressources vraiment uniques et globales, et insiste sur l’importance de bien évaluer les compromis avant de l’utiliser.

Web dependencies are broken. Can we fix them? • Lea Verou

Lea Verou aborde dans cet article les problèmes de gestion des dépendances sur le web, soulignant que contrairement à d'autres écosystèmes comme NodeJS ou Python, le web a externalisé cette fonctionnalité fondamentale à des outils tiers comme les bundlers (Webpack, rollup, etc.). Elle explique que la gestion des dépendances devrait être une fonctionnalité native de la plateforme, simple et intuitive, plutôt qu'une tâche complexe nécessitant des outils avancés. Verou discute des solutions potentielles, comme les import maps, et plaide pour une amélioration de l'architecture web afin de rendre les dépendances aussi faciles à gérer que dans d'autres environnements de développement.

Symfony UX Icons : 200 000 icônes SVG sans CDN • Lecodeestdanslepre

Symfony UX Icons révolutionne la gestion des icônes dans Symfony en intégrant plus de 200 000 icônes SVG via Iconify, sans CDN, sans sprite et sans configuration complexe. Ce composant télécharge les icônes localement, les met en cache et les injecte directement dans le HTML, optimisant ainsi les performances et la maintenabilité. Avec une simple ligne de code Twig, vous pouvez utiliser des icônes de diverses collections comme Tabler, Lucide ou Material Design Icons. Installation via Composer et usage immédiat sans configuration supplémentaire.

Pourquoi vous ne détesterez plus jamais faire du frontend avec Symfony UX Toolkit • Lecodeestdanslepre

Symfony UX Toolkit révolutionne l'expérience de développement frontend en intégrant la philosophie de Shadcn/ui, permettant de créer des composants UI personnalisables et accessibles directement dans Twig. En copiant et adaptant du code plutôt que d'utiliser des dépendances NPM, les développeurs gagnent en contrôle et en flexibilité. L'outil génère des composants avec une logique PHP, des templates Twig sémantiques et des contrôleurs Stimulus pour une accessibilité et une maintenance optimisées. Le résultat est une réduction significative du volume de code, une accessibilité standardisée et une productivité accrue.

Why I won’t be “AI-First” in 2026 | Bjorg

L’article explique pourquoi adopter une approche « AI-First » (utiliser l’IA en premier pour résoudre tous les problèmes) peut être contre-productif. L’auteur souligne que l’IA excelle pour les tâches répétitives ou nécessitant peu de réflexion, comme la rédaction de brouillons ou la correction, mais qu’elle est inadaptée pour les travaux exigeant une compréhension approfondie, du contexte ou une réflexion stratégique. En effet, l’IA ne peut pas remplacer la pensée humaine, surtout lorsqu’il s’agit de prendre des décisions complexes ou de comprendre les nuances d’un problème. Elle est utile pour automatiser des parties mineures d’un projet, mais son utilisation systématique peut conduire à des résultats médiocres et priver les équipes de l’opportunité d’apprendre et de réfléchir par elles-mêmes. L’auteur recommande plutôt d’intégrer l’IA de manière ciblée, en complément des compétences humaines, et de privilégier l’expérimentation pour identifier les cas où elle apporte une réelle valeur ajoutée.