Blog
De ConcurrentQueue à BlockingCollection, puis à l'asynchrone natif : ce que chaque brique résout, et ce qu'elle laisse de côté
Un service qui encaisse des événements à la volée, une API qui absorbe des pics de requêtes, un traitement de fichiers qui arrive par lots irréguliers : dans chacun de ces cas, quelque chose produit du travail à un rythme qu'on ne maîtrise pas complètement, celui d'un système externe, d'un utilisateur, d'une intégration tierce. Et à côté, un composant est censé traiter ce travail, à son propre rythme, souvent plus lent. Dès que ces deux rythmes divergent, une question se pose : que fait-on des données en attente ? Les traiter immé...
Kiro CLI Saved Four Years of Build Time in Just 33 Seconds
1. Introduction: When AI Solves Problems That Humans Don't Even See
Imagine being responsible for a software platform that executes more than 550,000 builds
every month. Everything appears to work as expected, yet developers constantly complain
about slow pipelines. Build times are increasing, cloud infrastructure costs continue to rise, and
engineering teams spend valuable hours waiting for CI/CD jobs to complete.
This situation is far from uncommon. As modern software systems grow larger, identifying
performance bottlenecks becomes increasingly difficult. Today's enterprise applications often
consist of hundreds of serv...
Comment gérer proprement un échec métier en C# sans transformer chaque cas prévisible en exception ?
Un utilisateur introuvable, un solde insuffisant ou une référence inexistante sont des situations qui peuvent parfaitement faire partie du fonctionnement normal d'une application. Pourtant, en C#, plusieurs approches coexistent : exceptions, null, pattern Try ou encore tuples faits maison… chacune avec ses limites.
Dans cet article, je vous propose de découvrir :
➡️ pourquoi ces approches ne répondent pas toujours correctement au besoin ;
➡️ comment le pattern Result<T> permet de représenter explicitement un succès ou un échec ;
➡️ comment construire...
⚡ Faut-il vraiment créer un projet complet pour écrire quelques lignes de code en C# ? Avec les file-based apps introduites dans .NET 10, la réponse est non.
Cette nouvelle fonctionnalité permet d'exécuter un simple fichier .cs, sans projet, sans configuration et sans outil supplémentaire. Une approche qui simplifie le scripting et accélère le développement des tâches ponctuelles.
Dans cet article, je vous propose de découvrir :
➡️ ce que sont les file-based apps et comment elles fonctionnent ;
➡️ les cas d'usage où elles apportent un véritable gain de productivité ;
➡️ les nouvelles directives disponibles pour gérer les dépendances et la configurati...
🏗️ Une application web peut-elle être à la fois performante, hautement disponible et sécurisée dès sa conception ? La réponse est oui... à condition de s'appuyer sur une architecture cloud pensée pour répondre à ces enjeux.
Avec AWS, de nombreux services permettent de construire des applications résilientes et évolutives. Encore faut-il comprendre le rôle de chacun et savoir comment les assembler pour tirer pleinement parti du cloud.
Dans cet article, je vous propose de découvrir :
➡️ les composants clés d'une architecture web moderne sur AWS ;
➡️ comment assurer la haute disponibilité et la montée en charge d'une application ;
➡️ les mécanismes ...
💥 Une simple saisie dans un formulaire peut-elle suffire à compromettre une application ? La réponse est oui… et c'est précisément le principe des injections SQL.
Malgré plus de vingt ans de sensibilisation, de frameworks modernes et de recommandations de l'OWASP, cette vulnérabilité reste l'une des plus répandues. Pourtant, elle repose souvent sur une erreur de développement évitable : laisser des données utilisateur être interprétées comme du code SQL.
Dans cet article, je vous propose de revenir sur les fondamentaux :
➡️ comment fonctionne une injection SQL ;
➡️ ce qu'un attaquant peut réellement faire, du contournement d'une authentification à l...
Entre conférences inspirantes, découvertes technologiques et rencontres enrichissantes, cette édition a une nouvelle fois tenu toutes ses promesses.
Le palais des congrès a accueilli pendant 3 jours la célèbre conférence autour du développement et de la programmation « DEVOXX PARIS 2026 ».
Ayant eu la chance de pouvoir y participer à cinq, nous profitons de la sortie des vidéos pour vous proposer, dans cet article, un retour sur les différentes nouveautés présentées, mais également sur l'expérience humaine vécue tout au long de l'événement. Nous espérons ainsi vous restituer au mieux cette belle aventure.
Afin de vous faire partager notre expérience, nous av...
Imaginez que votre application vient d'être compromise. Les attaquants sont entrés, ont peut-être exfiltré des données, et sont repartis. Votre première réaction ? Aller consulter les logs.
Sauf que les logs ont été effacés. Ou pire : ils étaient incomplets depuis le début.
C'est le paradoxe des logs. Indispensables pour reconstruire une chronologie lors d'un incident, ils peuvent eux-mêmes devenir une source de fuite de données, un vecteur d'attaque, ou un risque réglementaire qu'on ne voit pas venir si on ne les a pas pensés correctement.
Les exemples concrets ne manquent pas. En 2022, GitHub révélait dans un post-mortem public que des mots de passe en clair d'ut...
La code review est l'une des pratiques les plus universellement adoptées dans nos équipes, et paradoxalement l'une des moins réfléchies. On la fait parce que c'est dans le process, parce que GitHub l'exige avant le merge, parce que c'est comme ça que ça a toujours fonctionné. Et puis on approuve, on merge, on passe à autre chose.
Pourtant, derrière ce rituel souvent vécu comme un frein à la livraison se cache l'un des seuls moments dans le cycle de développement où toute l'équipe regarde le même code au même moment, sans réunion supplémentaire, sans document à rédiger. Un moment où un junior peut questionner un pattern que tout le monde accepte depuis des années, oÃ...
Découvrez dans ce guide pratique comment automatiser le déploiement d'images Docker sur Amazon ECR grâce à une approche DevOps moderne combinant :
🐳 Docker for the Containeurization
☁️ Amazon ECR pour le stockage sécurisé des images
⚙️ GitHub Actions pour l'automatisation CI/CD
🏗️ Terraform pour l'infrastructure en tant que code
Au programme :
✅ Présentation d'Amazon ECR et de ses avantages✅ Création et gestion d'un registre de conteneurs AWS✅ Construction et publication automatique d'images Docker✅ Mise en place d'un pipeline CI/CD avec GitHub Actions✅ Automatisation de l'infrastructure avec Terraform ✅ Bonnes pratiques D...