Dev Breeze

IA

Review — Is The LLM Engineer’s Handbook by Paul Iusztin and Maxime Labonne Worth it?

Le livre 'The LLM Engineer’s Handbook' par Paul Iusztin et Maxime Labonne est une ressource essentielle pour les ingénieurs en IA, combinant théorie et pratique. Il offre un cadre adaptable pour construire des systèmes de modèles de langage au niveau de production, tout en reliant ingénierie logicielle, MLOps et ingénierie de données. Avec plus de 10 000 exemplaires vendus, ce manuel est une lecture incontournable pour ceux qui souhaitent se plonger dans la création d'applications IA LLM.

Dev back

How to use Java 17 Features Effectively in Modern Java Applications

Java 17 introduit des améliorations significatives par rapport aux versions LTS précédentes, comme la simplification de la création de données immuables grâce aux records, qui permettent de réduire le code boilerplate et d'assurer l'intégrité des données. De plus, il propose le pattern matching pour un code plus lisible lors des branchements.

Dev back

Why We Removed Lombok After Two Years (And Slept Better)

Après deux ans d'utilisation de Lombok dans nos projets Java, nous avons décidé de nous en séparer en raison de problèmes de débogage liés à des champs nuls générés automatiquement. Bien que Lombok ait réduit le code boilerplate initialement, nous avons perdu en transparence et en compréhension de notre code, ce qui a conduit à des bugs en production. Nous avons finalement opté pour une approche plus claire et gérable.

Dev back

🛑 Stop Writing != null Everywhere!

Cet article présente cinq méthodes modernes et professionnelles pour gérer les valeurs null en Java, réduisant ainsi l'encombrement du code causé par les vérifications de nullité répétitives. Il souligne que le codage traditionnel entraîne une surcharge de vérifications nulles, qui peuvent mener à des erreurs de pointeur null (NPE). Parmi les solutions proposées, on trouve la centralisation des vérifications nulles dans une classe utilitaire pour améliorer la clarté et la maintenabilité du code.

Dev back

🛡️ Mastering Global Exception Handling in Spring Boot (Production-Grade)

Cet article traite de l'importance d'une gestion des exceptions robuste dans une application Spring Boot de qualité production. Il aborde la nécessité d'une stratégie centralisée pour éviter les blocs répétitifs dans les contrôleurs, les messages d'erreur confus pour les clients et des journaux non structurés. Il décrit comment mettre en place un mécanisme de gestion des exceptions global qui génère des réponses d'erreur claires et cohérentes pour toutes les APIs REST, prenant en charge des exceptions personnalisées et facilitant la gestion des erreurs de validation ainsi que des exceptions non capturées. L'article propose également une structure de dossier recommandée pour améliorer la maintenabilité du code.

Dev back

We Switched from Hibernate to JDBC (And Our Logs Finally Made Sense)

L'article décrit l'expérience d'une équipe qui a décidé de passer de Hibernate à JDBC après avoir rencontré des problèmes de performance et de lisibilité des logs en production. Bien que Hibernate ait d'abord semblé magique en simplifiant le code et en éliminant la nécessité d'écrire des requêtes SQL, ils ont finalement constaté que son utilisation entraînait des complications imprévues, comme des requêtes excessivement répétées. Ce changement vers JDBC a permis de résoudre ces problèmes et d'améliorer la clarté des logs.

Dev back

Ktor 3.2.0 Is Now Available

La version 3.2.0 de Ktor est maintenant disponible, apportant des améliorations de performances, de nouvelles fonctionnalités comme l'injection de dépendances, et un support pour les sockets de domaine Unix, ainsi que des modules asynchrones. Cette mise à jour permet également la désérialisation automatique des fichiers de configuration et inclut un nouveau module HTMX pour une meilleure intégration avec HTML. Ktor facilite désormais la gestion des dépendances dans les scripts Gradle par le biais de catalogues de versions.

Fullstack

What Is an AI Coding Agent?

Cet article explique ce qu'est un agent de codage basé sur l'IA, comme Junie de JetBrains, et comment ces agents utilisent des modèles de langage (LLM) pour aider les développeurs à automatiser des tâches de codage. Il aborde le fonctionnement des agents, y compris la perception des informations, la communication avec le LLM et l'évaluation des résultats. Le texte détaille également un exemple de création d'un agent de codage simplifié utilisant Python et un modèle de langage open-source.

"
Sécurité

Blog Stéphane Bortzmeyer: RFC 9773: ACME Renewal Information (ARI) Extension

Le RFC 9773 propose une extension ARI pour le renouvellement des certificats ACME, permettant aux autorités de certification de suggérer des dates de renouvellement plutôt que d'envoyer des rappels aux utilisateurs. Cela aide à éviter les pics de demandes de renouvellement et à rationaliser le processus. ARI est déjà intégré dans le serveur ACME de Let’s Encrypt.