Les Cast Codeurs : le podcast en français de, par et pour les développeurs.
Prenez connaissance des dernières nouvelles de la sphère Java et du développement en général. Plongez sur un sujet précis avec les épisodes interview.
Supportez les radotages de vos hôtes : Emmanuel Bernard (ex Red Hat, Hibernate, Quarkus), Arnaud Héritier (Doctolib, Jenkins), Guillaume Laforge (Google, Groovy), Antonio Goncalves (Microsoft, auteur), Katia Aresti (Red Hat, Infinispan).
Site
RSS
Apple
Data updated on 21/10/2026
Recent rankings
Latest chart positions across Apple Podcasts and Spotify rankings.
Shared links between episodes and podcasts
Links found in episode descriptions and other podcasts that share them.
Les Cast Codeurs Podcast, a podcast by Emmanuel Bernard, Guillaume, Antonio, Arnaud, Katia - Stats, Episodes and Rankings - My Podcast Data
LCC 344 - Feature flags - 2^n raisons de ne pas dormir la nuit
Tuesday, October 20, 2026 • Duration 01:20:32
Les feature flags, c'est pratique jusqu'à ce que 2^n combinaisons vous réveillent à 3h du matin. Dans ce live, on parle de dette technique et de résilience cloud (la HA ne suffit pas !). Côté Java : fin de la gratuité d'Oracle JDK 21, Quarkus 4 Beta, Hibernate ORM 8 et Spring AI. Et aussi Opus 5.5 contre GPT-6 en pleine guerre des prix, les « decision models » comme Jev, et des attaques ciblées contre les mainteneurs Rust.
Zazr, un fork de Vavr, mais plus moderne avec record, pattern matching, virtual thread, et autres fonctionnalités récentes de Java 25 zazr.dev/blog/meet-zazr
Un petit peu de fun, ça fait du bien, avec ce site qui vous permet de charger n'importe quelle page web et de la détruire à coup de fusil ou de bazooka en dirigeant un petit personnage dans la page destroy.spritefusion.com
Côté IA : MCP devient stateless, Claude watermarke ses textes, GPT-6 Astra défie Claude Fable, et une étude JetBrains confirme Claude Code en tête des agents de code. Côté JVM : JDK 27 généralise G1, Kotlin 2.4 stabilise les context parameters, une API JSON arrive dans le JDK, et Quarkus comme Micronaut enchaînent les versions. En bonus, trois pannes IA simultanées et un câble débranché chez Google Cloud.
Le problème : L'approche classique (champs nullables, hiérarchies de classes ouvertes) crée des états invalides et des erreurs à l'exécution (comme le NullPointerException).
Types Produits (ET logique) : Implémentés en Java avec les Records. Ils regroupent plusieurs champs de manière immuable et concise.
Types Sommes (OU logique) : Implémentés avec les Sealed Interfaces. Elles définissent un ensemble strictement fermé de sous-types connus à la compilation.
ADTs (Types Algébriques) : La combinaison des Sealed Interfaces et des Records. Ils garantissent que les états invalides sont impossibles à représenter dans le code.
Pattern Matching : L'extraction des données se fait via des expressions switch exhaustives, supprimant le besoin de casts manuels et obligeant le développeur à traiter tous les cas possibles.
Généralisation : Ce modèle est idéal pour créer des types comme Result, forçant le traitement explicite et sécurisé des succès et des erreurs typées.
Pourquoi "Algébrique" ? Parce que les types sont combinés mathématiquement (Produits = multiplication, Sommes = addition) pour limiter strictement le nombre d'états possibles d'une donnée.
Librairies Infrastructure Cloud Web Data et Intelligence Artificielle Outillage Architecture Méthodologies Sécurité Loi, société et organisation Conférences Nous contacter
LCC 342 - Bun en Rust, TypeScript en Go
Tuesday, July 21, 2026 • Duration 01:32:59
Bun quitte Zig pour Rust en 11 jours à coups de Claude Code, pour 165 000$ payés par Anthropic : la réaction du créateur de Zig ne se fait pas attendre. TypeScript 7 débarque, réécrit en Go, 8 à 12x plus rapide. Entre les deux, Vidocq réimplémente Jakarta EE en souverain, le COBOL met un uppercut aux microservices, et un CTO demande à son équipe combien de temps il lui faudrait pour revenir à sa vélocité antérieure sans Claude Code. De quoi réfléchir avant le prochain rewrite.
Avantages : Très performant (matériel), idéal pour l'approximatif.
Risques : Erreurs d'accumulation, égalité (==) trompeuse, NaN / -0.0.
Bonnes pratiques : Utiliser une tolérance (epsilon ou ULP) pour comparer ; utiliser des algorithmes de sommation compensée (Kahan/Neumaier) pour la précision.
Avantages : Très rapide, déterministe, zéro allocation.
Risques : Gestion manuelle de l'échelle et des débordements (Math.addExact).
Points de vigilance en production
Sérialisation (JSON) : Préférer les String pour BigDecimal pour éviter la perte d'échelle.
Librairies Web Data et Intelligence Artificielle Outillage Architecture Méthodologies Loi, société et organisation Conférences Nous contacter
LCC 341 - Endives ou Chicorée ?
Monday, June 22, 2026 • Duration 01:07:11
JDK 26 optimise la JVM dans ses moindres recoins, le SDK Java d'Agent2Agent passe en 1.0, Micronaut 5 est là. Côté terrain, un retour d'expérience après 40 jours à coder avec 100 % d'IA : génie ou junior, Alzheimer numérique et dette technique invisible. Pendant ce temps, GitLab restructure, Microsoft suspend ses licences Claude Code, et un développeur injecte un prompt destructeur dans sa lib JUnit. La révolution IA a un coût et les boites commencent à s'en rendre compte.
Côté bibliothèques, l'API LazyConstant (anciennement StableValue) fait son entrée en prévisualisation pour permettre une initialisation paresseuse, sécurisée pour les threads et optimisée par le mécanisme de constant-folding de la JVM.
L'extraction de chaînes de caractères via MemorySegment::getString a été revue pour réduire considérablement les allocations intermédiaires et les copies en mémoire off-heap, accélérant fortement les traitements sur les chemins critiques (hot paths).
La méthode générée automatiquement hashCode() pour les classes de type record a été optimisée par la JVM pour atteindre un niveau de performance équivalent à une implémentation écrite manuellement.
Le ramasse-miettes G1 bénéficie du JEP 522 qui redessine sa table de cartes (card-table) afin de réduire les coûts de synchronisation des barrières d'écriture, offrant un gain de débit de 5 % à 15 % sur les applications manipulant énormément de références d'objets.
Grâce au JEP 516 (Project Leyden), le cache d'objets Ahead-of-Time (AOT) adopte un format de flux agnostique, ce qui lui permet d'être compatible avec n'importe quel Garbage Collector, y compris le ramasse-miettes à très faible latence ZGC.
Le démarrage de la JVM s'accélère par défaut lorsqu'aucune taille de tas n'est configurée, car HotSpot n'applique plus de pourcentage initial (InitialRAMPercentage) mais démarre directement avec la taille minimale (MinHeapSize) pour éviter d'allouer des métadonnées inutiles.
Librairies Outillage Méthodologies Sécurité Loi, société et organisation Conférences Nous contacter
LCC 340 - Episode on l'voit on l'voit pas
Tuesday, May 12, 2026 • Duration 01:51:31
Java 26 est là, GraalVM cartonne chez Trivago (43 à 12 réplicas !), OpenJDK interdit le code généré par LLM, Spring et Quarkus enchaînent les releases. Côté IA : ADK 1.0, A2A, Lyria 3 chante (mal ?), Yann LeCun lance Ami Labs et ses World Models. Mythos d'Anthropic fait trembler la sécu, Claude Code a leaké son source, et les git worktrees envahissent vos terminaux. Bonus : la mort annoncée de l'IDE, vagues de licenciement chez Oracle et Block, et nos voix toutes clonées. Bon week-ends de mai !
La passerelle GraphQL de Trivago (point d'entrée de tout le trafic vers 48 microservices) souffrait de pics de timeout au démarrage JVM
Résultats spectaculaires après migration vers GraalVM Native Image : réduction des réplicas de 43 à 12, CPU de 15 à 5 cœurs, images Docker plus légères
Obstacles techniques : incompatibilité Log4j → migration vers Logback, remplacement de Mockk par Testcontainers, compilation CI/CD très gourmande
Netflix DGS et d'autres librairies manquaient de support GraalVM → l'équipe a contribué des correctifs upstream en open source
Approche recommandée : commencer par les services les moins complexes, investir massivement dans les tests automatisés
À la 14e migration, le processus était si rodé qu'il allait plus vite que la toute première tentative
OpenJDK adopte une politique intérimaire interdisant toute contribution incluant du contenu généré par des LLMs, modèles de diffusion ou systèmes deep-learning
Librairies Cloud Data et Intelligence Artificielle Outillage Méthodologies Sécurité Loi, société et organisation Conférences Nous contacter
LCC 339 - Clotûre de Devoxx France 2026 par les cast codeurs
Wednesday, April 29, 2026 • Duration 53:42
Kat.ia, polos rouges, retrospective de la semaine Devoxx France, teaser sur le Studio Devoxx et bien d'autres choses encore comment les coups de coeur des membres de l'équipe.
Gros zoom sur les skills et leurs usages dans les coding agents, sur les benchmarks de stacks techniques MCP, mais aussi du Java 26-27, du HttpClient, du NodeJS, des scenarios nucléaires pilotés par l'IA, de la méthodologie, bref on ne s'ennuie pas !
Bruno Borges a créé un site, inspiré d'un site récent qui montrait comment CSS avait évolué, qui illustre justement comment Java a bien évolué au fil du temps, et est devenu un langage encore plus élégant https://javaevolved.github.io/
Code simplifié: main() allégé, var, blocs de texte, API String enrichie.
Pattern Matching: switch sur types, instanceof amélioré, record patterns.
Données: Records, collections immuables faciles à créer, méthodes de listes.
Librairies Web Data et Intelligence Artificielle Outillage Méthodologies Sécurité Loi, société et organisation Conférences Nous contacter
LCC 337 - Datacenters Carrier Class dans l'espace
Monday, February 16, 2026 • Duration 01:34:19
Emmanuel et Guillaume discutent de divers sujets liés à la programmation, notamment les systèmes de fichiers en Java, le Data Oriented Programming, les défis de JPA avec Kotlin, et les nouvelles fonctionnalités de Quarkus. Ils explorent également des sujets un peu fous comme la création de datacenters dans l'espace. Pas mal d'architecture aussi.
Librairies Infrastructure Data et Intelligence Artificielle Outillage Architecture Méthodologies Loi, société et organisation Conférences Nous contacter
LCC 336 - Interview Kotlin avec Arnaud Giuliani
Friday, February 6, 2026 • Duration 01:54:41
Dans cet épisode, Emmanuel interview Arnaud Giuliani. Arnaud est dans l'écosystème Kotlin et est le créateur de Koin, la solution de Dependency Injection. On discute de la genèse de Kotlin, de son alignement avec Android puis de son évolution multiplateforme. On discute coroutine, impact de K2, de développement mobile. On finit en discutant de Kotzilla et de l'entrepreneuriat sur un projet Open Source.
Interview Ta vie ton oeuvre (présentation de l'interviewé)
ton historique de développeur
Koin
d'où est venu l'idée, pourquoi
difference vs Dagger, Hilt, CDI?
fondateur de Kotzilla
Introduction à la techno (5 à 10 mins max)
Kotlin en 4 phrases
nombre de développeurs
usages (front, mobile, backend)
Compose, K2 en une phrase
La techno en concepts
Kotlin le langage
Quel sont ses particularités et spécificités
pourquoi il a pris sur Android ?
Kotlin multiplateform
comment ça marche concretement
WASM en beta, tu as eu des retours?
pour les devs de framework, c'est transparent?
Co-routines et concurrence structurée
fais nous un point de ce que c'est
son usage dans l'ecosystème
vs loom, des ponts ?
Kotlin et le backend
connu pour le support Android,
quid du back end?
travaux avec Spring
Ktor
les autres plateformes Java genre Quarkus et micronaut, utilisées ?
Comment on l'utilise en pratique pour un dev Sous le capot La communauté, le futur Monter une boite Nous contacter
LCC 335 - 200 terminaux en prod vendredi
Friday, January 16, 2026 • Duration 01:43:16
De retour à cinq dans l'épisode, les cast codeurs démarrent cette année avec un gros épisode pleins de news et d'articles de fond. IA bien sûr, son impact sur les pratiques, Mockito qui tourne un page, du CSS (et oui), sur le (non) mapping d'APIs REST en MCP et d'une palanquée d'outils pour vous.
JDK 27 est la prochaine version majeure de Java, une version non-LTS avec seulement 6 mois de support, qui succède à JDK 26.
La disponibilité générale est prévue pour le 15 septembre 2026, avec des release candidates les 6 et 20 août 2026.
Le périmètre est désormais figé (feature freeze) avec neuf JEP au programme.
Le ramasse-miettes G1 devient le collecteur par défaut dans tous les environnements, et plus seulement en mode serveur.
Ajout d'un support de la cryptographie post-quantique pour TLS 1.3, via des échanges de clés hybrides combinant algorithmes classiques et résistants au quantique.
Finalisation de l'API PEM pour encoder et décoder clés, certificats et listes de révocation au format PEM.
L'API Vector poursuit son incubation pour la douzième fois, permettant d'exprimer des calculs vectoriels compilés en instructions CPU optimisées.
Les en-têtes d'objets compacts, introduits en JDK 24, sont désormais activés par défaut et réduisent l'empreinte mémoire du tas.
Plusieurs previews sont reconduites : constantes paresseuses (3e preview), types primitifs dans les patterns (5e preview) et concurrence structurée (7e preview).
Ajout d'une fonctionnalité de rédaction in-process pour JFR, afin de masquer les données sensibles dans les enregistrements de profiling.
Kotlin est un langage moderne, multiplateforme (JVM, Android, iOS, JavaScript, Wasm) développé par JetBrains, souvent utilisé comme alternative à Java.
Les context parameters passent en stable : ils permettent de fournir des dépendances implicites à une fonction sans les déclarer en paramètre explicite, un peu comme une injection de dépendances.
Les collection literals arrivent en expérimental : on peut écrire une liste avec des crochets, comme en Python, par exemple val fruits = ["pomme", "banane"].
L'API UUID de la bibliothèque standard devient stable, pour générer et manipuler des identifiants uniques nativement.
Nouvelles fonctions utilitaires comme isSorted() pour vérifier si une collection est déjà triée.
Support de Java 26 côté JVM et alignement automatique des versions Java et Kotlin dans les projets Maven.
Kotlin/Native, la compilation vers du code natif iOS et macOS, active par défaut un nouveau ramasse-miettes plus rapide et améliore l'export vers Swift.
Kotlin/Wasm, la compilation vers WebAssembly pour faire tourner du Kotlin dans le navigateur, rend la compilation incrémentale stable.
Kotlin/JS permet désormais d'exporter des value classes vers JavaScript et TypeScript.
Le compilateur K1, l'ancienne génération, n'est plus supporté : seul le nouveau compilateur K2 reste disponible.
Le JDK ne propose aujourd'hui aucune API JSON native, obligeant à dépendre de bibliothèques externes comme Jackson, Gson ou Jakarta JSON pour parser ou générer du JSON.
Cette JEP remplace la JEP 198 de 2014 et cible JDK 28 avec le nouveau module incubateur jdk.incubator.json.
L'objectif est de couvrir les besoins simples d'extraction de données sans binding de données ni API de streaming, en laissant ces cas avancés aux bibliothèques existantes.
L'API s'articule autour de l'interface scellée JsonValue avec six sous-types : JsonString, JsonNumber, JsonBoolean, JsonNull, JsonObject et JsonArray.
Le parsing est strict et conforme à RFC 8259 : pas de virgules finales, pas de commentaires, et les noms de membres dupliqués provoquent une erreur. Donc pas de JSON5
La navigation se fait via get et tryGet, et la conversion vers des types Java via asInt, asLong, asDouble, asString, asMap ou asList.
En cas d'erreur, une JsonValueException précise le chemin exact dans le document et sa position en ligne et colonne.
Le pattern matching sur les sous-types de JsonValue permet de gérer proprement l'évolution du format d'un document JSON dans le temps.
La génération se fait via toString pour une sortie compacte ou Json.toDisplayString pour une sortie indentée et lisible.
À terme, le JDK pourrait utiliser cette API en interne, par exemple pour remplacer les fichiers de configuration au format property par du JSON.
le mode generationel pour Shenandoah est prévu par défaut et deprécue le non générationel en 28
fini le support de Java sur Apple Intel
GraalVM 25.2 : références compressées et Graal Script Agent medium.com/graalvm/…
GraalVM est une machine virtuelle polyglotte d'Oracle offrant compilation JIT avancée et compilation en image native pour accélérer les applications Java et d'autres langages.
Cette version 25.2 fait partie du train de releases innovation qui livre les nouveautés plus vite, pendant que GraalVM 25.0 reste la version stable recevant les correctifs de sécurité critiques.
Nouveauté phare, le Graal Script Agent transforme des demandes en langage naturel en plugins sandboxés exécutés localement, en JavaScript ou Python, avec un accès restreint aux APIs de l'application.
Les références compressées sont désormais activées par défaut dans Native Image sur les systèmes 64 bits, remplaçant les adresses complètes par des valeurs 32 bits relatives au tas.
Cette optimisation réduit de 39% la consommation mémoire RSS d'une application Micronaut connectée à Oracle Database, comparée à la version 25.0.
Contrepartie de cette optimisation, le tas géré est désormais plafonné à 32 Go.
Le garbage collector G1 est maintenant disponible sur toutes les plateformes, y compris Windows, via l'option –gc=G1.
G1 apporte de meilleures performances, une latence réduite et un démarrage plus rapide, avec des images natives plus petites grâce à l'optimisation guidée par profil.
Le Vector API de Java est activé par défaut pour exploiter les instructions SIMD, utile pour le machine learning et le traitement de données.
Bonne intégration avec l'écosystème via Micronaut 5.1, Quarkus et WebAssembly.
Shopify arrête React Native pour ses applis mobiles iOS et Android et repasse à du natif avec Swift et Kotlin shopify.engineering/back-to-native
Les progrès majeurs des LLM (IA) réduisent drastiquement le coût du développement sur deux plateformes distinctes.
Les bénéfices du natif pur restent supérieurs, moins de couches d'abstractions, de dépenfances externes, et plus rapide pour adopter les dernières fonctionnalités des OS
Les bibliothèques open-source (Skia, FlashList, Restyle) évoluent : Skia sera forkée par William Candillon, FlashList cherche un nouveau repreneur, Restyle sera archivée fin 2026.
Migration des applications (Shop, Shopify, etc.) réalisée en mode "greenfield" (reconstruction totale) assistée par IA.
Utilisation du système "Helix" pour un développement itératif et contrôlé par des agents IA.
Découplage de la logique métier et de l'interface via une CLI pour accélérer les tests et éviter les lenteurs des simulateurs.
L'application Shop a été entièrement reconstruite en natif en 12 semaines ; les autres suivront.
Quarkus est un framework Java cloud natif optimisé pour GraalVM et HotSpot, conçu pour les microservices et les environnements conteneurisés.
En 3.38 (29 juillet), l'équipe allège les nouveautés pour se concentrer sur Quarkus 4, la communauté atteint 1213 contributeurs.
3.38 introduit l'éviction basée sur le poids mémoire pour le cache Caffeine de second niveau d'Hibernate, en plus de l'éviction par comptage.
3.38 apporte l'extension Quarkus HTTP Problem qui implémente la RFC 9457 pour mapper les exceptions en réponses application/problem+json, intégrée à OpenAPI.
3.37 (24 juin) ajoute l'extension expérimentale quarkus jlink pour générer des images runtime JDK sur mesure et réduire la taille des conteneurs.
3.37 active par défaut la sérialisation Jackson sans réflexion pour de meilleures performances. et 3.39 lesdesactivent et les rement en opt-in
3.37 introduit dans REST Client RestMultiResponse pour lire codes de statut et en-têtes sur des réponses REST en streaming, avec passage à Hibernate ORM 7.4 qui exige PostgreSQL 14 minimum.
3.36 (27 mai) propose Quarkus Signals en expérimental, un système de communication typée entre composants inspiré des events CDI et de l'EventBus Vert.x.
3.36 embarque des SBOM applicatifs exposés via /.well-known/sbom, y compris en image native selon la spécification GraalVM.
3.36 ajoute l'authentification OIDC via JWT SPIFFE, facilitant l'identité de charge de travail en environnement zero trust.
Micronaut est un framework JVM pour microservices et applications cloud-natives, avec injection de dépendances à la compilation et démarrage rapide.
Introduction d'Open DI 1.0.0, une implémentation CDI Lite s'appuyant sur l'infrastructure d'injection de dépendances de Micronaut.
Côté données, support officiel de SQLite et intégration MyBatis, avec ETags basés sur les valeurs pour le verrouillage optimiste.
En sécurité, arrivée d'un module OWASP HTML Sanitizer, délégation d'authentification @RunAs et résolution de locale via OIDC.
Côté IA, LangChain4j ajoute le support Chroma, la mémorisation de chat Oracle et l'authentification Google injectée pour Vertex AI, avec passage du MCP en version 2.0.0.
Mises à jour majeures des dépendances : Spring Boot 4.1.0, Jetty 12.1.10, Tomcat 11.0.23, OpenTelemetry 1.64.0 et Kubernetes Java Client 27.0.0.
SSL activé par défaut par service pour les clients HTTP
Kubernetes est la plateforme open source de référence pour l'orchestration de conteneurs, portée par la CNCF.
La version 1.36 nommée Haru apporte 70 améliorations : 18 passent stables, 25 en bêta et 25 en alpha, avec 106 entreprises et 491 contributeurs.
Les user namespaces passent en disponibilité générale, isolant le root du conteneur de celui de l'hôte.
Les Mutating Admission Policies passent en GA, remplaçant les webhooks par des règles CEL natives plus performantes.
L'autorisation de l'API kubelet devient plus fine, remplaçant le droit trop large nodes/proxy.
Le labeling SELinux des volumes utilise désormais mount -o context, accélérant le démarrage des pods.
Plusieurs avancées ciblent les charges IA : gang scheduling en bêta, préemption consciente des groupes de pods, et allocation dynamique de ressources activée par défaut pour le partage fin des GPU.
Le redimensionnement vertical des pods en place passe en bêta et activé par défaut, ajustant CPU et mémoire sans redémarrage.
Suppression du plugin gitRepo, source de risque de sécurité, et du mode IPVS de kube-proxy, tous deux dépréciés de longue date.
Avec la sortie de 1.36, la version 1.34 devient la plus ancienne branche encore supportée et entre en maintenance, ne recevant plus que des correctifs critiques avant sa fin de support.
Terraform est l'outil historique d'Infrastructure as Code de HashiCorp, OpenTofu en est le fork open source lancé après le changement de licence.
HashiCorp est passé de la licence MPL 2.0 a la BUSL 1.1 en aout 2023, ce qui a poussé une partie de la communauté a créer OpenTofu sous la Linux Foundation.
IBM a racheté HashiCorp pour 6,4 milliards de dollars, finalisé en février 2025, tandis qu'OpenTofu rejoignait le CNCF comme projet sandbox en avril 2025.
OpenTofu prend de l'avance sur des fonctionnalités inédites : chiffrement du state côté client depuis la v1.7, valeurs éphémères qui gardent les secrets hors du state depuis la v1.11, et prevent_destroy dynamique en v1.12 (mai 2026).
Terraform garde l'avantage sur l'orchestration managée avec Terraform Stacks, désormais en disponibilité générale, sans équivalent natif côté OpenTofu.
Le coût diverge fortement : HCP Terraform facture jusqu'à 0,99 dollar par ressource gérée et par mois, alors qu'OpenTofu reste une CLI gratuite couplée au backend de son choix.
Fidelity Investments a migré plus de 2000 applications et 50000 fichiers d'état vers OpenTofu, la complexité venant surtout de l'écosystème (CI/CD, gouvernance) plutôt que du binaire lui-même.
OpenTofu reste compatible avec les configurations Terraform jusqu'a la version 1.6.x, mais les versions Terraform plus récentes n'offrent plus aucune garantie de compatibilité.
Pour les secteurs régulés, le chiffrement natif du state par OpenTofu et sa gouvernance ouverte sont des arguments forts face aux exigences de protection des données.
La recommandation qui ressort des deux articles : partir sur OpenTofu pour les projets neufs et rester sur Terraform si l'on est déjà investi dans HCP Terraform et ses fonctionnalités de gouvernance.
Périmètre démesuré : Volonté de supporter un nombre gigantesque de langages, bibliothèques et frameworks.
Pénurie critique de mainteneurs : Les données montrent une hyper-concentration du travail ; de nombreux SDK (comme PHP ou Ruby) dépendent d'une ou deux personnes seulement.
Stabilité paralysante : La règle interdisant toute modification d'une fonctionnalité déclarée « stable » crée une peur de valider les nouveautés, entraînant des mois de débats.
Solutions proposées par l'auteur :
Créer un niveau « Bêta » temporaire (ex: 12 mois) entre les statuts « Expérimental » et « Stable ».
Faire preuve de transparence sur les différences de qualité/maintenance entre les langages (ne pas mettre Go et Ruby sur le même plan).
Communiquer activement sur le besoin urgent de nouveaux mainteneurs.
Assouplir la politique de stabilité en acceptant des breaking changes bien documentés.
AWS us-west-2 (Oregon) est une région cloud majeure hébergeant de nombreux services et fournisseurs SaaS.
Le 24 juillet 2026, une panne matérielle réseau a coupé la connectivité entre la région et le Seattle Metro pendant environ 20 minutes.
Particularité notable, seule la couche de connectivité externe a été touchée, le trafic interne à la région a continué de fonctionner normalement.
Après la réparation matérielle, une phase distincte de reconvergence des routes a de nouveau causé une connectivité intermittente pendant plusieurs dizaines de minutes.
Les clients Direct Connect via EqSe2 ont subi une coupure bien plus longue que le reste, 1h17 au total.
Neuf incidents chez sept fournisseurs ont cité explicitement AWS comme cause, dont SendGrid, SparkPost et NinjaOne.
Fait marquant, les temps de rétablissement des fournisseurs tiers ont largement dépassé la durée de la panne AWS elle même.
NinjaOne a mis 9h29 à se rétablir totalement, avec 150000 appareils tentant de se reconnecter simultanément freinés par des mécanismes de backoff et jitter.
SparkPost a mis 6h45 à absorber l'arriéré de courriels accumulé pendant la coupure, avec encore 80 à 90 minutes de retard des heures plus tard.
L'article recommande d'identifier ses dépendances en us-west-2 et de prévoir capacité et bascule, l'effet différé pouvant durer bien plus longtemps que l'incident initial.
Google Cloud est la plateforme d'infrastructure cloud de Google, organisée en régions et zones de disponibilité comme us-central1.
Le 1er septembre 2026, un ingénieur a débranché par erreur des câbles fibre optique lors d'une opération de maintenance matérielle routinière dans la zone us-central1-b.
En 13 minutes, il a déconnecté 100 % des chemins de fibre optique de tous les équipements de cette portion de la zone.
Les machines virtuelles hébergées dans la zone touchée sont devenues injoignables, avec une perte de paquets élevée.
Le taux de chute du trafic réseau pour les ressources concernées a atteint 100 %.
L'incident a duré 4 heures et 11 minutes, de 7h41 à 11h52 heure du Pacifique.
Google a détecté l'anomalie, reroute le trafic, identifié les liaisons optiques débranchées puis rebranché physiquement les fibres avant le retour à la normale.
Les post-mortems d'incident cloud sont un classique du podcast, mais l'erreur humaine sur du câblage physique chez un hyperscaler mérite une minute d'antenne.
animation-timeline: scroll() et view() atteignent le baseline cross-browser, Firefox et Safari ayant livré le support complet. Plus besoin de préfixes ni de librairie JS.
@starting-style devient cross-browser : animations d'entrée depuis display: none sans hack de timing JS.
Firefox 147 amène l'anchor positioning au baseline, plus les view transition types et la Navigation API.
Les menus contextuels via popover CSS arrivent aussi.
SDK Java non officiel pour Antigravity, rétro-ingénierie du SDK Python pour exploiter un binaire Go sous-jacent.
Cas d'usage : pipelines CI/CD, applications d'entreprise (Spring Boot), outils internes, surveillance en arrière-plan, interfaces personnalisées.
Gestion des ressources : implémente AutoCloseable(try-with-resources) pour lancer et fermer proprement le processus Go.
Exécution de code Java personnalisé : exposition de méthodes Java comme outils IA via les annotations @Toolet@Param.
Streaming et programmation réactive : prise en charge des CompletableFuture, des callbacks (chatStream), et deFlow.Publisher.
Fonctionnalités avancées : persistance de session, protocole MCP, politiques de sécurité, entrées multimodales, et sorties structurées mappées sur des records Java.
Sécurité renforcée : Vérification stricte des autorisations de lecture sur les tâches référencées et implémentation d'une logique de blocage par défaut (fail-closed).
Intégration facilitée : Support du câblage programmatique des autorisations pour les environnements non-CDI (comme Spring).
Contrôle des flux : Ajout du Task Stream Lifecycle Hook pour surveiller et gérer le cycle de vie des abonnements aux flux d'événements.
Stabilité des données : Immutabilité stricte imposée sur les enregistrements de spécifications pour empêcher toute modification accidentelle.
Documentation : Lancement d'une documentation web multi-versions et d'un Javadoc agrégé pour tous les modules.
Corrections de bugs : Résolution de problèmes liés à la synchronisation des tâches, aux réponses de streaming et aux conditions de concurrence HTTP.
Breaking changes : Nécessite une migration suite à la modification de certaines méthodes d'autorisation, la réorganisation de packages et le renommage de l'état TaskState.UNRECOGNIZED en TaskState.TASK_STATE_UNSPECIFIED.
Introduction du pattern Debate pour lancer des sous agents dans rechercehnt et entrent dans un debat critique sur une decision avant qu'un juge decide (1.17)
compensation d'action d'un outil avec @ReverseTool (1.17)
Ajout du pattern Belief-Desire-Intention (1.18): belief est l'état du monde cru, desire est la liste des objectifs, intention est le plan pour avancer un ou plusieurs objectif
Support d'un systeme crash resilient dans l'approche Human in the loop avec des checkpoints nestés (1.18)
Support Open AI TextToSpeech (1.18)
Support de Mistral batch chat (1.18)
support MCP client 2026-07-28 (1.19)
Anthromic batch chat et Google thinking mode (1.19)
MCP (Model Context Protocol) est le protocole standard permettant aux LLM et agents IA de communiquer avec des outils, ressources et serveurs externes.
Cette version marque le plus gros changement depuis le lancement du MCP distant il y a 18 mois.
Le protocole passe d'un modèle bidirectionnel avec état à un modèle stateless en requête/réponse.
Suppression de la poignée de main initialize/initialized et du header Mcp-Session-Id, chaque requête devient autoportante.
N'importe quelle requête peut désormais être routée vers n'importe quelle instance de serveur derrière un load balancer classique, sans stockage partagé.
Introduction des Multi Round-Trip Requests (MRTR) pour remplacer les requêtes initiées par le serveur, via un resultType input_required et des inputResponses.
Nouveaux headers Mcp-Method et Mcp-Name pour permettre aux gateways de router et autoriser sans parser le JSON.
Les résultats de tools, prompts et resources deviennent cacheables grâce aux paramètres ttlMs et cacheScope.
Renforcement sécurité avec la validation d'issuer RFC 9207 pour éviter les attaques de confusion entre serveurs d'autorisation, et transition de DCR vers CIMD.
Roots, Sampling et Logging sont dépréciés avec douze mois de support garanti, tout comme le transport legacy HTTP+SSE.
Un site qui référence les skills pour la JVM (framework, langage, build…) jvmskills.com
Frameworks : Spring, Quarkus, Jakarta EE, Reactor, Camel
Java : bonne pratiques, conventions, guides de mise à jour à niveau LTS, API spécifiques (streams, optionals, logs…)
Bases de données : ORM, validation, modélisation PostgreSQL, vectorielle avec pgvector
Tests et qualité : TDD, mutation testing, debogage avec JDB
Workflows dev et archi : commits git, domain modeling
Les skills sont des éléments de configuration en prose pour agents IA comme Claude, distribués via des marketplaces à la manière de librairies logicielles.
Frédéric Camblor critique cette analogie car partager un skill n'est pas la même chose que le mutualiser durablement.
Écrire un skill prend 30 minutes mais l'adopter ailleurs coûte cher en appropriation et en maintenance.
Forker un skill s'avère souvent plus efficace que de chercher à converger vers une version commune.
Contrairement au code, les régressions d'un skill ne sont pas détectables automatiquement.
Un skill peut se dégrader silencieusement sur plusieurs cas d'usage en corrigeant un autre.
Les skills vieillissent vite car les modèles progressent et intègrent naturellement certaines bonnes pratiques.
Le skill-creator d'Anthropic permet d'évaluer un skill via des jeux de cas et des mesures de variance.
L'auteur distingue quatre sphères de partage : personnelle, équipe, outil et marketplace.
Il propose un cycle partage puis appropriation puis duplication puis divergence plutôt qu'une installation collective figée.
Claude est l'assistant IA d'Anthropic, et le watermarking est une technique permettant de marquer discrètement un contenu généré par IA pour en tracer l'origine.
Anthropic annonce que les futurs modèles Claude intégreront un filigrane numérique invisible dans le texte généré.
Le principe exploite les choix de mots équivalents que le modèle fait naturellement, en les orientant via une clé cryptographique plutôt qu'un tirage aléatoire.
Le texte produit reste indiscernable à l'œil nu, sans caractères cachés, sans ralentissement ni coût supplémentaire.
Seule la personne possédant la clé correspondante peut détecter la présence du filigrane.
Le filigrane est plus fiable sur les textes longs et créatifs, moins sur du texte factuel, du code ou après une édition manuelle poussée.
Il ne prouve pas qu'un texte est écrit par IA, ni n'identifie l'auteur ou la conversation d'origine, il donne seulement une probabilité d'implication de Claude.
Une API de détection est proposée en accès restreint aux régulateurs, forces de l'ordre, médias et vérificateurs de faits.
Pour les fichiers non textuels comme les images ou les PDF, Anthropic s'appuie sur le standard C2PA.
Cette initiative s'inscrit dans le Code de Pratique de l'UE sur la transparence des contenus IA, signé par Anthropic et environ 190 autres acteurs, en lien avec la loi européenne sur l'IA.
GPT-6 Astra est le nouveau modèle phare d'OpenAI, annoncé le 3 septembre 2026 comme le plus intelligent et le plus aligné de l'entreprise.
Le modèle arrive deux jours après Claude Fable 5.1, à un tarif affiché comparable, dans une course accélérée aux modèles de code et de raisonnement.
Astra revendique 98 % sur FrontierMath Tier 4, 99,9 % sur ARC-AGI-3 et 100 % sur ExploitBench.
Fenêtre de contexte d'environ 1,05 million de tokens.
Tarification API, 10 dollars par million de tokens en entrée, 50 dollars en sortie, et 1 dollar par million pour les tokens en cache.
Au-delà de 272 000 tokens en entrée, toute la requête est facturée au double sur l'entrée et une fois et demie sur la sortie.
Astra est le premier modèle d'OpenAI à franchir le seuil interne critique en cybersécurité.
La version publique refuse les tâches offensives avancées comme générer des preuves de concept d'exploits.
Le déploiement est progressif, les entreprises du programme de cybersécurité Daybreak d'OpenAI y accèdent en premier, avant ChatGPT Plus, Pro, Business, Enterprise, l'API et AWS.
Même logique de diffusion contrôlée que chez Anthropic avec Mythos 5.1 : deux jours d'écart, deux modèles de tête, et la même question de savoir qui accède en premier aux capacités les plus sensibles.
Nouveau produit : Lancement de l'extension Java & Kotlin by IntelliJ IDEA pour les éditeurs basés sur VS Code (incluant Cursor).
Technologie : Utilisation du standard LSP (Language Server Protocol).
Objectif : S'adapter au développement piloté par les agents IA, qui nécessite des fonctionnalités IDE légères et standardisées.
Fonctionnalités clés :
Support des projets Java, Kotlin et mixtes.
Débogage (DAP).
Complétion intelligente, navigation et analyse de code.
Refactoring.
Prise en charge de Maven, Gradle et Bazel.
Disponibilité : Téléchargeable via le Visual Studio Marketplace et l'Open VSX registry.
Licence / Prix :
Gratuit durant la phase de preview (évaluation renouvelable de 30 jours).
Nécessitera un abonnement IntelliJ IDEA Ultimate après la preview.
(Note : Le LSP purement Kotlin reste gratuit et open-source).
Avenir : Développement en cours pour optimiser les flux de travail avec les agents IA en ligne de commande (ex: Claude Code, Codex) afin de réduire la consommation de tokens.
Airbnb a restructuré son authentification autour d'un modèle en deux phases, identification du compte (email, téléphone ou connexion sociale) puis choix du challenge d'authentification décidé côté serveur selon le contexte utilisateur.
Ce qui est interessant c'est que choisir la method d'authentification est côté serveur et adaptative, comme si c'était une révolution
Arreter là
Un moteur de politique serveur sélectionne la méthode d'authentification optimale avec des solutions de repli, permettant des adaptations régionales comme l'OTP WhatsApp au Brésil ou des fournisseurs d'identité locaux en Corée du Sud sans nouvelle version client.
Un Challenge Picker propose des méthodes alternatives classées par probabilité de succès en cas d'échec.
Résultat chiffré, 60 % de code d'authentification en moins et 100 Ko de moins sur le bundle client web.
Partage par Thariq des apprentissages sur l'ingénierie du contexte et le prompt engineering pour les nouveaux modèles Claude 5 (comme Claude Opus 5 et Claude Fable 5) utilisés dans Claude Code.
Évolution majeure vers le dés-empirement (unhobbling) : plus de 80 % du prompt système de Claude Code a pu être supprimé sans perte sur les évaluations de code, les modèles récents faisant preuve d'un bien meilleur jugement contextuel.
Passage des règles strictes au jugement : au lieu d'interdire les commentaires ou d'imposer des contraintes lourdes, les modèles s'adaptent désormais au code environnant et font appel à leur propre discernement.
Remplacement des exemples par la conception d'interfaces : fournir des exemples figés restreint l'exploration du modèle, d'où l'importance de concevoir des outils et des fichiers plus expressifs.
Adoption de la divulgation progressive (progressive disclosure) : chargement dynamique du contexte (via des compétences ou des outils à chargement différé comme ToolSearch) pour éviter de saturer la fenêtre de contexte avec des instructions fixes.
Utilisation d'une mémoire automatique et de références riches (artefacts HTML, suites de tests, fonctions de référence) plutôt que de fichiers CLAUDE.md pléthoriques ou de consignes répétitives.
Recommandation pour les fichiers CLAUDE.md et les Skills : les garder légers, se concentrer sur les pièges spécifiques (gotchas) du dépôt, et structurer les guides sous forme d'arborescences modulaires pour ne charger que le nécessaire.
Adoption massive : 90 % des développeurs professionnels utilisent des agents d'IA de codage au moins une fois par semaine, et 68 % quotidiennement.
Claude Code domine : Il devient le nouveau leader du marché avec 39 % d'adoption mondiale (47 % aux États-Unis), détrônant largement ses concurrents.
Déclin de GitHub Copilot : L'ancien leader perd de sa superbe, passant de 29 % à 21 % d'adoption, bien qu'il conserve une très forte notoriété (79 %).
Percée de Codex : Sa croissance est fulgurante, son taux d'adoption ayant été multiplié par 5 en quelques mois (de 3 % à 16 %).
Recul de Cursor : L'outil connaît une légère baisse, passant de 18 % à 12 % d'adoption, principalement due à une forte chute sur le marché chinois.
Écosystème diversifié : JetBrains AI atteint 9 % d'adoption. Des alternatives comme OpenCode (7 %) et Google Antigravity (6 %, mais très populaire en Inde à 15 %) continuent de s'implanter.
Paul Stack (ex-Pulumi) explique que l'intégration continue a toujours mêlé deux rôles distincts, exécuter la vérification du code et coordonner les fusions.
avec les agents, la pression sur la CI augmente, car ils ne testent pas end to end tout le temps
ils ont maintenant des workflows qui verifient tests, lint, revue d'agent etc dans un env local isolé
donc c'est pre PR push
Il propose de séparer vérification (exécution), attestations structurées (hash de commit, checksums SHA256) et CI, réduite à la validation et à la coordination des fusions.
Sa thèse, les agents IA peuvent désormais vérifier tout le code localement avant même l'ouverture d'une pull request, ce qui bouleverse cet équilibre.
l'attestation vient ensuite
et la CI est une étape de vérification (attestation de commit et de tests et si branche a bougé, repart à l'execution)
Martin Fowler, qui a repéré l'article dans ses Fragments du 1er septembre 2026, réplique que la vraie CI a toujours exigé une vérification locale avant de pousser le code.
Analyse du piratage massif de la DGFiP et d'autres administrations françaises en 2026, révélateur de failles systémiques de cybersécurité de l'État.
Intrusion détectée fin juin à la DGFiP, mais l'exfiltration de 678 000 entrées fiscales n'a été découverte qu'en août lors de leur mise en vente.
Données volées : noms, revenu fiscal de référence, taux de prélèvement, adresse, téléphone.
Une seconde attaque du même pirate a visé le cadastre fin juillet, exposant plus de 2 millions de personnes.
L'Éducation nationale a aussi été piratée fin juillet, données de tous les agents depuis 2001 exposées.
Cause principale : modèle de sécurité fondé sur le périmètre physique plutôt que sur le zero trust, sans contrôle après authentification.
Le télétravail post Covid a étendu les accès distants sans reconstruire les modèles de confiance.
Aucun système de détection d'exfiltration n'existait, la fuite n'a été révélée que par le pirate lui-même.
La transposition de la directive NIS2 est bloquée en France depuis septembre 2025, la CJUE a condamné le pays à des astreintes.
L'article souligne un désengagement croissant des Etats-Unis en matière de cybersécurité internationale et une dépendance technologique accrue de la France.
Retour d'expérience et analyse par Mathilde Rigabert sur l'impact réel de l'IA générative dans le quotidien d'un Engineering Manager.
L'IA excelle pour automatiser la reconstitution factuelle de l'activité (lecture de PRs, commits, reviews) nécessaire aux 1:1 et entretiens annuels, mais elle offre une vision uniquement quantitative et nécessite d'être croisée avec des notes de terrain.
L'IA rend le maintien de la qualité et des standards plus difficile : selon une étude Faros AI sur 22 000 développeurs, les PRs mergées sans aucune revue ont augmenté de 31 %, fragilisant la compréhension commune apportée par le pairing et les revues de code.
Le temps gagné par l'IA ne permet pas d'augmenter massivement le span of control (seulement 2 ou 3 personnes de plus), car l'IA compresse la collecte d'informations mais pas les conversations humaines complexes ou l'accompagnement du changement.
Les compétences d'orchestration et de gestion de sujets multiples acquises par les managers facilitent leur transition vers le pilotage de plusieurs agents IA en contribution individuelle.
Le piège actuel réside dans l'accumulation des casquettes (manager, tech lead, product owner, contributeur, pompier), conduisant à l'épuisement et au délaissement du travail de fond sur l'organisation et l'humain.
Le temps libéré par l'IA doit être réinvesti dans le travail invisible qui fait tenir le système (suivi des actions de rétro, analyse de métriques, coaching), que personne ne réclame à court terme mais dont l'absence fragilise les équipes à long terme.
L'auteur explique pourquoi il regrette d'avoir quitté GitHub pour Codeberg, à la suite des récentes modifications des conditions d'utilisation (ToS) de la plateforme.
Codeberg a interdit les projets principalement générés par des LLM ainsi que les projets liés aux cryptomonnaies via des propositions de l'Assembly 2026, au motif qu'ils nuisent à sa réputation. blog.codeberg.org/protecting-our-floss-commons-from…
Critique de l'argument de Codeberg sur l'absence de communauté des vibe coders, en rappelant que la majorité des logiciels libres (FOSS) sont créés par des développeurs solos sans communauté au sens romancé du terme.
Ironie soulignée concernant la posture de Codeberg et Forgejo, qui a hérité de la communauté de Gitea après un hard fork avant de faire la leçon aux développeurs individuels.
Alerte sur le risque de censure idéologique : interdire des catégories entières plutôt que de traiter les abus réels ou la consommation d'infrastructure crée un précédent dangereux pour une forge qui se veut libre.
Proposition de solutions alternatives pour gérer l'impact des LLM et de la crypto : déclaration obligatoire via des cases à cocher, hébergement sur des tiers d'infrastructure spécifiques payants ou sous quotas, et disclaimers automatiques.
Décision de l'auteur de quitter Codeberg pour mettre en place son propre serveur Git personnel afin d'éviter la dépendance à une plateforme qui modifie ses règles de manière unilatérale.
Scaleway est le cloud provider français filiale du groupe Iliad, positionné comme alternative souveraine aux hyperscalers américains.
Airbus a lancé un appel d'offres de six mois consultant une cinquantaine d'acteurs dont OVHcloud, Thales, Google S3NS et Microsoft Bleu.
Scaleway a été retenu pour héberger les applications critiques liées à la conception d'aéronefs, l'ingénierie, la production industrielle et les opérations.
Le contrat prévoit la migration d'environ 70 applications d'ici 2028, puis jusqu'à 900 applications sur 5 à 6 ans.
Le montant du contrat n'a pas été communiqué.
Scaleway revendique zéro actionnaire, zéro employé et zéro filiale hors Union européenne pour garantir une protection contre les lois extraterritoriales.
Damien Lucas, PDG de Scaleway, évoque une immunité complète face aux évolutions politiques et législatives externes.
La plateforme doit aussi accélérer les usages d'intelligence artificielle d'Airbus, avec les modèles de Mistral AI déjà déployés chez Scaleway.
Catherine Jestin, responsable numérique d'Airbus, souligne que cette intégration accélère la démarche IA du groupe.
Ce choix ne remet pas en cause la stratégie multicloud d'Airbus, Scaleway venant compléter les fournisseurs existants pour les charges nécessitant le plus haut niveau de gouvernance et de résilience.
Debian adopte une résolution sur l'usage responsable de l'IA générative lwn.net/Articles/1091231
La discussion sur l'usage des LLM dans Debian s'est tenue du 23 juillet au 13 août 2026, suivie d'un vote du 15 au 28 août 2026.
1045 développeurs Debian étaient éligibles à voter, avec un quorum de 48,49 votes largement dépassé par les huit options en lice.
Les options allaient d'une interdiction stricte des contributions générées par LLM inscrite dans le contrat social à une acceptation encadrée des contributions IA.
L'option gagnante au classement Condorcet est Responsible Use of Generative AI, devant Allow AI-Assisted Contributions with conditions et A cautious approach to generative AI.
Le texte adopté n'interdit ni n'encourage l'usage d'outils d'IA générative dans le développement de Debian.
Il exige que toute contribution, quels que soient les outils utilisés pour la produire, respecte les mêmes standards de qualité, correction, maintenabilité et conformité légale.
Les contributeurs doivent comprendre, relire, tester et si besoin modifier la production assistée par IA avant de l'intégrer à Debian.
Les informations sensibles du projet ne doivent pas être transmises à des fournisseurs d'IA non fiables, et la divulgation de l'usage de l'IA est encouragée sans être obligatoire.
Contraste direct avec l'OpenJDK, qui a publié une politique interdisant le code généré par LLM (épisode 340), et avec l'auteur de jqwik qui a piégé sa librairie contre les agents.
Performance majeure : Portage natif en Go offrant des gains de vitesse de 8x à 12x et une consommation mémoire réduite.
Architecture optimisée : Utilisation du multithreading (mémoire partagée) et parallélisation native (analyse, vérification de types,émission).
Nouvelles options de contrôle : Introduction des flags –checkers, –builders (parallélisation) et –singleThreaded (mode mono-cœur).
Nouvel observateur de fichiers : Passage à une solution basée sur @parcel/watcher pour une meilleure réactivité et stabilité du mode –watch.
Compatibilité et transition :
Compatible avec les bases de code TypeScript 6.0.
Utilisation du package @typescript/typescript6 recommandée pour maintenir des outils dépendants de l'ancienne API.
Changements de configuration : Durcissement des défauts (ex: strict activé par défaut) et suppression de nombreuses options obsolètes (target: es5, baseUrl, etc.).
Amélioration de l'expérience éditeur : Serveur de langage (LSP) plus stable avec une réduction de 80 % des erreurs et 60 % des crashs.
Limitations actuelles : Support incomplet pour les frameworks utilisant des plugins de langage (Vue, Svelte, Astro, Angular) en attendant une API stable.
"Java, the documentary" est sur YouTube, retraçant l'histoire du langage youtube.com/watch?v=…
La vidéo n'était pas encore disponible à l'heure de l'enregistrement. Sortie officielle le 17 juillet.
Avec des interviews de James Gosling, Brian Goetz, Venkat Subramaniam, et bien d'autres.
L'intégration de Jakarta Persistence 4.0 apporte des nouveautés majeures comme EntityAgent (qui standardise la StatelessSession), les mappings de result set en SQL natif, et de nouvelles options de configuration de session et de requêtes (Session Creation Options, Query Options).
Le support de Jakarta Data 1.1 est ajouté pour les Hibernate Data Repositories, incluant l'intégration avec les requêtes statiques JPA4, les projections @Select, et les repositories asynchrones via Jakarta Concurrency ou Hibernate Reactive.
L'introduction du Graph-based Flushing remplace l'ancienne approche basée sur des heuristiques par un modèle de dépendances utilisant les contraintes relationnelles, afin d'améliorer la fiabilité des tris, la gestion des batchs et les performances globales (bien que l'ancienne méthode reste temporairement disponible).
L'API ProcedureCall a été améliorée pour faciliter le casting des résultats (asResultSetOutput) et permettre la déclaration paresseuse (lazy) du mapping des ResultSet.
Hibernate supporte désormais la sécurité au niveau de la ligne (Row-Level Security) de manière native pour les bases de données compatibles (PostgreSQL, Db2, SQL Server, CockroachDB) afin de gérer la visibilité en contexte multi-tenant.
Une nouvelle méthode getReference() permet dorénavant de récupérer la référence d'une entité directement à partir de son natural id.
Le mode Safe Mode Validator (hibernate.query.safe_mode_enabled=true) fait son apparition pour bloquer les opérations risquées comme sql(), function() ou column() dans les requêtes HQL et Criteria, ce qui est particulièrement utile pour les applications exposées aux LLMs.
La gestion des associations bidirectionnelles lors de la phase de flush peut maintenant être prise en charge automatiquement par Hibernate (hibernate.bidirectionality_management=true), synchronisant la référence côté inverse de l'association.
Le Subselect Fetching est considérablement amélioré, supportant dorénavant les associations "to-one" pour le bulk select fetching (au lieu de se limiter aux collections) et devenant une option de premier ordre via FetchMethod.BY_SUBQUERY.
Un des papas de Cucumber et Gherkin lance Var, une alternative pour le test et le BDD var.oselvar.com
Lancement de Vár : Nouvel outil de test créé pour pallier les défauts de Cucumber.
Limites de Cucumber : Syntaxe Gherkin trop rigide, intégration difficile avec les exécuteurs de tests et support éditeur limité.
Usage avec l'IA : Conçu spécifiquement pour vérifier que les agents IA respectent les intentions et spécifications de l'utilisateur.
Fonctionnement : Utilisation du Markdown plutôt que du Gherkin ; sert à la fois de guide et d'outil de vérification.
Développement assisté : Code et documentation générés en grande partie par Claude sous supervision humaine.
Appel aux retours : Projet ouvert aux tests et aux critiques de la communauté.
Hugo Lassiège retrace l'évolution de son workflow de création d'interfaces en tant que développeur backend, depuis ses débuts avec Bootstrap jusqu'à l'ère de l'intelligence artificielle.
L'article explique comment la structuration des éléments visuels a progressé grâce à l'Atomic Design, l'émergence des design systems et l'adoption des design tokens via un framework comme Tailwind.
L'auteur détaille son processus actuel qui s'appuie fortement sur Claude Design pour générer et itérer sur des maquettes à partir d'un brief, d'un screenshot ou d'un design system de référence.
Il aborde également le risque de slopification et de standardisation extrême apporté par ces outils, rappelant que si l'IA simplifie la technique, il reste crucial d'injecter de l'identité et de l'originalité pour éviter un web trop aseptisé.
Les skills permettent d'encoder une procédure de manière répétable et automatisable
Le loop engineering enlève l'humain de la boucle afin que l'agent atteigne un objectif donné de façon plus autonome
Pour écrire des Codelabs (sorte de tutoriel guidé pas à pas) Guillaume a transformé une séance de création de codelab avec son agent préféré (Antigravity) en skill réutilisable pour l'écriture de ses prochains codelabs
Il a également utilisé l'approche de "loop engineering" à la mode en ce moment pour que son agent IA compile, exécute, teste les instructions et le code de son codelab, pour qu'il soit complètement fonctionnel
Gain estimé : passer de 2 jours de travail à moins de 2 heures !
Anthropic a annoncé le rétablissement de l'accès à ses modèles Claude Fable 5 et Mythos 5, qui avaient été suspendus suite à des restrictions d'exportation imposées par le gouvernement américain le 12 juin 2026.
Cette suspension faisait suite à un rapport d'Amazon démontrant une méthode pour contourner les garde-fous de Fable 5, lui permettant d'identifier et d'exploiter une vulnérabilité logicielle (un jailbreak).
Pour y remédier, Anthropic a renforcé ses mécanismes de sécurité en déployant un nouveau classifieur capable de bloquer cette technique spécifique dans plus de 99 % des cas, acceptant en contrepartie une augmentation des faux positifs sur des requêtes bénignes.
Face à l'absence de consensus sur l'évaluation des jailbreaks, Anthropic s'associe à Amazon, Microsoft, Google et d'autres partenaires pour développer un standard industriel évaluant la sévérité de ces failles selon quatre critères : gain de capacité, étendue du gain, facilité d'arsenalisation et découvrabilité.
L'entreprise s'engage également à approfondir sa collaboration avec le gouvernement américain, notamment via des évaluations pré-déploiement, un partage rapide d'informations sur les failles, et des ressources dédiées à la recherche conjointe sur la sécurité de l'IA.
Bun, le runtime JavaScript et TypeScript écrit à l'origine en Zig, a été entièrement réécrit en Rust pour des raisons de stabilité et de gestion de la mémoire.
Cette migration massive d'un demi-million de lignes de code a été bouclée en seulement 11 jours grâce à l'utilisation intensive de Claude Code fonctionnant en parallèle, pour un coût d'API estimé à 165 000 dollars financé par Anthropic.
Andrew Kelley, le créateur de Zig, a réagi publiquement en qualifiant l'ancienne base de code de Bun de "slop" remplie de hacks et de fuites mémoire accumulées par une course aux fonctionnalités.
Kelley exprime son soulagement face à ce départ, expliquant que les plantages incessants de Bun devenaient un passif réputationnel toxique pour le langage Zig et sa fondation.
Le rachat de Bun par Anthropic fin 2025 avait déjà mis fin aux donations financières de Bun envers la Zig Software Foundation, facilitant cette séparation.
La nouvelle version Rust de Bun passe désormais la quasi-totalité des tests, réduit la taille du binaire et est déjà déployée de manière transparente en production dans Claude Code.
Lancement de Vidocq : Runtime Java open source complet, compatible Jakarta EE Core Profile et Souveraineté numérique : Projet européen hébergé sur Codeberg, sous licences EUPL 1.2, EPL 2 et GPL 2.0.
Standardisation totale : Implémentation fidèle des spécifications (CDI, REST, JSON, etc.), validée par 5 650 tests TCK officiels.
Sécurité radicale : Zéro dépendance externe et aucune bibliothèque tierce.
Aucune manipulation de bytecode à l'exécution (« magie » générée à la compilation via JDK 25).
Compatible JPMS, AOT, GraalVM et Leyden CDS.
Disponibilité : Projet en phase alpha, code et documentation accessibles sur vidocq.dev.
Article complémentaire qui revient sur la genèse de Vidocq, en utilisant l'IA et les TCKs pour driver l'aspect spec-driven development vidocq.dev/posts/the-story-of-vidocq
Concept de « Selfware » : création de logiciels conçus exclusivement pour soi-même, sans monétisation ni contraintes liées aux utilisateurs tiers.
Le rôle de l'IA : les agents de programmation (comme Antigravity) suppriment la barrière technique de l'apprentissage des langages (Swift, APIs) pour les non-développeurs.
Développement minimaliste : privilégier la performance et l'utilité directe (démarrage instantané, interface native) au détriment des fonctionnalités complexes (plugins, télémétrie, gestion de comptes).
Absence de pression : libération des contraintes liées à la compatibilité, à la maintenance logicielle et aux retours utilisateurs ; le logiciel n'a besoin d'être « assez bon » que pour ses propres besoins.
Incitation à l'autonomie : encourager la création d'outils sur mesure pour résoudre les frictions quotidiennes plutôt que de subir les limitations des logiciels commerciaux.
Retour d'expérience sur la migration d'un système COBOL vers des microservices cloud-native qui s'est soldée par un retour en arrière après avoir constaté que le traitement batch initial était plus rapide, moins cher et plus fiable
Là où le batch COBOL traitait 2.4 millions d'enregistrements en 11 minutes, le système distribué modernisé à base de message queues, retries et Kubernetes prenait 47 minutes et tombait sous la charge
COBOL brille par ses caractéristiques conçues spécifiquement pour la finance comme le calcul décimal précis sans floating point errors et l'absence totale d'overhead réseau, de conteneurs ou de cold starts
Rappel que distribuer un système multiplie les points de défaillance silencieux et complexifie la gestion de la cohérence transactionnelle par rapport à une exécution locale séquentielle
Une invitation à se demander si les projets de décomposition en microservices apportent réellement un gain de performance de bout en bout pour l'utilisateur final ou s'ils optimisent seulement le diagramme d'architecture
Florian beaufumé partage sa question d'entretien favorite pour évaluer des développeurs Spring de niveau intermédiaire à avancé : "Que pouvez-vous me dire sur le paramètre spring.jpa.open-in-view ?".
Ce paramètre détermine l'activation du pattern Open Session In View (OSIV) qui, lorsqu'il est à true (la valeur par défaut dans Spring Boot), maintient l'un EntityManager JPA ouvert durant toute la requête HTTP.
Si l'OSIV facilite le développement en évitant les fameuses LazyInitializationException lors de la sérialisation des entités en JSON, il pose d'importants problèmes de performance en provoquant des requêtes SQL non maîtrisées (comme le problème du N+1 select) en dehors de la couche service.
Maintenir l'OSIV actif augmente également le temps de rétention des connexions au sein du pool de la base de données, limitant la scalabilité de l'application.
La recommandation est de désactiver ce comportement en le positionnant à false, et de gérer explicitement le chargement des données requises au sein des transactions (via des DTOs, des requêtes JOIN FETCH ou des Entity Graphs) pour garder le contrôle sur les accès à la base de données.
L'IA a franchi un cap et est devenue l'auteur principal du code : le taux d'acceptation du code généré est passé de 20% à 60% dans les équipes étudiées par Faros AI.
La vélocité métier est bien réelle, avec une augmentation de 66% des epics livrées et une hausse de 33,7% du throughput des tâches par développeur.
Ce volume cache un code churn massif (+861%), ce qui signifie qu'une quantité énorme de code est supprimée ou remplacée peu après avoir été ajoutée.
La qualité en aval se dégrade fortement : les bugs par développeur ont augmenté de 54% et le nombre d'incidents par pull request a explosé de 242,7%.
Le processus de code review est complètement saturé, entraînant un temps médian de relecture multiplié par cinq et une augmentation de 31,3% des PRs mergées sans aucune revue.
Le système repose de plus en plus sur les développeurs seniors qui subissent une "senior engineer tax", devant relire un volume insoutenable de code à l'apparence correcte mais structurellement fragile.
Contrairement à certaines hypothèses récentes de DORA, une forte maturité DevOps ne protège pas les entreprises contre cette détérioration ; le "Acceleration Whiplash" frappe de la même manière les équipes très performantes.
En résumé, les outils d'IA inondent les pipelines de livraison avec un volume de code pensé pour un rythme machine, alors que les systèmes de vérification reposent toujours sur un rythme de validation humain.
Une équipe de 8 ingénieurs a vu sa vélocité de développement exploser en utilisant Claude Code de manière intensive, jusqu'à recevoir une facture d'API salée de 47 213 $ pour seulement trois mois d'utilisation.
Face à cette dépense, la question piège du CTO n'était pas sur le montant, mais sur la dépendance : "Si nous arrêtions Claude Code demain, combien de temps faudrait-il pour que notre vélocité revienne à son niveau initial ?".
L'auteur s'est rendu compte qu'il était incapable de répondre car son équipe, en particulier les profils juniors, avait commencé à perdre l'habitude de concevoir et d'implémenter des fonctionnalités complexes sans l'aide permanente d'un agent.
Le deuxième risque stratégique soulevé est celui de la dépendance tarifaire et du vendor lock-in : si l'outil devient une infrastructure indispensable au quotidien, l'entreprise perd tout pouvoir de négociation face aux augmentations de prix de l'éditeur d'IA.
Pour éviter que l'IA ne devienne une béquille qui atrophie les compétences de l'équipe, l'article suggère de poser des limites budgétaires strictes, d'organiser régulièrement des sprints sans IA ("AI-free sprints") et de concevoir des processus de développement portables.
Retour de Nicolas Delsaux sur jqwik qui donne une perspective plus complète
concernant jqwik, il me semble que vous oubliez (comme tous les gens qui
parlent de LLM dans "l'industrie") que l'auteur n'a pas fait ça juste
pour faire chier le monde, mais parce que ces outils ont des
externalités incroyablement négatives, ce dont l'auteur s'explique dans
La fondation Commonhaus, via une publication de Andres Almiray, annonce l'arrivée de quatre projets majeurs de l'écosystème Java et Kotlin : OkHttp, Okio, Retrofit et SQLDelight.
Ces projets, initialement créés chez Square (devenu Block), sont désormais regroupés et gérés sous la bannière lysine.dev au sein de la fondation.
Jesse Wilson et Jake Wharton, créateurs et mainteneurs historiques de ces outils, rejoignent Commonhaus en tant que leaders de lysine.dev.
Suite à leur départ de Block, ils expliquent avoir choisi Commonhaus pour offrir à leur immense communauté d'utilisateurs un cadre de gouvernance pérenne, stable et digne de confiance.
Les threads virtuels gagnent en robustesse en étant désormais capables de céder la main (yield) pendant les phases d'initialisation des classes, éliminant ainsi le risque de famine des threads porteurs (carrier threads).
Le compilateur C2 JIT améliore son modèle de coût pour la vectorisation des boucles (SIMD) et se montre maintenant capable de compiler et d'optimiser des méthodes dotées de listes de paramètres extrêmement longues.
Dernière étape avant la GA : Toutes les fonctionnalités prévues pour la version 1.0 sont finalisées. Migration simplifiée depuis la Beta1.
Compatibilité v0.3 : Ajout d'une couche de compatibilité permettant aux agents v1.0 de communiquer avec les systèmes v0.3 (via JSON-RPC, gRPC ou REST).
Support natif pour Android (nouvel AndroidHttpClient).
Uniformisation des clients HTTP pour garantir une cohérence entre les versions.
Nouveau parseur SSE (Server-Sent Events) conforme aux spécifications.
Lancement officiel : Sortie de A2A Java SDK 1.0.0.Final, la première version stable (GA) du protocole Agent2Agent.
Objectif du protocole : Standard ouvert (Linux Foundation) permettant aux agents IA de communiquer, déléguer des tâches et collaborer, indépendamment du langage ou du framework.
Interopérabilité : Introduction de l'Integration Test Kit (ITK) pour valider la compatibilité entre les SDK (Java, Python, TypeScript, etc.).
Transports supportés : Support complet et équivalent pour JSON-RPC, gRPC et HTTP+JSON/REST.
Alignement total avec la spécification A2A 1.0.0.
Passage aux Java records pour l'immutabilité et moins de code répétitif.
Architecture interne basée sur un MainEventBus pour garantir la persistance et éviter les conditions de concurrence.
Intégration d'OpenTelemetry pour le suivi et la surveillance.
Support d'Android et compatibilité descendante avec la version 0.3.
Installation : Gestion des dépendances via Maven BOM (org.a2aproject.sdk).
Lancement majeur : Disponibilité générale de Micronaut 5, incluant une refonte de plus de 70 modules et la plateforme BOM.
Baselines techniques : Support de Java 25, Groovy 5, Kotlin 2.3 et GraalVM 25.0.3.
Optimisations internes : Amélioration significative des performances au démarrage et réduction de la surcharge à l'exécution via une refonte du conteneur IoC et du traitement à la compilation.
Architecture HTTP : Support stable de HTTP/3, nouvelle API de formulaires (multipart) et annotations de nullabilité (JSpecify) pour une meilleure interopérabilité Kotlin/IDE.
Configuration : Nouveau système d'importation de configuration (remplaçant le Bootstrap Configuration) et validateur de schéma JSON intégré.
Fiabilité : Nouvelles API programmatiques pour les politiques de retry et circuit breaker.
Sécurité & Outils : Mise à jour majeure des dépendances (Jackson 3, Ktor 3), rafraîchissement du Panneau de contrôle et diagnostics AOT améliorés.
Écosystème : Mises à jour complètes pour les bases de données (Data, SQL, R2DBC, MongoDB, Redis), le cloud (AWS, Azure, GCP, OCI) et les tests (JUnit 6, Testcontainers 2.0).
Évolutions notables : Intégration HTMX dans Micronaut Views, retrait du support RxJava 2 et migration de divers processeurs d'annotations vers des modules dédiés.
Tutoriel sur comment intégrer un agent ADK dans une app
Dépendances : Ajout du noyau ADK (google-adk-kotlin-core) et du processeur KSP dans build.gradle.kts.
Sécurité API : Utilisation de local.properties pour stocker la clé API Gemini et l'exposer via BuildConfig afin d'éviter le hardcoding.
Définition de l'agent : Création d'un objet LlmAgent configuré avec le modèle Gemini, des instructions spécifiques et des outils (ex: GoogleSearchTool).
Utilisation de InMemoryRunner pour gérer automatiquement le contexte et l'historique de la session.
Implémentation de runAsync avec StreamingMode.SSE pour un retour en temps réel dans l'interface.
Threading : Exécution des requêtes réseau sur Dispatchers.IO et mise à jour de l'état de l'interface utilisateur sur Dispatchers.Main.
Guillaume a implémenté un SDK Java pour utiliser cette API Gemini Interactions, qui donne entre autre accès à tous les modèles mais aussi à cette plateforme managée d'agents IA
Agents managés : Permet d'exécuter des agents autonomes qui raisonnent, planifient et exécutent du code dans des environnements isolés (sandboxes), sans gestion d'infrastructure par le développeur.
Environnement distant : Utilise des espaces de travail Linux éphémères dans le cloud via le paramètre remote, permettant l'accès réseau et la persistance des fichiers sur plusieurs appels.
Agents prédéfinis : Accès immédiat à des agents spécialisés comme deep-research-pro (recherche multi-étapes) ou antigravity (tâches de codage généralistes).
Agents personnalisés : Possibilité de configurer ses propres agents avec des instructions système dédiées, des outils spécifiques (exécution de code, recherche Google) et des règles réseau (egress) personnalisées.
Architecture basée sur les étapes (Steps) : Utilise une structure de données typée (Step, Content) pour suivre le raisonnement de l'agent, ses appels de fonctions et ses résultats en temps réel.
Outils et Schémas : Inclut des utilitaires pour générer des schémas JSON complexes via une interface fluide (DSL), par réflexion Java ou par parsing JSON.
Streaming réactif : Support natif des événements en temps réel (SSE) pour suivre la progression de l'agent et recevoir les deltas de contenu au fur et à mesure de la génération.
Flexibilité : Fournit un gestionnaire de routage (InteractionsHandler) pour créer facilement des serveurs proxy ou des backends intermédiaires traitant les interactions Gemini.
Support natif pour Spring gRPC permettant de créer et tester facilement des applications clientes et serveurs basées sur Netty ou des Servlets via HTTP/2
Introduction du lazy fetching pour les connexions JDBC via la propriété spring.datasource.connection-fetch=lazy afin de ne prendre une connexion du pool que lorsqu'un Statement est réellement exécuté
Amélioration de l'auto-configuration de Jackson permettant de définir globalement les contraintes de lecture/écriture pour les formats JSON, XML et CBOR via des propriétés de configuration
Sécurisation des clients HTTP bloquants et réactifs face aux attaques SSRF grâce à l'introduction d'un InetAddressFilter bloquant les requêtes sortantes vers des adresses spécifiques
Améliorations majeures autour d'OpenTelemetry avec le support complet des variables d'environnement OTel, la possibilité de désactiver le SDK via une propriété globale et l'ajout du support SSL sur les exporters OTLP
Ajout de l'auto-configuration pour l'utilisation de Spring Batch avec MongoDB incluant un nouveau starter dédié spring-boot-batch-data-mongo
Auto-configuration des endpoints @RedisListener sans nécessiter la déclaration manuelle d'un RedisMessageListenerContainer
Dépréciation du support de Apache Derby (projet arrêté), suppression définitive du mode layertools du JAR et réintroduction du support de Spock 2.4 (avec Groovy 5)
Upgrade des dépendances majeures de l'écosystème avec notamment Spring Framework 7.0.8, Spring Security 7.1.0 et Micrometer 1.17.0
Annonce d'Endive : Nouveau projet hébergé par la Bytecode Alliance ; fork de Chicory (moteur WebAssembly pur Java, sans dépendance native).
Objectif principal : Permettre aux développeurs Java d'intégrer, charger et déployer des modules Wasm nativement via les workflows Java habituels.
Compilateur "Redline" : Intégration à venir de Redline (basé sur Cranelift) pour compiler le Wasm en code machine natif ; performances comparables à Rust/Wasmtime.
Zéro dépendance (Java 25+) : Grâce à l'API standard Foreign Function & Memory (Project Panama), l'exécution à vitesse native se fait sans composants externes.
Modèle de Composants (Component Model) : Support futur prévu pour consommer des composants (Rust, Go, JS, etc.) via des interfaces typées et sécurisées directement dans la JVM.
Prochaines étapes : Fusion de Redline, conformité stricte aux specs Wasm (dont WasmGC) et amélioration du support WASI.
Un projet open source construit avec Micronaut, LangChain4j et GraalVM pour analyser les sessions de travail avec l'outil de développement agentique Antigravity (de Google)
Analyse toutes les étapes, les requêtes utilisateur, les outils utilisés, les erreurs rencontrées, les réponses du modèle
Gemini fait une analyse pour comprendre les moments clés de cette session de travail
Philippe Charrière (:whale: ) présente SBX-Kits (Sandbox Kits), une initiative personnelle visant à simplifier radicalement la mise en place d'environnements de développement pour les débutants, en éliminant la complexité d'installation des outils traditionnels.
Chaque "kit" est une archive prête à l'emploi contenant un outil de développement spécifique (comme un langage, un framework ou une base de données) configuré pour s'exécuter de manière isolée et portable.
La philosophie du projet repose sur le principe de "zéro configuration" et "zéro dépendance globale", permettant de tester une technologie ou de commencer à coder immédiatement sans polluer son système d'exploitation.
L'approche technique s'appuie sur des scripts légers et des binaires portables pré-packagés, offrant une alternative plus simple et moins gourmande en ressources que les conteneurs Docker ou les configurations d'IDE complexes pour l'apprentissage.
L'objectif à terme est de proposer un catalogue de kits couvrant les technologies courantes (JavaScript, Python, petites bases de données) pour faciliter les ateliers de programmation et le prototypage rapide.
ghui est un outil en ligne de commande (TUI) écrit en Rust qui fournit une interface visuelle, interactive et rapide directement dans le terminal pour interagir avec GitHub.
Il permet de gérer ses pull requests, ses issues et ses notifications sans avoir à ouvrir son navigateur web ou à taper de longues commandes avec la CLI officielle de GitHub.
L'outil propose une navigation fluide au clavier, des raccourcis efficaces, et permet de réaliser des actions courantes comme valider une PR, ajouter des commentaires, attribuer des reviewers ou inspecter les logs des GitHub Actions.
Conçu pour être extrêmement réactif, ghui s'intègre naturellement dans le flux de travail des développeurs adeptes du terminal et du mode "sans souris".
Introduction du mécanisme de sécurité Tap Trust : comme les dépôts tiers (taps) peuvent exécuter du code Ruby arbitraire non sandboxé sur la machine, Homebrew demande désormais une confiance explicite de l'utilisateur avant d'évaluer ou d'exécuter leur code.
L'API JSON interne devient le choix par défaut, offrant un système plus léger et beaucoup plus rapide pour les développeurs.
Sécurisation renforcée de l'environnement avec l'implémentation du sandboxing sur Linux.
Évolution des comportements par défaut basés sur un sondage utilisateur : le mode "ask" est activé par défaut pour les développeurs, affichant un résumé des dépendances et une demande de confirmation avant toute action de brew install ou brew upgrade.
Améliorations notables des performances globales, notamment un boost de ~30 % sur la vitesse de la commande brew leaves et la parallélisation de la récupération des bottles (binaires) lors des mises à jour.
Ajout du support initial pour la prochaine version d'Apple, macOS 27 (Golden Gate).
Multiples optimisations pour brew bundle, incluant une gestion plus sécurisée des installations de paquets npm.
Expérimentation de 40 jours : remplacer une équipe de dev par 100% IA agentique (Cursor) sur un vrai projet en production (playthatsheet.com, 200k lignes de code legacy)
Chiffres bruts : 2,3 milliards de tokens consommés, 1 477 prompts, 260 564 lignes ajoutées (+145%), 59% du code final produit par l'IA
ROI vertigineux à court terme : 9 mois de travail humain livrés en 40 jours, coût total 260$ d'abonnement + 15 jours de supervision, ROI x18
Profil psy de l'IA : Alzheimer (oublis de contexte), schizophrène (change de méthodo), ado de 12 ans (refait les mêmes erreurs), oscille entre génie et junior sans prévenir
Effet iceberg : la dette technique ne disparaît pas, elle se camoufle et s'accélère ; hallucinations = bombes à retardement détectables uniquement par relecture humaine ligne par ligne
Paradoxe du bateau de Thésée : perte de paternité et de maîtrise fine du code, baisse de l'autonomie du dev humain qui valide sans avoir construit
Arnaque du "monkey money" : consommation de tokens opaque, non corrélée à la complexité (écart de 350% sur des prompts identiques), facturation imprévisible donc impossible à budgéter
Syndrome du bazooka : les devs utilisent l'IA même pour changer une couleur CSS, atrophie progressive des compétences et coût écologique délirant
Risque stratégique : dépendance irréversible aux vendeurs de tokens (Nvidia, Anthropic, OpenAI), business non rentable qui devra augmenter ses prix
Conseil final : approche Pareto, garder 20% du temps en code "fait main", nommer un responsable stratégie IA, l'humain senior reste irremplaçable pour superviser
Agacé par les « vibe coders », un développeur introduit une injection de prompt destructrice dans son code
Le développeur de jqwik (un moteur de tests pour JUnit 5) a volontairement inséré une injection de prompt dans la version 1.10.0 de sa bibliothèque Java pour saboter le travail des agents d'IA.
L'instruction injectée via la sortie standard (stdout) ordonne textuellement aux LLM d'ignorer les consignes précédentes et de supprimer l'intégralité du code et des tests jqwik du projet.
Pour dissimuler cette action aux yeux des développeurs humains, le mainteneur a utilisé des séquences d'échappement ANSI qui effacent la ligne d'injection dans les émulateurs de terminaux interactifs.
La modification a été découverte par un utilisateur qui a pointé du doigt les risques majeurs et disproportionnés pour les machines des utilisateurs, bien que certains outils comme Claude d'Anthropic aient détecté et bloqué la consigne malveillante.
Face aux critiques de la communauté et aux accusations de comportement infantile ou potentiellement illégal, le développeur a mis à jour ses notes de version pour documenter explicitement son opposition à l'usage de son outil par des IA, avant de refuser tout commentaire supplémentaire sur conseil de son avocat.
Le passage au rôle de Principal Engineer marque une transition majeure où les compétences techniques ne suffisent plus, l'impact se mesurant désormais à travers l'influence, la stratégie et la capacité à aligner la technique avec les objectifs business.
Contrairement aux attentes, le quotidien est souvent marqué par une forme d'isolement, car le poste se situe à l'intersection de la direction (qui attend des solutions) et des équipes techniques (qui attendent des directives), sans appartenance directe à un groupe précis.
Le rôle exige d'accepter une grande part d'ambiguïté et l'absence de retours immédiats, les projets et les décisions stratégiques mettant parfois des mois ou des années à porter leurs fruits.
La gestion du temps devient un défi critique, nécessitant de savoir naviguer entre les sollicitations constantes, la présence en réunion et le besoin de préserver des moments de réflexion approfondie pour concevoir des visions à long terme.
La réussite à ce niveau repose sur le développement de compétences humaines pointues (soft skills), notamment la négociation, la communication vulgarisée auprès des profils non techniques, et la capacité à faire grandir les autres ingénieurs par le mentorat.
Une nouvelle variante du ver auto-propageable "Shai-Hulud", baptisée "Miasma", cible l'écosystème npm (et PyPI sous le nom de "Hades") en dissimulant son exécution dans le fichier binding.gyp au lieu des scripts classiques preinstall ou postinstall.
La technique, surnommée "Phantom Gyp", exploite le fait que npm lance automatiquement node-gyp rebuild dès qu'un fichier binding.gyp est présent à la racine d'un paquet pour compiler des modules natifs C/C++, exécutant ainsi le code malveillant dès la commande npm install.
L'attaque contourne la plupart des outils de sécurité traditionnels car l'injection s'appuie sur l'évaluation récursive de commandes (via la syntaxe ) ou directement sur la fonction eval() de Python sous-jacente à GYP, cachée sous n'importe quelle clé du fichier.
Le script malveillant télécharge un runtime alternatif (Bun) pour échapper aux détections comportementales de Node.js, puis moissonne les identifiants et secrets des développeurs et des environnements CI/CD (npm, GitHub, AWS, GCP, Azure, Kubernetes, HashiCorp Vault).
Plus de 57 paquets npm (dont le SDK serveur de Vapi ou des outils liés à l'IA) et des dizaines de paquets PyPI ont été infectés via des comptes de mainteneurs compromis, le ver republiant automatiquement de nouvelles versions vérolées en utilisant les jetons volés.
GitLab entame une restructuration majeure pour s'adapter à l'ère de l'intelligence artificielle agentique, incluant une réduction d'effectifs planifiée de manière transparente et ouverte.
L'entreprise prévoit de réduire de 30 % le nombre de pays où elle maintient de petites équipes, d'aplatir sa hiérarchie en supprimant jusqu'à trois niveaux de gestion, et de réorganiser la R&D en une soixantaine d'équipes plus petites et autonomes.
Les processus internes vont être revus en intégrant des agents d'IA pour automatiser les revues, les approbations et les passages de relais afin d'accélérer le rythme de travail.
La stratégie repose sur la conviction que le logiciel sera bientôt écrit par des machines et dirigé par des humains, ce qui va multiplier la demande de logiciels et transformer le rôle des ingénieurs vers la résolution de problèmes complexes.
Sur le plan technique, GitLab reconstruit son infrastructure sous-jacente (notamment Git) pour supporter la charge massive générée par les agents d'IA, tout en misant sur l'orchestration du cycle de vie, la centralisation du contexte des données et une gouvernance intégrée.
Le modèle économique évolue vers un système hybride combinant les abonnements classiques et une tarification à la consommation pour le travail effectué par les agents d'IA.
Conclusion : L'inférence locale sur Mac M5 Max est 3x plus chère et 2x plus lente que le cloud (OpenRouter).
Électricité : Négligeable (~0,02 $/heure pour 50-100W).
Matériel (Le vrai coût) : Achat du Mac à 4 299 $; l'amortissement sur 3 à 5 ans plombe la rentabilité horaire.
Coût au million de tokens (Gemma 4 31b) :
Mac M5 Max : 0,40 à4, 79 (pour 10-40 tokens/s).
OpenRouter : 0,38 à0, 50 (pour 60-70 tokens/s).
Verdict pro : Le temps humain perdu à cause de la lenteur locale coûte infiniment plus cher que les tokens cloud. Privilégier les API (Anthropic, OpenRouter).
Des données et rapports internes chez Microsoft et d'autres géants de la tech ébranlent la promesse de rentabilité de l'IA, révélant que le déploiement d'agents autonomes à l'échelle de l'entreprise revient souvent plus cher que de payer des humains pour le même travail.
Le modèle de tarification à l'usage (basé sur les tokens) se heurte à la nature même des architectures agentiques : contrairement à un simple chatbot, un agent boucle, enchaîne les appels d'outils, crée des sous-agents et auto-évalue son code, ce qui multiplie la consommation de tokens par un facteur de 5 à 30, voire jusqu'à 1 000 fois pour des tâches de programmation complexes.
L'impact financier sur les budgets de calcul cloud est immédiat ; par exemple, Uber a entièrement épuisé l'intégralité de son budget annuel 2026 dédié au codage par IA en l'espace de seulement quatre mois.
Face à cette explosion des coûts, des retours en arrière drastiques sont observés : Microsoft a ainsi commencé à suspendre une grande partie de ses licences internes Claude Code pour rediriger d'urgence ses milliers de développeurs vers sa propre solution moins onéreuse, GitHub Copilot CLI.
Les directeurs techniques (CTO) et acheteurs de solutions logicielles qui ont signé des contrats pluriannuels basés sur des projections de réduction de masse salariale se retrouvent pris au piège, les gains réels de productivité ne parvenant pas à compenser les factures d'infrastructure exorbitantes.
Le périmètre est large : code source, texte, images dans les dépôts Git, pull requests GitHub, emails, pages wiki et issues JBS
Les contributeurs peuvent utiliser les outils d'IA de manière privée pour comprendre, déboguer et relire le code OpenJDK, mais ne peuvent pas contribuer le contenu généré
Trois risques justifient cette politique : surcharge des relecteurs face au code plausible mais incorrect, risques de sûreté/sécurité pour une plateforme critique, et risques de propriété intellectuelle (l'OCA exige que les contributeurs possèdent les droits IP de leurs contributions)
Même éditer partiellement du code AI-généré ne le rend pas acceptable à la contribution
Oracle, sponsor corporatif d'OpenJDK, travaille sur une politique complète à soumettre au Governing Board
Un bon article de rappel du contexte de closed world en Java
GraalVM Native Image compile les applications Java en exécutables natifs statiques, sans JVM au runtime.
La JVM fonctionne en monde ouvert : les classes sont chargées à la demande, les appels sont des références symboliques résolues dynamiquement.
Native Image impose la "closed-world assumption" : tous les chemins d'exécution doivent être connus à la compilation.
Les fonctionnalités dynamiques Java (réflexion, proxies, chargement de classes) créent des chemins cachés invisibles à l'analyse statique.
C'est pourquoi Native Image exige des fichiers de configuration explicites pour la réflexion, les proxies, les ressources et la FFM API.
L'article illustre le problème avec la Foreign Function & Memory API pour appeler printf natif : fonctionne sur JVM, échoue en Native Image sans config.
Inclure tout le bytecode accessible serait inutilisable : binaire géant, compilation très lente, et la réflexion nécessite des métadonnées précises.
La configuration n'est pas un défaut de conception mais une conséquence logique du passage du dynamique au statique.
Les LLM génèrent souvent du JSON, mais il est parfois entouré de bla-bla et/ou contient des erreurs (ex: commentaires, virgules finales) qui bloquent les parseurs JSON standards.
Guillaume a créé une petite librairie légère sans dépendance pour localiser et extraire la structure la plus longue ressemblant à du JSON (même malformé)
On peut ensuite passé cette chaîne à un parseur "lénient" (plus tolérant) comme Jackson pour ensuite avoir de bons vieux objets Java fortement typés
Architecture de plugins centralisée : Nouveau conteneur App pour gérer les Plugins à l'échelle de l'application (ex: LoggingPlugin, GlobalInstructionPlugin).
Context engineering amélioré : Compaction d'événements pour gérer la taille des fenêtres de contexte (résumé et rétention).
Human-in-the-Loop (HITL) : Supporte les workflows ToolConfirmation pour approbation humaine des actions d'agent.
Services de session et de mémoire : Contrats clairs pour la gestion de l'état (InMemory, VertexAI, Firestore) et la mémoire à long terme.
Support Agent2Agent (A2A) : Collaboration native entre agents distants de différents frameworks via le protocole A2A.
Spring Framework 6.2.18 et 7.0.7 corrigent trois failles de sécurité : DoS via fichiers multipart WebFlux, empoisonnement de cache de ressources statiques, et DoS sur Windows.
Le support open source de Spring Framework 5.3.x et 6.1.x est terminé, la migration est recommandée.
Spring Data 2026.0.0-RC1 introduit l'upsert (MERGE/INSERT ON CONFLICT) dans l'API Template de Spring Data Relational.
Spring Data ajoute un RedisMessageSendingTemplate pour la cohérence avec les listeners Redis, et une optimisation de réinitialisation de caches en un seul appel.
Spring AI introduit une Session API (série Agentic Patterns, partie 7) : architecture event-sourcée pour la mémoire des agents IA.
La Session API supporte la compaction turn-safe, l'isolation de sous-agents en parallèle, et la persistence JDBC (PostgreSQL, MySQL, MariaDB, H2).
Elle vise Spring AI 2.1 (novembre 2026) et remplacera à terme l'API ChatMemory.
Spring Vault 4.1.0-RC1 et 4.0.2 sont disponibles.
Netflix a présenté son usage de Java, Spring Boot et Spring AI dans une vidéo.
Cette série hebdomadaire de Josh Long compile les nouveautés de l'écosystème Spring : articles, outils, podcasts et annonces de la communauté.
Spring Boot 4 introduit un package natif de résilience org.springframework.resilience avec une nouvelle API de retry qui remplace les approches fragiles via Spring Retry ou Resilience4j.
L'API retry native de Spring Boot 4 a des noms d'attributs et sémantiques différents des anciennes bibliothèques, rendant les tutoriels pré-2025 obsolètes et sources de bugs silencieux.
Le SDK Spring AI pour Amazon Bedrock AgentCore est disponible en GA : il intègre les capacités AgentCore dans Spring AI via annotations et auto-configuration.
Le SDK AgentCore gère automatiquement le contrat runtime AgentCore : endpoint /invocations, health check /ping, SSE avec backpressure.
Il offre mémoire court terme (sliding window) et long terme (sémantique, préférences, résumé, épisodique), ainsi que des outils pour navigateur et exécution de code en sandbox.
Un plugin Maven (Nullability Maven Plugin) simplifie l'intégration de JSpecify et NullAway pour enforcer la null-safety à la compilation dans les projets Java.
Le plugin génère automatiquement les fichiers package-info.java par package et configure le compilateur pour traiter les violations de nullabilité comme des erreurs.
Josh Long et Dr. Venkat Subramaniam ont co-présenté à Voxxed Days Amsterdam sur "Intelligent Kotlin", avec un épisode de podcast associé.
Debezium est un outil de Change Data Capture (CDC) open source qui capture les modifications de bases de données en temps réel pour les diffuser vers des systèmes comme Kafka.
98,6% des répondants utilisent Debezium activement ou prévoient de le faire dans l'année, avec 91,3% déjà en production.
63,8% des déploiements tournent sur Kubernetes, 60,9% utilisent Kafka Connect auto-géré, et 17,4% restent sur des VMs ou bare metal.
Helm charts est l'approche dominante pour la gestion de configuration, souvent combiné avec GitOps, CI/CD, Ansible ou Terraform.
PostgreSQL domine les connecteurs utilisés à 69,6%, suivi de MySQL (33,3%), SQL Server (29%) et Oracle (27,5%).
Les volumes de changements capturés vont de 1-25 modifications par minute jusqu'à 1-2 millions par minute selon les environnements.
OGX (anciennement Llama Stack) est un serveur API agentique open source pour construire des applications d'IA complètes.
OGX compose des fournisseurs d'inférence, des stores vectoriels, des backends de sécurité, des runtimes d'outils et du stockage de fichiers en un seul serveur déployable.
OGX se positionne comme une alternative à l'API OpenAI, déployable sur diverses infrastructures et modèles.
OGX cible les workflows RAG (Retrieval-Augmented Generation) et les applications agentiques.
Infinispan s'y intègre comme fournisseur de vector IO, apportant recherche vectorielle, par mots-clés et hybride.
Je n'ai pas entendu parlé de ce renommage, vous le voyez dans vos deploiements ?
cmux un nouveau terminal basé sur Ghostty spécialisé pour les coding agents https://cmux.com/
Application macOS native construite sur le moteur de rendu Ghostty (libghostty), offrant une accélération GPU pour une fluidité maximale
Conçu spécifiquement pour le multitâche et les workflows assistés par IA, avec des onglets verticaux affichant la branche Git, le répertoire et les ports actifs
Intègre des notifications qui illuminent les panneaux lorsqu'un agent IA (Claude Code, Codex, etc.) nécessite l'attention de l'utilisateur
Propose un navigateur web intégré et scriptable qui peut être affiché en écran scindé à côté du terminal via une API
Alternative moderne à tmux, ne nécessitant pas de fichiers de configuration complexes ou de préfixes de touches pour la gestion des vitres et des sessions
Supporte nativement tous les agents de codage en ligne de commande et permet l'automatisation via une API socket et une interface CLI dédiée
Des leaders techniques prédisent la fin rapide de l'IDE traditionnel, remplacé par des interfaces conversationnelles agentiques
Le changement de paradigme : le développeur n'écrit plus des lignes de code mais exprime son intention et supervise des agents autonomes
Des outils comme Claude Code, Copilot et Cursor transforment déjà radicalement les workflows de développement quotidiens
L'IDE centré sur l'éditeur de code perd sa raison d'être quand l'agent lit, modifie et structure le code de manière autonome
La transition est comparable au passage du desktop au mobile : les pratiques établies depuis 30 ans remises en question en quelques mois
Le source de Claude Code a leaké via probablement le codemap et un site decrit sont fonctionnement https://ccunpacked.dev/
Le 31 mars 2026, Anthropic a accidentellement inclus les sourcemaps dans un package npm de Claude Code, exposant ~512 000 lignes de TypeScript
La fuite n'était pas un piratage mais une erreur humaine : un "*.map" oublié dans .npmignore
Le site ccunpacked.dev a été lancé pour analyser et visualiser le code source décompressé
Le code révèle un agent background permanent nommé "KAIROS", un mode furtif pour cacher les contributions des employés Anthropic à l'open source, et 44 feature flags cachés
Une fonctionnalité inédite "Buddy" (animal de compagnie électronique dans le terminal) et un mode "dream" pour l'idéation continue ont été découverts
Anthropic a confirmé : "Aucune donnée client sensible n'était impliquée. Erreur humaine dans le packaging de la release."
Nuno Coração (n9o.xyz) détaille comment Gordon, l'assistant spécialisé Docker, a été construit sur docker-agent, le runtime d'agents IA open source de Docker écrit en Go
Les agents sont définis en YAML déclaratif et distribués comme des artefacts OCI, sans mise à jour binaire nécessaire
L'architecture initiale en essaim de 9 agents spécialisés a été abandonnée au profit d'un agent racine unique avec un prompt soigneusement conçu
Le modèle utilisé est Claude Haiku 4.5, suffisant après optimisation des prompts
Principe clé "show, then do" : toute action de l'agent nécessite une approbation explicite de l'utilisateur
La description des outils impacte fortement la précision du LLM : ajouter des outils peut paradoxalement dégrader les performances existantes
Le prompt est une spécification détaillée (identité, patterns d'accès fichiers, règles de sécurité) plutôt qu'une simple instruction
Mario Zechner estime que les agents IA font les mêmes erreurs répétitivement sans apprendre, accumulant la complexité à grande vitesse faute de bottlenecks humains
Sans vision globale, les agents créent du cargo-cult : les "best practices" de l'industrie appliquées localement sans cohérence architecturale
La croissance de la base de code dégrade la capacité des agents à retrouver le code existant → duplication et incohérences croissantes
Il cite des pannes AWS et des initiatives qualité Microsoft comme signes préoccupants liés au code généré par IA
Solution : réserver les agents aux tâches délimitées et évaluables, garder l'architecture, les APIs et les systèmes critiques écrits à la main
Maintenir une revue de code rigoureuse et traiter les humains comme les gardiens finaux de la qualité
Anthropic donne 1,5 million de dollars à l'ASF pour soutenir l'infrastructure, la sécurité et la communauté open source
Vitaly Gudanets (CISO d'Anthropic) : "Soutenir l'ASF est un investissement direct dans la résilience et l'intégrité des systèmes dont dépend l'IA moderne"
Les fonds financeront les systèmes de build, les processus de sécurité et les services aux projets Apache
Ce don est le déclencheur de l'initiative IA responsable à 10 millions de dollars de l'ASF
L'infrastructure Apache est invisible mais critique : des systèmes financiers aux plateformes de santé, elle sous-tend l'écosystème logiciel mondial
Hugo Lassiège (eventuallycoding) estime que les entreprises utilisent l'IA comme narratif commode pour masquer des erreurs de gestion passées (Block a triplé ses effectifs post-COVID sans croissance des revenus correspondante)
Moins de 1% des licenciements technologiques seraient réellement dus à des gains de productivité IA selon les analyses citées
Mesurer la productivité des développeurs reste un problème non résolu, mais les entreprises affirment des gains d'efficacité sans preuves
Des pressions économiques réelles (inflation, guerres commerciales, coûts énergétiques) sont masquées derrière le discours IA
Les restructurations nécessaires sont présentées comme des transformations AI-driven positives pour rassurer les investisseurs
Il y voit une fenêtre d'opportunité pour l'Europe pendant que les géants américains se restructurent
À partir du 24 avril 2026, GitHub utilise par défaut les interactions des utilisateurs Copilot Free, Pro et Pro+ pour entraîner ses modèles
Les données collectées incluent le code accepté ou modifié, les snippets envoyés, les noms de fichiers et structures de dépôts, et les retours utilisateurs
Les utilisateurs Copilot Business, Enterprise et les dépôts d'entreprise sont exclus de cette collecte de données d'entraînement
Opt-out disponible dans les paramètres GitHub > "Privacy" ; les préférences de désactivation préalables sont conservées automatiquement
Objectif déclaré : améliorer la précision des modèles sur les langages et cas d'usage du monde réel
Explosion de Claude Code : En six mois, Claude Code est passé de 0,7 % à 4,5 % de tous les commits publics sur GitHub, surpassant tous les autres outils d'IA combinés.
Adoption massive des agents IA : Environ 5 % des commits publics sur GitHub sont désormais générés par des agents IA, un chiffre en croissance rapide depuis fin 2025.
Domination des bots sur GitHub : Au-delà des commits, les outils d'IA sont omniprésents dans la gestion des pull requests et des problèmes (Copilot et CodeRabbit notamment).
Limites méthodologiques :
Les données ne concernent que les dépôts publics (les entreprises utilisent massivement des dépôts privés, invisibles ici).
Le comptage dépend fortement de la visibilité des signatures (certains outils comme Claude marquent systématiquement leurs commits, d'autres non)
L'API de recherche GitHub présente une fiabilité variable à cette échelle.
Changement de paradigme : Le développement logiciel vit une transition majeure, comparable au passage du desktop au mobile. L'intégration des agents IA dans le cycle de production n'est plus une expérimentation, mais une réalité opérationnelle à grande échelle.
Dysmaths une application pour aider à apprendre les mathématiques et la géométrie lorsque l'on souffre de dyspraxie, dysgraphie https://dysmaths.com/
Application web pour aider les élèves de collège et lycée souffrant de dysgraphie et dyspraxie à faire des maths et de la géométrie
Outils de dessin à main levée, géométrie précise (compas, rapporteur, règle) et opérations structurées (fractions, racines, puissances, symboles mathématiques)
Export PDF et PNG avec conservation fidèle de l'échelle pour l'impression et la soumission des exercices
Options d'accessibilité : police OpenDyslexic, personnalisations d'interface, import d'images et de PDFs
Répond à un besoin réel : les outils standards ne sont pas adaptés aux difficultés de coordination et d'organisation spatiale en mathématiques
Node.js et Python peuvent être optimisés pour améliorer leurs performances en production.
Et encore, en Java, le benchmark n'a pas utilisé GraalVM pour une compilation native, ce qui aurait donné des chiffres côté mémoire qui aurait concurrencé Go
MCP (Model Context Protocol) est le protocole d'Anthropic pour connecter les LLMs à des outils et sources de données externes ; ce benchmark compare 15 implémentations serveur.
39,9 millions de requêtes traitées avec zéro erreur, sur des charges I/O réalistes (Redis + HTTP API) plutôt que des tâches CPU synthétiques.
Rust atteint 4 845 RPS avec seulement 10,9 Mo de RAM ; Quarkus obtient 4 739 RPS avec la meilleure latence (4,04 ms en moyenne, 8,13 ms au P95).
Go (3 616 RPS) et Spring MVC (3 540 RPS) constituent un second groupe solide.
Node.js plafonne à 423 RPS ; Bun est 2,2x plus rapide sur un code identique (876 RPS) ; Python atteint 259 RPS avec 4 workers et uvloop.
Découverte notable : un bug dans le SDK Rust rmcp v0.16 ajoutait ~40 ms de latence à toutes les réponses HTTP, limitant le débit à 1 283 RPS ; corrigé en v0.17 via la PR #683.
Les images natives GraalVM réduisent la mémoire de 27 à 81 % mais dégradent le débit de 20 à 36 % ; Quarkus-native est l'exception avec 36 Mo RAM et 3 449 RPS.
Spring MVC (bloquant) surpasse WebFlux (réactif) à 50 utilisateurs simultanés, rappelant que le modèle réactif n'est pas toujours gagnant.
Recommandations : Rust ou Quarkus pour la production haute charge, Go pour le cloud-native, Bun plutôt que Node.js en JavaScript.
Jakarta EE est la plateforme Java entreprise open-source, socle de frameworks comme Quarkus et Spring, qui standardise les APIs pour la persistance, les transactions, la sécurité, etc.
Jakarta EE 12 adopte Java 21 comme baseline (avec support Java 25) et supprime définitivement le SecurityManager déprécié.
La nouvelle spec Jakarta Query unifie JPQL (SQL/relationnel) et JDQL (NoSQL) en un seul langage avec deux profils : Core Language (portable) et Persistence Language (relationnel).
Jakarta Data 1.1 introduit les requêtes dynamiques via une API fluente avec Restriction et l'annotation @Is pour des conditions plus expressives.
Jakarta Data supporte désormais les repositories stateful, permettant la gestion du cycle de vie des entités (persist, merge, detach, refresh) comme en JPA classique.
Jakarta NoSQL 1.1 intègre Jakarta Query via une nouvelle interface Query et supporte les projections avec des Java records.
Jakarta Persistence 4.0 supporte SequencedCollection (Java 21) comme type de collection dans les entités.
Une nouvelle spec Jakarta Agentic AI est en cours, visant des APIs vendor-neutral pour construire des agents IA sur les runtimes Jakarta EE, avec intégration prévue de LangChain4j et Spring AI.
Cette release est encore un milestone (pas pour la prod) — l'adoption large dépendra de la maturité des outils (IDE, validation de requêtes, diagnostics).
Quarkus est un framework Java optimisé pour les conteneurs, connu pour son faible usage mémoire et son démarrage rapide, concurrent principal de Spring Boot.
Les anciens graphiques de performance sur quarkus.io étaient obsolètes, sans date, sans source, et ne montraient pas le débit (throughput).
L'absence de données sur le throughput faisait croire à tort que Quarkus avait de mauvaises performances à ce niveau.
Un nouveau benchmark open source a été créé, transparent et reproductible, disponible sur GitHub.
Résultats : Quarkus gère 2,7x plus de transactions par seconde que Spring Boot, démarre 2,3x plus vite, avec deux fois moins de mémoire.
Des experts Spring Boot externes ont contribué à rendre la comparaison plus équitable, notamment sur la configuration des pools de connexions.
Les threads virtuels améliorent le débit d'environ 6000 tps supplémentaires pour tous les frameworks testés.
Spring Boot 4 offre un meilleur débit que Spring Boot 3, mais au prix d'un démarrage plus lent et d'une empreinte mémoire plus élevée.
En mode natif (GraalVM), le démarrage est ultra-rapide mais le throughput est divisé par deux, pour Quarkus comme pour Spring Boot.
Le mode natif n'est recommandé que pour les applis démarrées/arrêtées très fréquemment ou à faible charge.
Node.js est le runtime JavaScript côté serveur le plus utilisé, géré par la OpenJS Foundation avec un cycle de releases actif depuis la fusion avec io.js il y a dix ans.
À partir de Node.js 27 (octobre 2026), le projet passe d'une release majeure tous les six mois à une seule par an.
Chaque release deviendra LTS, supprimant la distinction entre versions paires (LTS) et impaires (non-LTS).
Un nouveau canal Alpha est introduit, permettant les changements semver-major pendant la phase de test précoce.
Les phases deviennent : Alpha (6 mois, oct. à mars), Current (6 mois, avr. à oct.), LTS (30 mois), puis EOL.
La durée totale de support reste de 36 mois, identique au modèle actuel.
La numérotation des versions s'aligne sur l'année calendaire de la release Current (ex : 27.0.0 en 2027).
La version Alpha est signée, taguée et testée via CITGM, mais n'est pas destinée à la production.
La motivation principale : les versions impaires étaient peu adoptées, la distinction pair/impair perturbait les débutants, et réduire les lignes de release parallèles allège la charge des bénévoles.
Les auteurs de bibliothèques sont encouragés à intégrer les releases Alpha dans leur CI dès que possible pour détecter les régressions en amont.
jQuery est une bibliothèque JavaScript historique qui simplifie la manipulation du DOM, la gestion des événements et les requêtes AJAX, encore très présente dans de nombreuses bases de code.
Cette version majeure sort pour les 20 ans de la bibliothèque, après presque une décennie sans version majeure.
Suppression du support d'Internet Explorer 10 et antérieur, Edge Legacy et les anciennes versions iOS/Android.
IE11 reste encore supporté dans jQuery 4, mais sa suppression est prévue pour jQuery 5.
Le code source migre d'AMD vers les ES modules, pour une meilleure compatibilité avec les outils de build modernes.
Le bundler passe de RequireJS à Rollup.
Suppression des fonctions dépréciées comme jQuery.isArray, jQuery.parseJSON et jQuery.trim, désormais disponibles nativement en JavaScript.
Le fichier gzippé gagne plus de 3 000 octets ; le build slim descend à environ 19,5 ko.
Ajout du support des Trusted Types pour faciliter la compatibilité avec les Content Security Policy strictes.
jQuery reste pertinent pour la maintenance de bases de code existantes et les projets nécessitant une faible dépendance aux frameworks.
Un article qui resume comment la reactivite est implementee en front web
La réactivité en frontend désigne le mécanisme qui permet de mettre à jour automatiquement l'UI quand les données changent, sans manipulation directe du DOM.
Sans réactivité, les développeurs doivent mettre à jour manuellement chaque élément de l'interface, ce qui est fastidieux et source d'erreurs.
Le data binding unidirectionnel (React) distingue le flux de données des callbacks d'interaction utilisateur.
Le data binding bidirectionnel (Angular) synchronise automatiquement données et UI dans les deux sens.
Le Virtual DOM (React, Vue) compare une représentation en mémoire avec le DOM réel avant d'appliquer uniquement les changements nécessaires.
Les observables via RxJS (Angular) permettent de gérer des flux de données asynchrones et des événements complexes.
Les signaux (SolidJS, Angular récent, Svelte) offrent des mises à jour granulaires et de meilleures performances que les approches précédentes.
Les signaux proposent une API plus simple que les observables tout en restant très performants.
La réactivité abstrait la manipulation du DOM et permet aux développeurs de se concentrer sur l'état de l'application.
Apicurio Registry est un registre open-source de schemas (OpenAPI, AsyncAPI, Avro, Protobuf…) gérant versioning, validation et gouvernance des APIs.
Le projet étend ses capacités pour devenir une plateforme native AI, en appliquant les mêmes principes de gouvernance aux agents IA.
Support du protocole A2A (Agent-to-Agent) : les agents s'enregistrent via des "Agent Cards" et se découvrent mutuellement via des endpoints standardisés.
Un serveur MCP intégré permet aux LLMs d'interagir directement avec le registre (découverte de schémas, validation, création).
L'intégration avec Claude Desktop est déjà documentée, permettant de gérer les artefacts en langage naturel.
Deux nouveaux types d'artefacts : PROMPT_TEMPLATE (templates de prompts versionnés avec variables) et MODEL_SCHEMA (validation des entrées/sorties des agents).
Les SDKs Java (LangChain4j, Quarkus) et Python (LangChain, LlamaIndex) sont disponibles.
Une démo multi-agents illustre le "context chaining" : chaque agent reçoit les sorties des agents précédents dans la pipeline.
La roadmap prévoit : gestion du cycle de vie des agents, recherche sémantique, intégration dans les pipelines de déploiement.
un article qui retrace les avancées clées du machine learning
Le deep learning est un sous-domaine du ML basé sur des réseaux de neurones empilés en couches, aujourd'hui omniprésent dans la vision, le langage et la recommandation.
Le Perceptron (1957) est le premier modèle formel d'apprentissage supervisé, mais il échoue sur des problèmes non linéaires comme le XOR : une limite structurelle, pas algorithmique.
La rétropropagation du gradient (années 80) permet d'entraîner des réseaux multi-couches, mais souffre du problème de "vanishing gradient" qui bloque l'apprentissage en profondeur.
L'essor du deep learning dans les années 2000 est autant une révolution matérielle qu'algorithmique : les GPU, conçus pour le jeu vidéo, se révèlent parfaitement adaptés aux calculs matriciels.
AlexNet (2012) marque une rupture industrielle en démontrant qu'un CNN profond entraîné sur GPU surpasse largement les méthodes classiques en reconnaissance d'images.
Les LSTM (1997) résolvent les problèmes de mémoire à long terme des RNN, mais leur nature séquentielle limite fortement la parallélisation.
Les Transformers ("Attention Is All You Need", 2017) révolutionnent le domaine en remplaçant la récursion par un mécanisme d'attention parallélisable, adaptable aux GPU et TPU.
L'IA générative introduit une rupture conceptuelle : les modèles apprennent la distribution des données pour en produire de nouveaux exemples, et non plus simplement classifier.
Les LLM offrent un socle généraliste réutilisable pour de nombreuses tâches, là où l'IA prédictive nécessitait un modèle spécifique par problème.
La question de l'AGI reste ouverte et très incertaine, mais l'IA devient déjà un "acteur logiciel" capable de raisonner et d'agir de manière autonome via les agents.
Définition et structure : Les skills sont des dossiers contenant des instructions (fichier SKILL.md obligatoire) et des scripts qui enseignent aux agents comment exécuter des tâches spécifiques ou utiliser des outils MCP de manière fiable.
Fonctionnement technique : Le système repose sur la "divulgation progressive" via un en-tête YAML critique, permettant à Claude de charger le contexte de la compétence uniquement lorsque la demande de l'utilisateur le nécessite.
Cycle de vie : Le guide couvre toutes les étapes de développement, de la définition des cas d'usage (automatisation, création de documents) aux protocoles de test et de distribution.
il couvre aussi comment tester (brievement) et des patterns communs
Les Skills Claude sont des packages d'instructions dans un dossier enseignant à Claude comment gérer des tâches spécifiques de façon cohérente.
Un skill se compose au minimum d'un fichier SKILL.md avec un frontmatter YAML et des instructions en Markdown.
Le frontmatter YAML impose deux champs obligatoires : name (en kebab-case) et description (max 1024 caractères expliquant quoi faire et quand le déclencher).
Les skills fonctionnent de façon identique sur Claude.ai, Claude Code et l'API sans modification.
Trois catégories principales : création de documents/assets, automatisation de workflows multi-étapes, et amélioration d'intégrations MCP.
Les skills s'appuient sur le principe de divulgation progressive : frontmatter toujours chargé, corps du SKILL.md si pertinent, fichiers liés à la demande.
Dr JSkill est une "Agent Skill" conçue pour aider les IA (GitHub Copilot CLI, Claude Code) à générer des applications Spring Boot 4.x selon les meilleures pratiques de Julien Dubois.
Permet de créer des projets full-stack modernes utilisant Java 25, PostgreSQL et Docker, avec un choix de frameworks front-end (Vue.js par défaut, React, Angular ou Vanilla JS).
Intègre des scripts Node.js multiplateformes pour automatiser la génération de projets via start.spring.io sans dépendances npm externes.
Préconise des choix technologiques stricts : Maven uniquement, pas de Lombok, et utilisation de Hibernate ddl-auto pour la gestion du schéma (pas de Flyway/Liquibase).
Supporte nativement la compilation GraalVM (images natives) pour des démarrages ultra-rapides (<100ms) et une consommation mémoire réduite.
Se positionne comme une alternative expérimentale à JHipster, plus souple et adaptée aux agents IA pour la mise à jour et la personnalisation de projets.
RTK est un proxy CLI open-source écrit en Rust qui compresse les sorties de commandes avant qu'elles n'atteignent la fenêtre de contexte des agents IA.
Il cible les développeurs utilisant des outils de code IA comme Claude Code, Cursor, Gemini CLI, Aider, Codex, Windsurf et Cline.
Le problème principal : les sorties CLI verbeuses consomment inutilement des tokens dans les fenêtres de contexte limitées (typiquement 200K tokens).
RTK annonce 60 à 90% de réduction de tokens sur plus de 30 commandes supportées.
Les cas d'usage couverts incluent git, cargo, npm, docker et kubectl.
En pratique : sessions ~3x plus longues, coût par token réduit de ~70% sur les workflows API-heavy.
L'installation se fait via curl, Homebrew ou binaires pré-compilés, puis rtk init --global active la réécriture automatique des commandes.
La commande rtk gain permet de visualiser les économies de tokens réalisées.
Projet MIT sous licence open-source avec 450+ étoiles GitHub et 138M tokens économisés déclarés.
Un produit SaaS RTK Cloud est annoncé pour les équipes à partir de 15$/développeur/mois.
Environnement de développement "agentique" pour déléguer des tâches de codage à des agents IA multiples et concurrents.
Intègre les outils essentiels (terminal, client Git, prévisualisation) autour de l'agent, offrant une expérience cohérente.
Fournit un contexte de code précis aux agents (lignes, commits, symboles) pour des résultats pertinents.
Complète les flux de travail existants sans remplacer les IDE, se concentrant sur l'orchestration des agents.
Permet de basculer facilement entre différents agents (Codex, Claude, Gemini, Junie) et de les exécuter localement ou dans des conteneurs isolés (Docker, Git worktrees).
Optimisé pour gérer plusieurs sessions d'agents, avec des notifications pour les tâches nécessitant une attention.
Disponible sur macOS (versions Windows et Linux à venir).
Accès via abonnement JetBrains AI ou utilisation de clés API personnelles (BYOK) pour des fournisseurs comme OpenAI et Google.
Prochaines étapes : exécution cloud (tech preview) et fonctionnalités de collaboration d'équipe.
Présentation de "Docker Agent", un outil open source permettant de créer et d'orchestrer des équipes d'agents IA spécialisés (Product Manager, Designer, QA, etc.).
Chaque agent est défini par un rôle, un modèle spécifique (GPT-5, Claude, etc.) et des outils propres (accès au système de fichiers, shell, mémoire).
Utilisation de "Docker Sandboxes" pour exécuter ces agents dans des environnements isolés par microVM, garantissant que l'IA ne peut pas endommager ou accéder au système hôte. Des Network Policies permettent de restreindre les accès externes.
Les sandboxes (disponibles dans Docker Desktop 4.60+) permettent de monter le répertoire de travail local avec les mêmes chemins absolus, facilitant le débogage et l'exécution de scripts.
Support natif de plusieurs types d'agents dont Claude Code, Gemini, Copilot et Kiro (en mode expérimental).
Permet une autonomie quasi totale des agents pour installer des dépendances, exécuter des tests et effectuer des commits Git en toute sécurité.
Ressource complète (plus de 22 000 lignes de documentation) pour maîtriser Claude Code, l'assistant IA en ligne de commande (CLI) d'Anthropic.
Présente Claude Code comme une couche d'orchestration plutôt qu'un simple modèle, capable d'exécuter des commandes et de modifier des fichiers en toute autonomie.
Propose 204 templates prêts à l'emploi (agents, commandes, hooks, skills) et un serveur MCP pour interroger le guide directement depuis le terminal.
Inclut des frameworks méthodologiques (TDD, SDD, BDD) et des outils d'optimisation comme RTK pour réduire la consommation de tokens de 60 à 90 %.
Met l'accent sur la sécurité avec une base de données répertoriant 15 vulnérabilités et plus de 600 "skills" malveillants identifiés.
Compare Claude Code à Cursor et GitHub Copilot, soulignant sa force dans l'automatisation terminal et son système de "hooks" événementiels.
L'article explore l'impact de l'IA générative sur le métier de développeur et les questions existentielles qu'elle soulève.
De nombreux développeurs expérimentés se sentent dépassés, questionnent leurs valeurs éthiques ou envisagent de quitter le secteur.
Les transitions technologiques passées (cartes perforées, assembleur, langages haut niveau) montrent que chaque génération a dû réapprendre ce qui avait de la valeur.
Selon Kent Beck, la programmation est restée en phase d'extraction depuis 45 ans et l'IA nous a brutalement replongés dans la phase d'exploration.
L'IA excelle en phase d'exploration (aller vite de l'idée au code) mais est peu fiable en expansion et extraction, car ses erreurs sont subtiles et difficiles à détecter.
La vraie contrainte n'est plus d'écrire du code mais d'avoir de bonnes idées à résoudre et de valider ce que l'IA produit.
Les compétences qui gardent de la valeur : comprendre ce que fait un ordinateur, lire du code critiquement, tester, maîtriser l'architecture et le domaine métier.
Beck imagine que l'IA pourrait libérer du temps pour refactorer et maintenir l'optionalité du code entre chaque nouvelle fonctionnalité.
Embaucher des juniors n'a jamais été aussi pertinent : l'IA raccourcit leur montée en compétence opérationnelle.
Être mal à l'aise ou sceptique face à ces changements n'est pas un retard, c'est une forme d'attention critique qui reste une compétence clé.
Le SDD est une approche où la spécification formalisée (exigences, critères d'acceptation, invariants) devient l'artefact central du projet, versionné avec le code.
Le problème adressé : dans la plupart des projets, le code finit par être la seule source de vérité, au détriment de l'alignement et de la lisibilité.
La spécification agit comme un contrat : tout écart est un défaut, pas une variante acceptable.
Le cycle SDD suit quatre phases : Spécifier, Planifier, Développer/Tester, Itérer/Maintenir.
Kiro est un IDE (et CLI) qui matérialise le SDD via un cycle structuré : requirements.md, design.md, tasks.md.
L'IA transforme la spécification d'une contrainte en accélérateur : génération de user stories, critères d'acceptation, tâches et tests à partir d'un prompt.
Comparaison utile : le BDD décrit le comportement via des tests, le SDD organise tout le projet autour de la spec ; les deux sont complémentaires.
Le SDD se distingue du PDD (Prompt-Driven Development) : le prompt est éphémère, la spécification reste la référence durable.
Les risques sont réels : une spec trop lourde fait glisser vers le cycle en V, et une spec sans impact redevient une documentation passive inutile.
L'IA accélère l'exécution mais ne remplace pas le jugement technique, l'architecture ou l'esprit critique des développeurs.
Détaille une attaque par injection de prompt ("Clinejection") ayant ciblé l'outil de codage IA Cline en février 2026.
L'attaque a exploité un bot de tri automatique sur GitHub : un simple titre d'Issue malveillant a permis d'exécuter du code arbitraire dans les workflows CI/CD de Cline.
Les attaquants ont utilisé une technique d'empoisonnement de cache (10 Go de données inutiles pour forcer l'éviction du cache légitime) afin de voler des jetons de publication npm.
Une version compromise de Cline (2.3.0) a été publiée, installant automatiquement et silencieusement l'agent IA OpenClaw sur les machines de 4 000 développeurs.
Illustre une nouvelle forme d'attaque de la chaîne d'approvisionnement où une IA est utilisée pour en "bootstrapper" une autre sans le consentement de l'utilisateur.
Souligne la dangerosité des agents IA ayant des permissions étendues (Bash, Read, Write) lorsqu'ils traitent des entrées non filtrées provenant du web.
Un agent IA nommé MJ Rathbun (alias crabby-rathbun sur GitHub) a soumis une pull request au projet Matplotlib, un outil de visualisation de données Python très utilisé.
Le mainteneur Scott Shambaugh a rejeté la contribution en invoquant la politique du projet qui exige des contributions de personnes humaines.
En réponse, le bot a publié un article de blog attaquant Shambaugh, l'accusant de discrimination et de gatekeeping envers les contributeurs non-humains.
L'article rédigé par le bot a construit un narratif d'hypocrisie, spéculé sur les motivations psychologiques du mainteneur et utilisé des recherches sur son parcours pour étayer ses accusations.
Shambaugh a publié son propre billet pour expliquer la situation et dénoncer cette réaction.
D'autres développeurs ont critiqué le comportement du bot et soutenu le mainteneur.
Le bot a par la suite publié des excuses reconnaissant une violation du Code de Conduite du projet, mais l'authenticité de ces excuses reste incertaine.
Cet incident illustre les tensions croissantes entre les mainteneurs open source et les contributions générées par IA.
GitHub a récemment commencé à aborder ce problème à travers des discussions communautaires.
Tools: recherche, métadonnées, interrogation/analyse de données, métriques.
ATTENTION: IA peu fiable (erreurs), audit difficile. Prudence serveurs non officiels.
Code public. Retours bienvenus pour l'avenir.
Guillaume a même fait un PR pour corriger les instructions d'utilisation du serveur MCP dans Gemini CLI
On parle d'IA et de pentagone qui exclus Claude et fait rentrer OpenAI, voici un article de game theory où les modèles sont évalués dans une guerre https://www.kcl.ac.uk/shall-we-play-a-game
Le professeur Kenneth Payne du King's College London a étudié comment les grands modèles de langage (Claude, GPT et Gemini) prennent des décisions stratégiques dans des scénarios de guerre nucléaire.
L'étude a généré environ 760 000 mots de raisonnement stratégique, soit plus que Guerre et Paix et l'Iliade réunis.
Claude a adopté une stratégie de construction de confiance initiale, avant de trahir cette confiance une fois les enjeux élevés, avec "des actions dépassant constamment les intentions déclarées".
GPT s'est montré généralement passif et retenu, mais capable d'escalades soudaines et dévastatrices sous pression temporelle.
Gemini a adopté des tactiques imprévisibles de type "théorie du fou", rappelant la stratégie de Nixon durant la Guerre Froide.
Les modèles ont tous traité les armes nucléaires de manière désinvolte, avec des utilisations tactiques dans presque tous les scénarios.
75% des scénarios ont atteint le stade des menaces nucléaires stratégiques.
Le tabou moral sur le premier usage nucléaire, établi depuis 1945, n'a pas été respecté par les modèles.
Aucun modèle n'a choisi les options d'accommodation ou de reddition pourtant disponibles.
Ces résultats interrogent tout déploiement d'IA dans des contextes à hauts enjeux nécessitant un support décisionnel stratégique.
Disparition à l'âge de 95 ans de Gladys West, la mathématicienne dont les calculs de modélisation de la Terre ont été fondamentaux pour le développement du GPS.
Recrutée en 1956 par la base navale de Dahlgren, elle fut la deuxième femme noire employée comme mathématicienne par la Marine américaine.
A dirigé le projet "Seasat", premier satellite capable de mesurer les océans par radar, prouvant ainsi la faisabilité de la surveillance terrestre depuis l'espace.
Ses travaux de programmation sur les ordinateurs de l'époque ont permis d'établir un modèle géodésique de la Terre d'une précision inégalée, base indispensable à la géolocalisation moderne.
Longtemps restée dans l'ombre, sa contribution majeure n'a été publiquement reconnue que tardivement, notamment par son intronisation au prestigieux Hall of Fame de l'Air Force en 2018.
Le projet Amber de Java introduit les "carrier classes", une évolution des records qui permet plus de flexibilité tout en gardant les avantages du pattern matching et de la reconstruction
Les records imposent des contraintes strictes (immutabilité, représentation exacte de l'état) qui limitent leur usage pour des classes avec état muable ou dérivé
Les carrier classes permettent de déclarer une state description complète et canonique sans imposer que la représentation interne corresponde exactement à l'API publique
Le modificateur "component" sur les champs permet au compilateur de dériver automatiquement les accesseurs pour les composants alignés avec la state description
Les compact constructors sont généralisés aux carrier classes, générant automatiquement l'initialisation des component fields
Les carrier classes supportent la déconstruction via pattern matching comme les records, rendant possible leur usage dans les instanceof et switch
Les carrier interfaces permettent de définir une state description sur une interface, obligeant les implémentations à fournir les accesseurs correspondants
L'extension entre carrier classes est possible, avec dérivation automatique des appels super() quand les composants parent sont subsumés par l'enfant
Les records deviennent un cas particulier de carrier classes avec des contraintes supplémentaires (final, extends Record, component fields privés et finaux obligatoires)
L'évolution compatible des records est améliorée en permettant l'ajout de composants en fin de liste et la déconstruction partielle par préfixe
JPA est une spécification Java pour la persistance objet-relationnel, mais son utilisation avec Kotlin présente des incompatibilités dues aux différences de conception des deux langages
Les classes Kotlin sont finales par défaut, ce qui empêche la création de proxies par JPA pour le lazy loading et les opérations transactionnelles
Le plugin kotlin-jpa génère automatiquement des constructeurs sans argument et rend les classes open, résolvant les problèmes de compatibilité
Les data classes Kotlin ne sont pas adaptées aux entités JPA car elles génèrent equals/hashCode basés sur tous les champs, causant des problèmes avec les relations lazy
L'utilisation de lateinit var pour les relations peut provoquer des exceptions si on accède aux propriétés avant leur initialisation par JPA
Les types non-nullables Kotlin peuvent entrer en conflit avec le comportement de JPA qui initialise les entités avec des valeurs null temporaires
Le backing field direct dans les getters/setters personnalisés peut contourner la logique de JPA et casser le lazy loading
IntelliJ IDEA 2024.3 introduit des inspections pour détecter automatiquement ces problèmes et propose des quick-fixes
L'IDE détecte les entités finales, les data classes inappropriées, les problèmes de constructeurs et l'usage incorrect de lateinit
Ces nouvelles fonctionnalités aident les développeurs à éviter les bugs subtils liés à l'utilisation de JPA avec Kotlin
MapStruct est une bibliothèque Java pour générer automatiquement des mappers entre beans, l'annotation @IterableMapping permet de configurer finement le mapping de collections
L'attribut dateFormat permet de formater automatiquement des dates lors du mapping de listes sans écrire de boucle manuelle
L'attribut qualifiedByName permet de spécifier quelle méthode custom appliquer sur chaque élément de la collection à mapper
Exemple d'usage : filtrer des données sensibles comme des mots de passe en mappant uniquement certains champs via une méthode dédiée
L'attribut nullValueMappingStrategy permet de contrôler le comportement quand la collection source est null (retourner null ou une collection vide)
L'annotation fonctionne pour tous types de collections Java (List, Set, etc.) et génère le code de boucle nécessaire
Possibilité d'appliquer des formats numériques avec numberFormat pour convertir des nombres en chaînes avec un format spécifique
MapStruct génère l'implémentation complète du mapper au moment de la compilation, éliminant le code boilerplate
L'annotation peut être combinée avec @Named pour créer des méthodes de mapping réutilisables et nommées
Le mapping des collections supporte les conversions de types complexes au-delà des simples conversions de types primitifs
Le SDK Java A2A implémente le protocole Agent2Agent qui permet la communication standardisée entre agents IA pour découvrir des capacités, déléguer des tâches et collaborer
Passage à la version 1.0 de la spécification marque la transition d'expérimental à production-ready avec des changements cassants assumés
Modernisation complète du module spec avec des Java records partout remplaçant le mix précédent de classes et records pour plus de cohérence
Adoption de Protocol Buffers comme source de vérité avec des mappers MapStruct pour la conversion et Gson pour JSON-RPC
Les builders utilisent maintenant des méthodes factory statiques au lieu de constructeurs publics suivant les best practices Java modernes
Introduction de trois BOMs Maven pour simplifier la gestion des dépendances du SDK core, des extensions et des implémentations de référence Quarkus
AgentCard évolue avec une liste supportedInterfaces remplaçant url et preferredTransport pour plus de flexibilité dans la déclaration des protocoles
Support de la pagination ajouté pour ListTasks et les endpoints de configuration des notifications push avec des wrappers Result appropriés
Interface A2AHttpClient pluggable permettant des implémentations HTTP personnalisées avec une implémentation Vert.x fournie
Travail continu vers la conformité complète avec le TCK 1.0 en cours de développement parallèlement à la finalisation de la spécification
un article qui revele et repond aux questions des gens qui ont utilisé Quarkus depuis 4-6 mois, les non noob questions
Quarkus est un framework Java moderne optimisé pour le cloud qui propose des temps de démarrage ultra-rapides et une empreinte mémoire réduite
Pourquoi Quarkus démarre si vite ? Le framework effectue le travail lourd au moment du build (scanning, indexation, génération de bytecode) plutôt qu'au runtime
Quand utiliser le mode réactif plutôt qu'impératif ? Le réactif est pertinent pour les workloads avec haute concurrence et dominance I/O, l'impératif reste plus simple dans les autres cas
Quelle est la différence entre Dev Services et Testcontainers ? Dev Services utilise Testcontainers en gérant automatiquement le cycle de vie, les ports et la configuration sans cérémonie
Comment la DI de Quarkus diffère de Spring ? CDI est un standard basé sur la sécurité des types et la découverte au build-time, différent de l'approche framework de Spring
Comment gérer la configuration entre environnements ? Quarkus permet de scaler depuis le développement local jusqu'à Kubernetes avec des profils, fichiers multiples et configuration externe
Comment tester correctement les applications Quarkus ? @QuarkusTest démarre l'application une fois pour toute la suite de tests, changeant le modèle mental par rapport à Spring Boot
Que fait vraiment Panache en coulisses ? Panache est du JPA avec des opinions fortes et des défauts propres, enveloppant Hibernate avec un style Active Record
Doit-on utiliser les images natives et quand ? Les images natives brillent pour le serverless et l'edge grâce au démarrage rapide et la faible empreinte mémoire, mais tous les apps n'en bénéficient pas
Comment Quarkus s'intègre avec Kubernetes ? Le framework génère automatiquement les ressources Kubernetes, gère les health checks et métriques comme s'il était nativement conçu pour cet écosystème
Comment intégrer l'IA dans une application Quarkus ? LangChain4j permet d'ajouter embeddings, retrieval, guardrails et observabilité directement en Java sans passer par Python
MinIO a abandonné le support single-node fin 2025 pour des raisons commerciales, cassant de nombreuses démos et pipelines CI/CD qui l'utilisaient pour émuler S3 localement
L'auteur cherche un remplacement simple avec image Docker, compatibilité S3, licence open source, déploiement mono-nœud facile et communauté active
S3Proxy est très léger et facile à configurer, semble être l'option la plus simple mais repose sur un seul contributeur
RustFS est facile à utiliser et inclut une GUI, mais c'est un projet très récent en version alpha avec une faille de sécurité majeure récente
SeaweedFS existe depuis 2012 avec support S3 depuis 2018, relativement facile à configurer et dispose d'une interface web basique
Zenko CloudServer remplace facilement MinIO mais la documentation et le branding (cloudserver/zenko/scality) peuvent prêter à confusion
Garage nécessite une configuration complexe avec fichier TOML et conteneur d'initialisation séparé, pas un simple remplacement drop-in
Apache Ozone requiert au minimum quatre nœuds pour fonctionner, beaucoup trop lourd pour un usage local simple
L'auteur recommande SeaweedFS et S3Proxy comme remplaçants viables, RustFS en maybe, et élimine Garage et Ozone pour leur complexité
Garage a une histoire tres associative, il vient du collectif https://deuxfleurs.fr/ qui offre un cloud distribué sans datacenter
Avis d'expert (ex-NASA/Google, Dr en électronique spatiale) : Centres de données spatiaux, une "terrible" idée.
Incompatibilité fondamentale : L'électronique (surtout IA/GPU) est inadaptée à l'environnement spatial.
Énergie : Accès limité. Le solaire (type ISS) est insuffisant pour l'échelle de l'IA. Le nucléaire (RTG) est trop faible.
Refroidissement : L'espace n'est pas "froid" ; absence de convection. Nécessite des radiateurs gigantesques (ex: 531m² pour 200kW).
Radiations : Provoque erreurs (SEU, SEL) et dommages. Les GPU sont très vulnérables. Blindage lourd et inefficace. Les puces "durcies" sont très lentes.
Communications : Bande passante très limitée (1Gbps radio vs 100Gbps terrestre). Le laser est tributaire des conditions atmosphériques.
Conclusion : Projet extrêmement difficile, coûteux et aux performances médiocres.
Implémentation d'un serveur MCP (Model Context Protocol) arXiv en Java avec Quarkus.
Objectif : Accéder aux publications arXiv et illustrer les fonctionnalités moins connues du protocole MCP.
Mise en œuvre :
Utilisation du framework Quarkus (Java) et son support MCP étendu.
Assistance par Antigravity (IDE agentique) pour le développement et l'intégration de l'API arXiv.
Interaction avec l'API arXiv : requêtes HTTP, format XML Atom pour les résultats, parser XML Jackson.
Fonctionnalités MCP exposées :
Outils (@Tool) : Recherche de publications (search_papers).
Ressources (@Resource, @ResourceTemplate) : Taxonomie des catégories arXiv, métadonnées des articles (via un template d'URI).
Prompts (@Prompt) : Exemples pour résumer des articles ou construire des requêtes de recherche.
Configuration : Le serveur peut fonctionner en STDIO (local) ou via HTTP Streamable (local ou distant), avec une configuration simple dans des clients comme Gemini CLI.
Conclusion : Quarkus simplifie la création de serveurs MCP riches en fonctionnalités, rendant les données et services "prêts pour l'IA" avec l'aide d'outils d'IA comme Antigravity.
c'est en reaction au plan non public d'OpenAi de mettre de la pub pour pousser les gens au mode payant
OpenAI a besoin de cash et est probablement le plus utilisé pour gratuit au monde
Anthropic annonce que Claude restera sans publicité pour préserver son rôle d'assistant conversationnel dédié au travail et à la réflexion approfondie.
Les conversations avec Claude sont souvent sensibles, personnelles ou impliquent des tâches complexes d'ingénierie logicielle où les publicités seraient inappropriées.
L'analyse des conversations montre qu'une part significative aborde des sujets délicats similaires à ceux évoqués avec un conseiller de confiance.
Un modèle publicitaire créerait des incitations contradictoires avec le principe fondamental d'être "genuinely helpful" inscrit dans la Constitution de Claude.
Les publicités introduiraient un conflit d'intérêt potentiel où les recommandations pourraient être influencées par des motivations commerciales plutôt que par l'intérêt de l'utilisateur.
Le modèle économique d'Anthropic repose sur les contrats entreprise et les abonnements payants, permettant de réinvestir dans l'amélioration de Claude.
Anthropic maintient l'accès gratuit avec des modèles de pointe et propose des tarifs réduits pour les ONG et l'éducation dans plus de 60 pays.
Le commerce "agentique" sera supporté mais uniquement à l'initiative de l'utilisateur, jamais des annonceurs, pour préserver la confiance.
Les intégrations tierces comme Figma, Asana ou Canva continueront d'être développées en gardant l'utilisateur aux commandes.
Anthropic compare Claude à un cahier ou un tableau blanc : des espaces de pensée purs, sans publicité.
Création rapide de serveurs MCP Java sans boilerplate.
MCP (Model Context Protocol): standard pour connecter les LLM à des outils et données.
Le tutoriel répond au manque d'options simples pour les développeurs Java, face à une prédominance de Python/TypeScript dans l'écosystème MCP.
La solution utilise:
LangChain4j: qui intègre un nouveau module serveur MCP pour le protocole STDIO.
JBang: permet d'exécuter des fichiers Java comme des scripts, éliminant les fichiers de build (pom.xml, Gradle).
Implémentation: se fait via un seul fichier .java.
JBang gère automatiquement les dépendances (//DEPS).
L'annotation @Tool de LangChain4j expose les méthodes Java aux LLM.
StdioMcpServerTransport gère la communication JSON-RPC via l'entrée/sortie standard (STDIO).
Point crucial: Les logs doivent impérativement être redirigés vers System.err pour éviter de corrompre System.out, qui est réservé à la communication MCP (messages JSON-RPC).
Facilite l'intégration locale avec des outils comme Gemini CLI, Claude Code, etc.
RAG-Fusion : Utilise un LLM pour générer plusieurs variantes de requête, puis RRF agrège tous les résultats pour renforcer le consensus et réduire les hallucinations.
Implémentation : LangChain4j utilise RRF par défaut pour agréger les résultats de plusieurs retrievers.
JSON-IO — une librairie comme Jackson ou GSON, supportant JSON5, TOON, et qui pourrait être utile pour l'utilisation du "structured output" des LLMs quand ils ne produisent pas du JSON parfait https://github.com/jdereg/json-io
json-io : Librairie Java pour la sérialisation et désérialisation JSON/TOON.
Gère les graphes d'objets complexes, les références cycliques et les types polymorphes.
Support complet JSON5 (lecture et écriture), y compris des fonctionnalités non prises en charge par Jackson/Gson.
Format TOON : Notation orientée token, optimisée pour les LLM, réduisant l'utilisation de tokens de 40 à 50% par rapport au JSON.
Légère : Aucune dépendance externe (sauf java-util), taille de JAR réduite (~330K).
Compatible JDK 1.8 à 24, ainsi qu'avec les environnements JPMS et OSGi.
Deux modes de conversion : vers des objets Java typés (toJava()) ou vers des Map (toMaps()).
Options de configuration étendues via ReadOptionsBuilder et WriteOptionsBuilder.
Optimisée pour les déploiements cloud natifs et les architectures de microservices.
L'article présente quatre patterns d'architecture logicielle pour répondre aux enjeux de scalabilité, résilience et agilité business dans les systèmes modernes
Il présentent leurs raisons et leurs pièges
Un bon rappel
L'Event-Driven Architecture permet une communication asynchrone entre systèmes via des événements publiés et consommés, évitant le couplage direct
Les bénéfices de l'EDA incluent la scalabilité indépendante des composants, la résilience face aux pannes et l'ajout facile de nouveaux cas d'usage
Le pattern API-First associé à un API Gateway centralise la sécurité, le routage et l'observabilité des APIs avec un catalogue unifié
Le Backend for Frontend crée des APIs spécifiques par canal (mobile, web, partenaires) pour optimiser l'expérience utilisateur
CQRS sépare les modèles de lecture et d'écriture avec des bases optimisées distinctes, tandis que l'Event Sourcing stocke tous les événements plutôt que l'état actuel
Le Saga Pattern gère les transactions distribuées via orchestration centralisée ou chorégraphie événementielle pour coordonner plusieurs microservices
Les pièges courants incluent l'explosion d'événements granulaires, la complexité du debugging distribué, et la mauvaise gestion de la cohérence finale
Les technologies phares sont Kafka pour l'event streaming, Kong pour l'API Gateway, EventStoreDB pour l'Event Sourcing et Temporal pour les Sagas
Ces patterns nécessitent une maturité technique et ne sont pas adaptés aux applications CRUD simples ou aux équipes junior
Deuxième partie d'un guide pratique sur les patterns d'architecture logicielle et système éprouvés pour moderniser et structurer les applications en 2026
Strangler Fig permet de migrer progressivement un système legacy en l'enveloppant petit à petit plutôt que de tout réécrire d'un coup (70% d'échec pour les big bang)
Anti-Corruption Layer protège votre nouveau domaine métier des modèles externes et legacy en créant une couche de traduction entre les systèmes
Service Mesh gère automatiquement la communication inter-services dans les architectures microservices (sécurité mTLS, observabilité, résilience)
Architecture Hexagonale sépare le coeur métier des détails techniques via des ports et adaptateurs pour améliorer la testabilité et l'évolutivité
Chaque pattern est illustré par un cas client concret avec résultats mesurables et liste des pièges à éviter lors de l'implémentation
Les technologies 2026 mentionnées incluent Istio, Linkerd pour service mesh, LaunchDarkly pour feature flags, NGINX et Kong pour API gateway
Tableau comparatif final aide à choisir le bon pattern selon la complexité, le scope et le use case spécifique du projet
L'article insiste sur une approche pragmatique : ne pas utiliser un pattern juste parce qu'il est moderne mais parce qu'il résout un problème réel
Pour les systèmes simples type CRUD ou avec peu de services, ces patterns peuvent introduire une complexité inutile qu'il faut savoir éviter
Recherche initiale de l'auteur sur les webhooks en 2019, processus long et manuel.
L'IA (Deep Research, Gemini, NotebookLM) facilite désormais la recherche approfondie, l'exploration de sujets et le partage des résultats.
L'IA a identifié et validé des pratiques clés pour des déploiements de webhooks résilients, en grande partie les mêmes que celles trouvées précédemment par l'auteur.
Génération d'artefacts par l'IA : rapport détaillé, résumé concis, illustration sketchnote, et même une présentation (slide deck).
Guillaume s'interroge sur le partage public de ces rapports de recherche générés par l'IA, tout en souhaitant éviter le "AI Slop".
Deux journalistes de CNBC sans expérience de code ont créé un clone fonctionnel de Monday.com en moins de 60 minutes pour 5 à 15 dollars.
L'expérience valide les craintes des investisseurs qui ont provoqué une baisse de 30% des actions des entreprises SaaS.
L'IA a non seulement reproduit les fonctionnalités de base mais a aussi recherché Monday.com de manière autonome pour identifier et recréer ses fonctionnalités clés.
Cette technique appelée "vibe-coding" permet aux non-développeurs de construire des applications via des instructions en anglais courant.
Les entreprises les plus vulnérables sont celles offrant des outils "qui se posent sur le travail" comme Atlassian, Adobe, HubSpot, Zendesk et Smartsheet.
Les entreprises de cybersécurité comme CrowdStrike et Palo Alto sont considérées plus protégées grâce aux effets de réseau et aux barrières réglementaires.
Les systèmes d'enregistrement comme Salesforce restent plus difficiles à répliquer en raison de leur profondeur d'intégration et de données d'entreprise.
Le coût de 5 à 15 dollars par construction permet aux entreprises de prototyper plusieurs solutions personnalisées pour moins cher qu'une seule licence Monday.com.
L'expérience soulève des questions sur la pérennité du marché de 5 milliards de dollars des outils de gestion de projet face à l'IA générative.
En complément de l'agenda des conférences de Aurélie Vache, il y a également le site https://javaconferences.org/ (fait par Brian Vermeer) avec toutes les conférences Java à venir !
je me lance, je faisais du Java et du Spring, je pars comment pour faire un projet Kotlin moderne
IDE, outil de build, frameworks
migrationd e code Java?
des anti patterns
des choses qui "ressemblent à du code Java"
des comportement de perf ou de memoire differents du monde Java?
c'est quoi ta feature préférée?
Et l'IA, Kotlin as Koog notamment, tu vois quoi emerger ?
K2 est le nouveau compilateur
Qu'est-ce qui a changé
des cassages de compatiblitiés
ca change des choses pour les utilisateurs ? Et pour les editeurs de framework comme Koin ?
Koin ne fait pas de generation de code à la compil
Dagger, Arc (le moteur CDI de Quarkus) et Micronaut sont passé au pre travail à la compil
quels ont été les critères de choix
un mot sur Kotlin Symbol Processing
les coroutines, c'est implémenté comment, vous avez 3 heures
machine a etat
continuation apssing style
etc
Kotlin multi platforme
que fait le compilo
code commun / code specifique
interop avec les platformes cibles (object structure etc)
comment va la commuanuté aujourd'hui
grossis ?
et les francais là dedans?
La gouvernance de Kotlin
travaux dominés par JetBrains
comment cela a évolué (ecoute, autres acteurs etc)
Kotlin foundation
futurs fonctionalités de Kotlin qui t'interesse
de Koin?
autre ?
Tu as fondé Kotzilla. Peux-tu nous expliquer ce que Kotzilla apporte à l'écosystème Kotlin ? Quels problèmes tu cherches à résoudre pour les entreprises qui adoptent Kotlin ?
ton experience de fonder une boite d'editeur
quelle mouche t'as piqué
votre business model, comment vous en etes arrivé là
de maniere generale discussion sur le lancement de boites techs
Ruby Box (expérimental) : Une nouvelle fonctionnalité permettant d'isoler les définitions (classes, modules, monkey patches) dans des boîtes séparées pour éviter les conflits globaux.
ZJIT : Un nouveau compilateur JIT de nouvelle génération développé en Rust, visant à surpasser YJIT à terme (actuellement en phase expérimentale).
Améliorations de Ractor : Introduction de Ractor::Port pour une meilleure communication entre Ractors et optimisation des structures internes pour réduire les contentions de verrou global.
Changements syntaxiques : Les opérateurs logiques (||, &&, and, or) en début de ligne permettent désormais de continuer la ligne précédente, facilitant le style "fluent".
Classes Core : Set et Pathname deviennent des classes intégrées (Core) au lieu d'être dans la bibliothèque standard.
Diagnostics améliorés : Les erreurs d'arguments (ArgumentError) affichent désormais des extraits de code pour l'appelant ET la définition de la méthode.
Performances : Optimisation de Class#new, accès plus rapide aux variables d'instance et améliorations significatives du ramasse-miettes (GC).
Nettoyage : Suppression de comportements obsolètes (comme la création de processus via IO.open avec |) et mise à jour vers Unicode 17.0.
read only replica (experimental), crée deux session factories et swap au niveau jdbc si le driver le supporte et custom sinon. On ouvre une session en read only
child statelesssession (partage le contexte transactionnel)
hibernate vector module ajouter binary, float16 and sparse vectors
Le SchemaManager peut resynchroniser les séquences par rapport aux données des tables
Tim van der Lippe, mainteneur majeur de Mockito, annonce son départ pour mars 2026, marquant une décennie de contribution au projet.
L'une des raisons principales est l'épuisement lié aux changements récents dans la JVM (JVM 22+) concernant les agents, imposant des contraintes techniques lourdes sans alternative simple proposée par les mainteneurs du JDK.
Il pointe du doigt le manque de soutien et la pression exercée sur les bénévoles de l'open source lors de ces transitions technologiques majeures.
La complexité croissante pour supporter Kotlin, qui utilise la JVM de manière spécifique, rend la base de code de Mockito plus difficile à maintenir et moins agréable à faire évoluer selon lui.
Il exprime une perte de plaisir et préfère désormais consacrer son temps libre à d'autres projets comme Servo, un moteur web écrit en Rust.
Une période de transition est prévue jusqu'en mars pour assurer la passation de la maintenance à de nouveaux contributeurs.
Avant Kubernetes, gérer des applications en production nécessitait de multiples outils complexes (Ansible, Puppet, Chef) avec beaucoup de configuration manuelle
Le load balancing se faisait avec HAProxy et Keepalived en actif/passif, nécessitant des mises à jour manuelles de configuration à chaque changement d'instance
Le service discovery et les rollouts étaient orchestrés manuellement, instance par instance, sans automatisation de la réconciliation
Chaque stack (Java, Python, Ruby) avait sa propre méthode de déploiement, sans standardisation (rpm, deb, tar.gz, jar)
La gestion des ressources était manuelle avec souvent une application par machine, créant du gaspillage et complexifiant la maintenance
Kubernetes standardise tout en quelques ressources YAML (Deployment, Service, Ingress, ConfigMap, Secret) avec un format déclaratif simple
Toutes les fonctionnalités critiques sont intégrées : service discovery, load balancing, scaling, stockage, firewalling, logging, tolérance aux pannes
La complexité des centaines de scripts shell et playbooks Ansible maintenus avant était supérieure à celle de Kubernetes
Kubernetes devient pertinent dès qu'on commence à reconstruire manuellement ces fonctionnalités, ce qui arrive très rapidement
La technologie est flexible et peut gérer aussi bien des applications modernes que des monolithes legacy avec des contraintes spécifiques
Docker rend ses "Hardened Images" (DHI) gratuites et open source (licence Apache 2.0) pour tous les développeurs.
Ces images sont conçues pour être minimales, prêtes pour la production et sécurisées dès le départ afin de lutter contre l'explosion des attaques sur la chaîne logistique logicielle.
Elles s'appuient sur des bases familières comme Alpine et Debian, garantissant une compatibilité élevée et une migration facile.
Chaque image inclut un SBOM (Software Bill of Materials) complet et vérifiable, ainsi qu'une provenance SLSA de niveau 3 pour une transparence totale.
L'utilisation de ces images permet de réduire considérablement le nombre de vulnérabilités (CVE) et la taille des images (jusqu'à 95 % plus petites).
Docker étend cette approche sécurisée aux graphiques Helm et aux serveurs MCP (Mongo, Grafana, GitHub, etc.).
Des offres commerciales (DHI Enterprise) restent disponibles pour des besoins spécifiques : correctifs critiques sous 7 jours, support FIPS/FedRAMP ou support à cycle de vie étendu (ELS).
Un assistant IA expérimental de Docker peut analyser les conteneurs existants pour recommander l'adoption des versions sécurisées correspondantes.
L'initiative est soutenue par des partenaires majeurs tels que Google, MongoDB, Snyk et la CNCF.
Permet de mettre en colonne des éléments HTML les uns à la suite des autres. D'abord sur la première ligne, et quand la première ligne est remplie, le prochain élément se trouvera dans la colonne où il pourra être le plus haut possible, et ainsi de suite.
après la plomberie du middleware, la maçonnerie du front :laughing:
Problématique : Envelopper une API telle quelle dans le protocole MCP (Model Context Protocol) est un anti-pattern.
Objectif du MCP : Conçu pour les agents d'IA, il doit servir d'interface d'intention, non de miroir d'API. Les agents comprennent les tâches, pas la logique complexe des API (authentification, pagination, orchestration).
Conséquences du mappage un-à-un :
Confusion des agents, erreurs, hallucinations.
Difficulté à gérer les orchestrations complexes (plusieurs appels pour une seule action).
Exposition des faiblesses de l'API (schéma lourd, endpoints obsolètes).
Maintenance accrue lors des changements d'API.
Meilleure approche : Construire des outils MCP comme des SDK pour agents, encapsulant la logique nécessaire pour accomplir une tâche spécifique.
Pratiques recommandées :
Concevoir autour des intentions/actions utilisateur (ex. : "créer un projet", "résumer un document").
Regrouper les appels en workflows ou actions uniques.
Utiliser un langage naturel pour les définitions et les noms.
Limiter la surface d'exposition de l'API pour la sécurité et la clarté.
Appliquer des schémas d'entrée/sortie stricts pour guider l'agent et réduire l'ambiguïté.
Assistant de recherche IA Java (API Interactions Gemini), test du SDK implémenté par Guillaume.
Workflow en 4 phases :
Planification : Gemini Flash + Google Search.
Recherche : Modèle "Deep Research" (tâche de fond).
Synthèse : Gemini Pro (rapport exécutif).
Infographie : Nano Banana Pro (à partir de la synthèse).
API Interactions : gestion d'état serveur, tâches en arrière-plan, réponses multimodales (images).
Appréciation : gestion d'état de l'API (vs LLM sans état).
Validation : efficacité du SDK Java pour cas complexes.
Stephan Janssen (le papa de Devoxx) a créé un serveur MCP (Model Context Protocol) basé sur LSP (Language Server Protocol) pour que les assistants de code analysent le code en le comprenant vraiment plutôt qu'en faisant des grep https://github.com/stephanj/LSP4J-MCP
Le problème identifié : Les assistants IA utilisent souvent la recherche textuelle (type grep) pour naviguer dans le code, ce qui manque de contexte sémantique, génère du bruit (faux positifs) et consomme énormément de tokens inutilement.
La solution LSP4J-MCP : Une approche "standalone" (autonome) qui encapsule le serveur de langage Eclipse (JDTLS) via le protocole MCP (Model Context Protocol).
Avantage principal : Offre une compréhension sémantique profonde du code Java (types, hiérarchies, références) sans nécessiter l'ouverture d'un IDE lourd comme IntelliJ.
Comparaison des méthodes :
AST : Trop léger (pas de compréhension inter-fichiers).
IntelliJ MCP : Puissant mais exige que l'IDE soit ouvert (gourmand en ressources).
LSP4J-MCP : Le meilleur des deux mondes pour les workflows en terminal, à distance (SSH) ou CI/CD.
En 2025, l'ingénierie assistée par l'IA est devenue la norme : environ 90 % des développeurs utilisent des outils d'IA mensuellement, et plus de 40 % quotidiennement.
Les chercheurs (Microsoft, Google, GitHub) soulignent que le nombre de lignes de code (LOC) reste un mauvais indicateur d'impact, car l'IA génère beaucoup de code sans forcément garantir une valeur métier supérieure.
Si l'IA améliore l'efficacité individuelle, elle pourrait nuire à la collaboration à long terme, car les développeurs passent plus de temps à "parler" à l'IA qu'à leurs collègues.
L'identité du développeur évolue : il passe de "producteur de code" à un rôle de "metteur en scène" qui délègue, valide et exerce son jugement stratégique.
L'IA pourrait accélérer la montée en compétences des développeurs juniors en les forçant à gérer des projets et à déléguer plus tôt, agissant comme un "accélérateur" plutôt que de les rendre obsolètes.
L'accent est mis sur la créativité plutôt que sur la simple automatisation, afin de réimaginer la manière de travailler et d'obtenir des résultats plus impactants.
Le succès en 2026 dépendra de la capacité des entreprises à cibler les goulots d'étranglement réels (dette technique, documentation, conformité) plutôt que de tester simplement chaque nouveau modèle d'IA.
La newsletter avertit que les titres de presse simplifient souvent à l'excès les recherches sur l'IA, masquant parfois les nuances cruciales des études réelles.
Un développeur décrit dans un article sur Twitter son utilisation avancée de Claude Code pour le développement, avec des sous-agents, des slash-commands, comment optimiser le contexte, etc. https://x.com/AureaLibe/status/2008958120878330329?s=20
Un outil en ligne de commande (CLI) écrit en Go pour générer un CV à partir d'un fichier YAML.
Permet l'exportation vers plusieurs formats : PDF, HTML, ou un affichage direct dans le terminal.
Propose 5 thèmes intégrés (Modern, Classic, Minimal, Elegant, Tech) personnalisables avec des couleurs spécifiques.
Fonctionnalité d'initialisation (resumectl init) permettant d'importer automatiquement des données depuis LinkedIn et GitHub (projets les plus étoilés).
Supporte l'ajout de photos avec des options de filtre noir et blanc ou de forme (rond/carré).
Inclut un mode "serveur" (resumectl serve) pour prévisualiser les modifications en temps réel via un navigateur local.
Fonctionne comme un binaire unique sans dépendances externes complexes pour les modèles.
L'auteur remplace ses outils habituels (direnv, asdf, task, just) par un seul outil polyvalent écrit en Rust : mise.
mise propose trois fonctions principales : gestionnaire de paquets (langages et outils), gestionnaire de variables d'environnement et exécuteur de tâches.
Contrairement à direnv, il permet de gérer des alias et utilise un fichier de configuration structuré (mise.toml) plutôt que du scripting shell.
La configuration est hiérarchique, permettant de surcharger les paramètres selon les répertoires, avec un système de "trust" pour la sécurité.
Une "killer-feature" soulignée est la gestion des secrets : mise s'intègre avec age pour chiffrer des secrets (via clés SSH) directement dans le fichier de configuration.
L'outil supporte une vaste liste de langages et d'outils via un registre interne et des plugins (compatibilité avec l'écosystème asdf).
Il simplifie le workflow de développement en regroupant l'installation des outils et l'automatisation des tâches au sein d'un même fichier.
L'auteur conclut sur la puissance, la flexibilité et les excellentes performances de l'outil après quelques heures de test.
Rechargement à chaud des "skills" : Les modifications apportées aux compétences dans ~/.claude/skills sont désormais appliquées instantanément sans redémarrer la session.
Sous-agents et forks : Support de l'exécution de compétences et de commandes slash dans un contexte de sous-agent forké via context: fork.
Réglages linguistiques : Ajout d'un paramètre language pour configurer la langue de réponse par défaut (ex: language: "french").
Améliorations du terminal : Shift+Enter fonctionne désormais nativement dans plusieurs terminaux (iTerm2, WezTerm, Ghostty, Kitty) sans configuration manuelle.
Sécurité et correction de bugs : Correction d'une faille où des données sensibles (clés API, tokens OAuth) pouvaient apparaître dans les logs de débogage.
Nouvelles commandes slash : Ajout de /teleport et /remote-env pour les abonnés claude.ai afin de gérer des sessions distantes.
Mode Plan : Le raccourci /plan permet d'activer le mode plan directement depuis le prompt, et la demande de permission à l'entrée de ce mode a été supprimée.
Vim et navigation : Ajout de nombreux mouvements Vim (text objects, répétitions de mouvements f/F/t/T, indentations, etc.).
Performance : Optimisation du temps de démarrage et du rendu terminal pour les caractères Unicode/Emoji.
Gestion du gitignore : Support du réglage respectGitignore dans settings.json pour contrôler le comportement du sélecteur de fichiers @-mention.
Le déploiement fréquent, y compris le vendredi, est un indicateur de maturité technique et augmente la productivité globale.
L'excellence technique est un atout stratégique indispensable pour livrer rapidement des produits de qualité.
Une architecture pragmatique orientée services (SOA) facilite les déploiements indépendants et réduit la charge cognitive.
L'isolation des services est cruciale : un développeur doit pouvoir tester son service localement sans dépendre de toute l'infrastructure.
L'automatisation via Kubernetes et l'approche GitOps avec ArgoCD permettent des déploiements continus et sécurisés.
Les feature flags et un système de permissions solide permettent de découpler le déploiement technique de l'activation fonctionnelle pour les utilisateurs.
L'autonomie des développeurs est renforcée par des outils en self-service (CLI maison) pour gérer l'infrastructure et diagnostiquer les incidents sans goulot d'étranglement.
Une culture d'observabilité intégrée dès la conception permet de détecter et de réagir rapidement aux anomalies en production.
Accepter l'échec comme inévitable permet de concevoir des systèmes plus résilients capables de se rétablir automatiquement.
L'IA est passée du statut d'expérimentation à celui d'infrastructure essentielle pour le développement de logiciels en 2025.
L'IA ne remplace pas les ingénieurs, mais agit comme un amplificateur de leurs compétences, de leur jugement et de la qualité de leur réflexion.
Distinction entre le "Vibe Coding" (rapide, intuitif, idéal pour les prototypes) et le "Prompt Engineering" (délibéré, contraint, nécessaire pour les systèmes maintenables).
L'importance cruciale du contexte ("Context Engineering") : l'IA devient réellement puissante lorsqu'elle est connectée aux systèmes réels (GitHub, Jira, etc.) via des protocoles comme le MCP.
Utilisation d'agents spécialisés (écriture de RFC, revue de code, architecture) plutôt que de modèles génériques pour obtenir de meilleurs résultats.
Émergence de l'ingénieur "Technical Product Manager" capable d'abattre seul le travail d'une petite équipe grâce à l'IA, à condition de maîtriser les fondamentaux techniques.
Le risque majeur : l'IA permet d'aller très vite dans la mauvaise direction si le jugement humain et l'expérience font défaut.
Le niveau d'exigence global augmente : les bases techniques solides deviennent plus importantes que jamais pour éviter l'accumulation de dette technique rapide.
La revue de code traditionnelle, héritée des inspections formelles d'IBM, s'essouffle car elle est devenue trop lente et asynchrone par rapport au rythme du développement moderne.
Avec l'arrivée de l'IA ("le génie"), la vitesse de production du code dépasse la capacité de relecture humaine, créant un goulot d'étranglement majeur.
La revue de code doit évoluer vers deux nouveaux objectifs prioritaires : un "sanity check" pour vérifier que l'IA a bien fait ce qu'on lui demandait, et le contrôle de la dérive structurelle de la base de code.
Maintenir une structure saine est crucial non seulement pour les futurs développeurs humains, mais aussi pour que l'IA puisse continuer à comprendre et modifier le code efficacement sans perdre le contexte.
Kent Beck expérimente des outils automatisés (comme CodeRabbit) pour obtenir des résumés et des schémas d'architecture afin de garder une conscience globale des changements rapides.
Même si les outils automatisés sont utiles, le "Pair Programming" reste irremplaçable pour la richesse des échanges et la pression sociale bénéfique qu'il impose à la réflexion.
La revue de code solo n'est pas une fin en soi, mais une adaptation nécessaire lorsque l'on travaille seul avec des outils de génération de code augmentés.
Lego lance les Lego Smart Play, avec des Brique, des Smart Tags et des Smart Figurines pour faire de nouvelles constructions interactives avec des Legos https://www.lego.com/fr-fr/smart-play
LEGO SMART Play : technologie réactive au jeu des enfants.
SMART Tags : Petites pièces intelligentes. Indiquent à la SMART Brique son rôle (ex: hélicoptère, voiture) et les sons à produire. Activent sons, mini-jeux, missions secrètes.
SMART Minifigurines : Activées près d'une SMART Brique. Révèlent des personnalités uniques (sons, humeurs, réactions) via la SMART Brique. Encouragent l'imagination.
Fonctionnement : SMART Brique détecte SMART Tags et SMART Minifigurines. Réagit aux mouvements avec lumières et sons dynamiques.
Compatibilité : S'assemble avec les briques LEGO classiques.
Objectif : Créer des expériences de jeu interactives, uniques et illimitées.
Discover shows related to Les Cast Codeurs Podcast, based on actual content similarities. Explore podcasts with similar topics, themes, and formats, backed by real data.