SigNoz est une plateforme d'observabilité open-source qui unifie la gestion des logs, des métriques et des traces pour surveiller les applications, détecter les problèmes et résoudre rapidement les temps d'arrêt. Elle offre des fonctionnalités telles que la surveillance des performances des applications, la gestion centralisée des logs, le traçage distribué, des métriques personnalisables et des alertes. Basée sur OpenTelemetry, elle évite le verrouillage propriétaire et utilise ClickHouse pour un stockage optimisé. SigNoz propose une solution tout-en-un pour l'observabilité, avec des options de déploiement cloud ou auto-hébergé, et une communauté active pour le support et les contributions.
L'article explore le mystère des hauteurs en pourcentage en CSS, un concept souvent déroutant pour les développeurs. Il explique que, contrairement à la largeur, la hauteur en CSS est calculée différemment, ce qui peut entraîner des comportements inattendus. Par exemple, définir une hauteur en pourcentage sur un élément peut ne pas fonctionner si la hauteur du parent dépend de celle de ses enfants, créant ainsi un calcul circulaire. l'auteur propose des solutions, comme l'utilisation de hauteurs explicites ou de techniques de mise en page modernes comme Flexbox et Grid, pour résoudre ces problèmes et obtenir des résultats prévisibles.
L'article souligne l'importance de créer des messages d'erreur utiles et empathiques pour améliorer l'expérience utilisateur. Il recommande d'identifier les types d'erreurs possibles, d'écrire de manière humaine et claire, d'éviter un ton trop fantaisiste, d'utiliser la voix active, et de fournir des solutions claires pour aider les utilisateurs à résoudre les problèmes. La cohérence dans la présentation des messages d'erreur est également essentielle pour faciliter la compréhension et l'action des utilisateurs.
L'article décrit une refonte pratique en C# pour transformer des modèles anémiques en modèles riches en comportement, en utilisant les principes du Domain-Driven Design. Il montre comment déplacer la logique métier des services vers les agrégats, améliorant ainsi la maintenabilité et la clarté du code. L'auteur illustre chaque étape avec des exemples de code avant et après la refonte, soulignant les avantages de cette approche.
La notation Big O est essentielle pour les développeurs afin de comprendre et optimiser la performance du code, en transformant la manière dont les ressources physiques sont consommées. Elle permet d'anticiper les problèmes de performance et de choisir les meilleures solutions algorithmiques en fonction des priorités comme la vitesse, la mémoire ou la lisibilité. En utilisant Big O, les développeurs peuvent passer d'un code qui "fonctionne" à un code qui "fonctionne efficacement".
L'article explique comment protéger ses sites web contre les scrappers agressifs en utilisant Anubis et HAProxy. Il décrit un nouveau modèle d'affaires douteux où des SDKs transforment les terminaux des utilisateurs en botnets pour scraper des données. L'auteur propose une solution technique utilisant HAProxy pour détecter un trafic anormal et rediriger vers Anubis, qui impose une preuve de travail. La configuration inclut des sticky tables pour suivre les requêtes et des cookies pour éviter les boucles infinies. Cette méthode offre une protection efficace tout en maintenant une bonne expérience utilisateur.
L'auteur explique l'histoire de cette norme. On y apprend aussi à reconnaître les différentes versions. Il abordera dans un prochain article l'USB C.
L'article décrit comment Anubis, un programme conçu pour protéger les sites web contre les scrapers AI, a sauvé les sites web de l'auteur d'une attaque DDoS. L'attaque a saturé le serveur, rendant le site web inaccessible. Anubis a filtré les connexions entrantes, présentant un défi de preuve de travail que les navigateurs légitimes pouvaient résoudre, mais pas les bots malveillants, réduisant ainsi la charge du serveur et restaurant l'accès au site.
L'auteur explique l'installation des AppImages sous Ubuntu, en utilisant des .desktop pour faciliter leur utilisation et leur maintenance (avec en prime comment afficher une icône)
L'article propose une méthode structurée pour mettre à jour un projet Symfony en toute confiance. Il recommande d'utiliser des outils comme Bruno pour tester les routes, de mettre à jour les dépendances et les outils, d'appliquer des analyses statiques avec PHPStan, et de refactorer le code avec Rector. L'article insiste sur l'importance des tests automatisés et des mises à jour progressives pour éviter les régressions.
DDEV propose des environnements de développement PHP basés sur Docker. L'auteur montre comment s'en servir pour Symfony / Vue
L'article compare trois outils HTTP : Fetch API, Axios et Alova. Fetch API, intégré nativement dans JavaScript, est léger et idéal pour des requêtes simples mais nécessite une gestion manuelle pour des fonctionnalités avancées. Axios, bien que plus lourd, offre des fonctionnalités automatisées comme la gestion du JSON et des intercepteurs, le rendant adapté pour des applications complexes. Alova, quant à lui, combine la simplicité des requêtes avec des fonctionnalités avancées telles que la gestion de l'état et la mise en cache, ce qui en fait un choix optimal pour des applications front-end lourdes nécessitant une optimisation des performances.
Un tutoriel / guide pour la création de popovers - pour rappel, la différence entre infobulle (tooltip) et popover est essentiellement la quantité d'information affichée
OpenRC, depuis sa version 0.60 sortie en février 2025, permet désormais de gérer des services utilisateurs, une fonctionnalité auparavant réservée à Systemd. Cette mise à jour permet de lancer automatiquement des applications spécifiques à l'utilisateur, comme un lecteur audio en mode serveur, dès la connexion, et de les arrêter à la déconnexion. OpenRC offre ainsi une gestion plus flexible et moderne des services, avec des fonctionnalités telles que la supervision et la relance automatique en cas de crash.
Home Assistant, initialement complexe, est devenu une référence en domotique grâce à une communauté active qui a simplifié son installation et sa configuration, notamment via des solutions comme HAOS et HACS. Le guide recommande d'opter pour des protocoles comme Zigbee et de personnaliser les dashboards pour une expérience optimale, tout en insistant sur l'importance des sauvegardes et de la sécurisation de l'accès externe. En suivant ces conseils, même les débutants peuvent maîtriser ce système domotique puissant et flexible.
Cursor et Claude ne sont pas seulement efficaces pour prototyper mais aussi pour structurer, standardiser, refactorer et maintenir de grands projets. Cursor permet de construire des logiciels 5 à 30 fois plus rapidement grâce à son cycle d'édition et de test. L'auteur donne quelques conseils et bonnes pratiques.
L'article explique le fonctionnement des encres à couleurs changeantes. Ainsi, les encres des billets en euros changent de couleur selon l'angle ou sous UV, assurant leur authenticité. Elles sont imprimées avec des techniques avancées pour prévenir la contrefaçon.
Il s'agit d'une extension PHPStan pour vérifier que le code respecte la règle de puissance de 10 de la NASA (cf https://fr.wikipedia.org/wiki/The_Power_of_10:_Rules_for_Developing_Safety-Critical_Code). Les 10 règles sont :
1°) Éviter les constructions de flux complexes, telles que goto et récursivité .
2°) Toutes les boucles doivent avoir des limites fixes. Cela évite de créer involontairement des boucles infinis.
3°) Éviter d'allouer de la mémoire sur la heap.
4°) Limiter les fonctions à une seule page affichable sur un écran.
5°) Utiliser un minimum de deux assertions par fonction.
6°) Limiter la portée des variables au plus petit possible.
7°) Vérifier la valeur de retour de toutes les fonctions non-void ou transformer en void pour indiquer que la valeur de retour est inutile.
8°) Utiliser le préprocesseur avec parcimonie.
9)) Limiter l'utilisation du pointeur à un seul déréférencement et ne pas utiliser de pointeur de fonction.
10°) Compiler avec tous les avertissements possibles actifs ; tous les avertissements doivent alors être pris en compte avant la publication du logiciel.
Ce dépôt Github liste des intégrations de LLM dans PHP. Chaque intégration doit être open source (licence), être stable ou en développement actif et être installable via composer.
Un guide complet et des bonnes pratiques sur la sauvegarde