19 points par xguru 2025-04-04 | 1 commentaires | Partager sur WhatsApp
  • Visualisation et description des dernières tendances dans les domaines des techniques/outils/plateformes/langages de développement et frameworks selon 4 niveaux : Hold/Assess/Trial/Adopt
  • Suivi d’éléments technologiques intéressants (blips). Les blips se déplacent entre les 4 niveaux au fil du temps
    • Adopt (recommandé pour adoption) : considéré comme devant être adopté activement à l’échelle du secteur. Peut être effectivement utilisé dans des projets lorsque le contexte s’y prête
    • Trial (à essayer) : mérite d’être utilisé à titre expérimental. Il est important de comprendre comment développer les compétences associées. Peut être adopté dans des projets capables d’absorber le risque
    • Assess (à explorer) : vaut la peine d’être exploré. L’objectif est de comprendre quel impact cette technologie pourrait avoir sur l’organisation
    • Hold (recommandé de différer) : nécessite une approche prudente

Les 4 thèmes de ce numéro

  • Utilisation d’agents supervisés pour les assistants de codage

    • L’une des évolutions rapides de l’IA générative est la croissance des agents de codage conversationnels dans l’IDE
    • Les approches dites « agentic », « prompt-to-code » et « CHOP(chat-oriented programming) » se diffusent
      • L’IA ne se limite plus à générer des snippets de code, elle effectue aussi l’exploration du code, sa modification, la mise à jour des tests, l’exécution de commandes, et parfois même la résolution automatique d’erreurs de linting/compilation
    • Si le scepticisme demeure vis-à-vis de la génération de code totalement autonome, les approches fonctionnant sous la supervision du développeur produisent des résultats positifs
    • Outils représentatifs intégrés à l’IDE : Cursor, Cline, Windsurf, GitHub Copilot
    • Alternatives orientées terminal : aider, goose, Claude Code
    • Il faut rester prudent face à une confiance excessive dans la génération automatique de code par l’IA
      • Lors de la revue de code, un guidage et une vérification continus restent essentiels
  • Une observabilité en pleine évolution

    • Avec la complexité croissante des architectures distribuées, le domaine de l’observabilité évolue rapidement
    • Nouveau sujet d’intérêt : l’observabilité des LLM
      • Les outils de monitoring et d’évaluation des performances des LLM se multiplient
      • Exemples : Weights & Biases Weave, Arize Phoenix, Helicone, HumanLoop
    • L’émergence d’outils d’observabilité assistés par l’IA améliore l’analyse des insights
    • L’adoption croissante d’OpenTelemetry apporte neutralité vis-à-vis des fournisseurs et flexibilité des outils
      • Outils représentatifs prenant en charge OpenTelemetry : Alloy, Tempo, Loki
    • L’observabilité continue d’évoluer, portée par des outils et des pratiques qui se renforcent mutuellement
  • L’évolution du « R » dans le RAG

    • Parmi les différents composants de l’écosystème de l’IA générative, c’est en particulier le R de RAG (Retrieval-Augmented Generation) qui évolue rapidement
    • Principales tendances :
      • Corrective RAG : correction des réponses à partir de retours ou d’heuristiques
      • Fusion-RAG : combinaison de différentes sources et stratégies de recherche pour améliorer l’exhaustivité et la robustesse des réponses
      • Self-RAG : omission de l’étape de recherche et récupération directe des données à la demande
      • FastGraphRAG : amélioration de la compréhension sous forme de graphe explorable par l’humain
    • À mesure que l’optimisation de la recherche devient essentielle pour produire des réponses précises et utiles adaptées aux besoins des utilisateurs, les technologies et outils associés évoluent rapidement
  • Gérer des données complexes

    • Ce n’est plus tant la taille des données (Big Data) que la gestion de leur complexité et diversité (Rich, Complex Data) qui devient l’enjeu principal
    • Avec l’augmentation des données non structurées, une gestion rigoureuse des données devient indispensable pour les exploiter correctement dans l’IA ou l’analyse client
    • Tendances côté outils :
      • bases de données vectorielles, outils d’analyse comme Metabase
    • Montée en puissance de la pensée produit appliquée aux données (Data Product Thinking)
      • application de la pensée produit (Product Thinking) aux outils d’analyse et aux stratégies d’exploitation des données
      • volonté de mettre réellement en pratique des enjeux d’exploitation des données discutés depuis avant l’arrivée de l’IA
    • Sans stratégie claire sur les données, les entreprises risquent de prendre du retard en matière d’innovation et de perdre en compétitivité commerciale

Techniques

Adopt (recommandé pour adoption)

  • Pensée produit appliquée aux données (Data product thinking)

    • Considère les données comme un produit, en mettant l’accent sur le cycle de vie, les critères de qualité et une conception centrée sur les consommateurs
    • S’appuie sur des catalogues de données modernes comme DataHub, Collibra, Atlan et Informatica pour gérer ensemble les métadonnées métier et techniques
    • Utilise cette approche pour disposer de données prêtes pour l’IA et pour faire monter en charge les projets IA
    • Met l’accent sur la gestion de l’ensemble du cycle de vie, y compris les processus de suppression des données conformes aux exigences légales et réglementaires
  • Fuzz testing

    • Technique ancienne mais encore insuffisamment connue malgré sa pertinence
    • Consiste à fournir au système une grande variété d’entrées anormales afin de vérifier son comportement dans des situations exceptionnelles
    • Devient encore plus important pour répondre aux vulnérabilités de sécurité liées à l’augmentation de la génération de code par l’IA
    • L’écosystème d’outils est suffisamment mature, ce qui en fait une adoption pertinente pour maintenir un code robuste et sûr
  • Software Bill of Materials (SBOM)

    • La génération de SBOM est désormais devenue une pratique de sécurité de base
    • Des outils comme Syft, Trivy et Snyk permettent de générer des SBOM et d’effectuer des scans de vulnérabilités du code source jusqu’aux images de conteneurs
    • FOSSA, Chainloop et d’autres s’intègrent aux workflows de développement pour appliquer automatiquement les politiques de sécurité
    • Le large support de SPDX et CycloneDX atténue également les problèmes de standardisation
    • Les exigences de SBOM augmentent aussi pour les systèmes d’IA et se reflètent dans les guides de bonnes pratiques de code sécurisé
  • Threat modeling

    • Technique clé pour maintenir la sécurité tout en préservant l’agilité dans un environnement de développement logiciel centré sur l’IA
    • Peut également s’appliquer à des systèmes présentant des risques de sécurité spécifiques, comme l’IA générative
    • Doit être mené régulièrement tout au long du projet et se révèle particulièrement efficace lorsqu’il est combiné à des scanners de sécurité automatisés et à la définition d’exigences de sécurité

Trial (à essayer)

  • Traiter les collections de requêtes API comme des artefacts produits d’API

    • Lorsqu’une API est traitée comme un produit, il faut prioriser l’expérience développeur et pas seulement la documentation
    • Les spécifications Swagger (OpenAPI) sont utiles pour documenter l’interface, mais l’onboarding reste difficile
    • Avec l’évolution d’outils clients comme Postman, Bruno et Insomnia, il devient pertinent d’utiliser les collections de requêtes API comme des artefacts produits
    • Des exemples incluant une préauthentification et des données de test réalistes permettent un onboarding développeur rapide et efficace
    • Il est nécessaire de stocker les collections de requêtes API dans le dépôt et de les intégrer au pipeline de déploiement afin de les maintenir à jour
  • Processus de conseil en architecture

    • La répartition du pouvoir de décision en matière d’architecture dans les grandes équipes est un défi de longue date
    • Les Architecture Review Boards traditionnels entravent au contraire la productivité et le flux
    • Une approche de prise de décision distribuée, où chacun peut prendre une décision d’architecture tout en sollicitant l’avis des parties prenantes ou des experts, s’avère efficace
    • Des outils comme les Architecture Decision Records et les forums de conseil permettent de maintenir qualité et cohérence
    • Cette approche se diffuse également dans les secteurs fortement réglementés
  • GraphRAG

    • Approche en deux étapes proposée par Microsoft : découper les documents puis construire un graphe de connaissances via l’analyse par LLM, avant d’enrichir le prompt lors de la recherche en étendant les informations pertinentes à partir de ce graphe
    • Utile aussi pour l’analyse de code legacy complexe, via la création de graphes de connaissances à partir d’arbres syntaxiques abstraits (AST) ou de structures de dépendances, par exemple
    • Avec l’apparition d’outils comme le package Python GraphRAG de Neo4j, l’usage se répand progressivement
    • Des outils comme Graphiti s’inscrivent également dans une interprétation élargie du pattern GraphRAG
  • Gestion des accès privilégiés juste-à-temps (Just-in-time privileged access management, JIT PAM)

    • Technique de sécurité qui concrétise le principe du moindre privilège en n’accordant les droits administrateur qu’au moment nécessaire, puis en les retirant immédiatement
    • Des droits administrateur ouverts en permanence, ou « standing privileges », peuvent constituer une vulnérabilité de sécurité
    • Les autorisations temporaires sont contrôlées via des workflows d’approbation automatisés, des attributions de rôles temporaires et des paramètres TTL (Time-To-Live)
    • Très efficace pour répondre aux exigences réglementaires et de conformité
  • Distillation de modèles (Model distillation)

    • Méthode consistant à extraire les connaissances d’un grand modèle pour les transférer vers un plus petit, afin de minimiser la perte de précision tout en améliorant l’efficacité d’exécution
    • Contrairement à des approches de réduction de modèle comme le pruning ou la quantization, l’accent est mis sur la préservation des connaissances métier
    • Les exemples de modèles réduits qui conservent de hautes performances se multiplient, comme les versions distillées de DeepSeek R1 pour Qwen/Llama
    • Des plateformes comme OpenAI et Amazon Bedrock proposent des guides de distillation, utiles pour réduire les coûts d’exploitation des LLM en entreprise et optimiser l’inférence on-device
  • Prompt engineering

    • Processus de conception et d’ajustement de prompts clairs et précis afin d’optimiser la qualité des sorties des modèles d’IA générative
    • Les prompts zero-shot peuvent donner de meilleurs résultats que le few-shot avec les modèles de reasoning
    • Les prompts CoT (chain-of-thought) peuvent au contraire dégrader les performances des modèles de reasoning, en raison de l’impact du préentraînement via RL
    • Sur les modèles avancés, le besoin de prompt engineering pourrait diminuer, mais il reste efficace pour réduire les hallucinations et améliorer la qualité
    • Il est important de maintenir un équilibre entre vitesse de réponse, coût en tokens et performances, et la conception d’applications agentiques exige des choix stratégiques adaptés aux caractéristiques du modèle
  • Petits modèles de langage (Small Language Models, SLMs)

    • Les petites versions distillées de DeepSeek R1 (Qwen, Llama) peuvent tourner sur du matériel standard, au prix d’un certain compromis sur les performances
    • Le domaine des SLM évolue rapidement, avec l’arrivée de nombreux modèles comme Llama 3.2 de Meta (1B, 3B), Phi-4 de Microsoft (14B) et PaliGemma 2 de Google (3B~28B)
    • Les petits modèles ont moins de contraintes en matière de coût d’inférence et d’environnement d’exécution, ce qui élargit leur potentiel d’usage généraliste
    • Les SLM sont considérés comme une tendance technologique importante pour leur équilibre entre performances et efficacité
  • Compréhension des bases de code legacy avec la GenAI

    • Des outils majeurs comme GitHub Copilot et Sourcegraph Cody aident à comprendre et moderniser des bases de code legacy
    • Ils simplifient le travail sur des systèmes complexes de diverses façons, notamment via l’analyse de structure, l’exploration et l’assistance contextuelle
    • Des frameworks comme S3LLM permettent également de comprendre du code scientifique et technique en Fortran ou Pascal
    • Étant donné la quantité considérable de logiciels legacy dans le monde, cette technologie a de fortes chances de continuer à se diffuser

Assess (à explorer)

  • Conception de code adaptée à l’IA (AI-friendly code design)

    • Les agents logiciels basés sur l’IA sont de plus en plus capables de détecter et d’appliquer des modifications de code de grande ampleur
    • À mesure que la confiance dans le code généré par l’IA augmente, la part des revues effectuées par des développeurs humains tend parfois à diminuer
    • Toutefois, l’IA obtient aussi de meilleures performances sur un code bien structuré, ce qui rend une conception compatible avec l’IA importante pour la maintenabilité
    • Les bonnes pratiques de conception existantes, comme des noms explicites, la modularisation, l’abstraction et l’élimination des duplications (DRY), ont aussi un effet positif sur les performances de l’IA
    • On peut s’attendre à voir apparaître à l’avenir des patterns de conception spécifiquement pensés pour l’IA
  • Tests UI pilotés par l’IA (AI-powered UI testing)

    • Une nouvelle approche des tests UI, tirant parti de la capacité des LLM à interpréter les GUI, est en train d’émerger
    • QA.tech, KaneAI et d’autres permettent de tester en langage naturel des UI basées sur des snapshots
    • Browser Use exécute des tests à partir des informations structurelles de Playwright en s’appuyant sur des modèles multimodaux
    • Cela peut produire des résultats non déterministes, mais cette flexibilité est avantageuse pour tester des systèmes legacy ou suivre des changements fréquents d’UI
    • Cette approche peut être utilisée en complément des tests manuels exploratoires
  • Modèle Competence Envelope pour comprendre les défaillances système

    • Concept qui définit les limites à l’intérieur desquelles un système peut fonctionner normalement ; au-delà de ces limites, il peut échouer facilement
    • Utile pour interpréter des cas de défaillance complexes, comme l’incident de Canva en 2024
    • La Residuality Theory analyse la capacité d’adaptation d’un système à partir de son historique de stress et de sa réaction actuelle
    • Le modèle est lié aux notions de résilience, de robustesse et d’antifragilité des systèmes, et suscite des attentes quant à son applicabilité réelle
  • Sorties structurées des LLM (Structured output from LLMs)

    • Technique consistant à contraindre les réponses d’un modèle de langage à respecter un schéma défini, comme du JSON
    • OpenAI prend en charge les sorties structurées à l’aide de JSON Schema, pydantic, d’objets Zod, etc.
    • Très utile dans les domaines nécessitant un format précis, comme l’appel de fonctions ou l’intégration d’API
    • Permet divers cas d’usage, comme la génération de balisage de graphiques, et peut aussi réduire les hallucinations

Hold (déconseillé pour l’instant)

  • Shadow IT accélérée par l’IA (AI-accelerated shadow IT)

    • Les progrès de l’IA permettent désormais à des non-développeurs de créer directement des logiciels sans passer par le service IT
    • Des outils no-code compatibles avec les API d’OpenAI, Anthropic et autres permettent de mettre en œuvre facilement des intégrations complexes
    • Mais la prolifération d’applications non contrôlées augmente fortement le risque de problèmes de sécurité et de gestion des données
    • Cela peut ressembler à une forme évoluée du tableur, mais avec une portée bien plus large
    • Il faut examiner avec prudence l’équilibre entre rapidité de résolution des problèmes et stabilité à long terme
  • Excès de confiance dans le code généré par l’IA (Complacency with AI-generated code)

    • Des tendances à la baisse de qualité apparaissent avec l’usage de l’IA, comme l’augmentation du code dupliqué, du churn de code et la diminution du refactoring
    • Une étude de Microsoft indique que l’IA peut donner aux utilisateurs une confiance erronée et freiner leur esprit critique
    • À mesure que l’IA génère de plus en plus de code, les développeurs risquent d’avoir plus de mal à relire les changements
    • Des pratiques comme le « vibe coding », où l’IA génère du code avec un minimum de vérification, sont très risquées pour du code de production
  • Assistants de codage locaux (Local coding assistants)

    • Les assistants de codage IA exécutés en local, sans envoi vers l’extérieur, présentent des avantages en matière de sécurité
    • Cependant, leurs performances restent limitées par rapport aux modèles cloud, et ils peinent sur les prompts complexes ou les fonctions d’intégration
    • Les fonctionnalités intégrées aux IDE (Xcode, JetBrains) ou les intégrations basées sur Qwen Coder, Continue + Ollama sont utiles pour des tâches simples
    • Il est recommandé de garder des attentes modestes et de les adopter à titre expérimental
  • Remplacer totalement le pair programming par l’IA (Replacing pair programming with AI)

    • Des outils comme Copilot se présentent comme des partenaires de pair programming IA, mais ne remplacent pas les bénéfices collectifs d’un pair humain
    • L’IA est utile pour l’apprentissage, l’onboarding ou la concentration sur la conception stratégique, mais reste insuffisante sur la collaboration d’équipe, le partage de propriété du code ou la prévention du travail en silo
    • Compte tenu des effets collaboratifs du pair programming traditionnel, un remplacement complet n’est pas recommandé
  • Reverse ETL

    • Le Reverse ETL, qui consiste à renvoyer des données d’un data warehouse vers des systèmes transactionnels, est de plus en plus utilisé
    • Cela peut avoir du sens pour des migrations temporaires ou des besoins d’intégration, mais un usage excessif aggrave les problèmes des architectures centralisées
    • Certains fournisseurs en abusent pour concentrer la logique métier dans leur propre plateforme
    • Comme cela peut nuire à la qualité et à la flexibilité de l’architecture à long terme, son adoption doit être envisagée avec une très grande prudence
  • SAFe™ (Scaled Agile Framework)

    • De nombreuses entreprises continuent d’adopter SAFe™
    • Cependant, des processus par étapes trop standardisés provoquent des silos entre services, du gaspillage dans les flux de valeur et un frein à la créativité
    • L’autonomie des équipes et la culture de l’expérimentation s’en trouvent limitées, et la tentative de résoudre des problèmes complexes de transformation organisationnelle par de simples processus montre ses limites
    • Thoughtworks y répond par de la formation interne et du conseil, mais estime qu’une approche centrée sur la valeur, fondée sur le Lean, ainsi que des programmes de transformation sont plus efficaces

Plateformes (Platforms)

Adopt (adoption recommandée)

  • GitLab CI/CD

    • Système de CI/CD entièrement intégré à GitLab, il prend en charge l’ensemble du cycle de vie du développement logiciel, de l’intégration du code aux tests, au déploiement et au monitoring
    • Il convient aux workflows complexes grâce aux pipelines multi-étapes, au caching, à l’exécution en parallèle et aux runners avec autoscaling
    • Ses outils intégrés de sécurité et de conformité (SAST, DAST, etc.) en font une solution fiable même dans des environnements fortement réglementés
    • Son intégration avec Kubernetes prend pleinement en charge les workflows cloud-native
    • Il fournit des logs en temps réel, des rapports de test et des fonctions de traçabilité qui renforcent l’observabilité
  • Trino

    • Moteur open source distribué de requêtes SQL, il permet d’exécuter des requêtes analytiques interactives sur de très grands volumes de données
    • Optimisé pour les environnements on-premise comme cloud, il permet via ses nombreux connecteurs d’interroger directement des bases de données relationnelles et des stockages propriétaires
    • Il prend aussi en charge des formats de fichiers et de tables comme Parquet et Apache Iceberg
    • Sa capacité de fédération de requêtes permet d’interroger plusieurs sources de données comme s’il s’agissait d’une seule table logique
    • Utilisé comme technologie clé dans plusieurs plateformes de données commerciales, dont AWS Athena et Starburst, il constitue une option fiable pour divers workloads analytiques

Trial (mise à l’essai)

  • ABsmartly

    • Plateforme conçue pour des tests A/B et des expérimentations rapides et fiables
    • Son moteur de Group Sequential Testing (GST) permet des tests jusqu’à 80 % plus rapides que les approches classiques
    • Elle offre des rapports en temps réel, une segmentation fine des données et des capacités d’intégration étendues centrées sur les API
    • Elle permet de mener des expérimentations sur le web, le mobile, les microservices et même les modèles de ML
    • Elle se montre efficace pour optimiser l’expérience utilisateur grâce à des cycles d’itération plus courts et à l’analyse automatisée des résultats
  • Dapr

    • Runtime pour applications distribuées, il prend désormais en charge, grâce à ses récentes extensions, l’ordonnancement des tâches, les virtual actors et un renforcement de la sécurité
    • Les configurations orientées sécurité ont été améliorées avec notamment mTLS et des images distroless, tandis que de nouveaux building blocks continuent d’être ajoutés
    • Les équipes l’utilisent de façon stable et son évolution future est prometteuse
  • Grafana Alloy

    • Anciennement connu sous le nom de Grafana Agent, c’est un outil open source jouant le rôle de collecteur OpenTelemetry Collector
    • Il a été conçu comme un collecteur de télémétrie unifié capable de rassembler logs, métriques et traces
    • Il prend en charge les formats OpenTelemetry, Prometheus et Datadog
    • Depuis l’abandon progressif de Promtail, il s’impose comme un choix de premier plan, notamment pour la collecte de logs
  • Grafana Loki

    • Système d’agrégation de logs hautement disponible et extensible horizontalement, il n’indexe que les métadonnées afin de réduire les coûts de stockage et la complexité opérationnelle
    • Il stocke les logs sur des solutions de block storage comme S3, GCS ou Azure Blob Storage
    • Il s’intègre à Grafana et Grafana Alloy, tout en ajoutant la prise en charge d’OpenTelemetry et des fonctions de multitenancy
    • Il intègre aussi des mécanismes de prévention des impacts entre tenants, comme le shuffle-sharding
  • Grafana Tempo

    • Backend de distributed tracing haute performance, il prend en charge des standards ouverts comme OpenTelemetry
    • Le stockage au format colonnaire basé sur Apache Parquet offre de très bonnes performances de requête
    • Les données de traces peuvent être explorées via TraceQL et une CLI
    • Notre équipe l’utilise en self-hosted sur GKE avec MinIO et OpenTelemetry
  • Railway

    • Alternative à Heroku et Vercel, c’est une plateforme PaaS full stack qui couvre l’intégration GitHub/Docker, le déploiement et la visibilité opérationnelle
    • Elle prend en charge la plupart des principaux frameworks et bases de données, ainsi que les déploiements basés sur des conteneurs
    • Une comparaison des coûts reste nécessaire, mais l’expérience est positive du point de vue de la stabilité du déploiement et de l’exploitation
  • Unblocked

    • Assistant IA pour les équipes, il s’intègre aux codebases, à la documentation, aux outils de gestion de projet et aux outils de communication
    • Il peut répondre à des questions sur les concepts métier et techniques, la conception d’architecture et les processus opérationnels
    • Il est utile pour explorer des systèmes complexes ou legacy et convient bien aux équipes qui privilégient un accès rapide au contexte
    • Pour la génération de code ou l’automatisation, des agents IA spécialisés sont plus adaptés
  • Weights & Biases

    • Ses fonctionnalités centrées sur les LLM ont été renforcées, avec l’ajout de la plateforme Weave pour l’évaluation des systèmes, les métriques personnalisées et l’usage de LLM comme évaluateurs
    • Il est efficace pour suivre et déboguer les performances des systèmes d’agents, collecter les retours et ajuster les modèles
    • Il convient bien à l’optimisation des performances aux niveaux local et global, ainsi qu’aux workflows de développement itératif

Assess (à explorer)

  • Arize Phoenix

    • Avec la montée en puissance des applications LLM et agentiques, l’importance de l’observabilité des LLM grandit également
    • Arize Phoenix propose des fonctions de tracing LLM, d’évaluation et de gestion des prompts, avec une intégration fluide aux principales plateformes et frameworks LLM
    • L’analyse des sorties, de la latence et de l’usage des tokens est possible avec une configuration minimale
    • Seule la version open source est utilisée pour l’instant, mais la plateforme Arize dans son ensemble offre davantage de fonctionnalités et mérite d’être étudiée
  • Chainloop

    • Plateforme open source de sécurité de la supply chain logicielle, elle permet aux équipes sécurité de définir des politiques et aux équipes de développement de les respecter dans les pipelines CI/CD
    • Via sa CLI, elle collecte et vérifie des artefacts de sécurité tels que les SBOM et les rapports de vulnérabilité, puis contrôle automatiquement la conformité aux politiques
    • Elle utilise Rego d’OPA comme langage de politique, et permet de valider la conformité à des standards comme le format CycloneDX
    • Grâce à une conformité de sécurité cohérente et à des workflows auditables, elle fournit un environnement de gestion des métadonnées au niveau SLSA 3
  • DeepSeek R1

    • Première série de modèles de reasoning de DeepSeek, elle maximise l’utilisation du hardware grâce à MLA, au gating MoE, à l’entraînement FP8 et aux optimisations PTX
    • DeepSeek-R1-Zero est un modèle innovant qui a acquis des capacités de reasoning uniquement par apprentissage par renforcement
    • Tous les modèles sont proposés en open weights, et DeepSeek-R1-Distill-Qwen-32B affiche de meilleures performances qu’OpenAI o1-mini sur divers benchmarks
    • Le code d’entraînement et les données ne sont pas publics, mais plusieurs modèles préentraînés sont inclus dans le dépôt
  • Deno

    • Plateforme créée par Ryan Dahl, le créateur de Node.js, elle corrige plusieurs faiblesses de Node.js, notamment avec un sandbox de sécurité, la gestion des dépendances et la prise en charge native de TypeScript
    • Depuis Deno 2, la compatibilité avec Node.js et les bibliothèques npm réduit davantage les obstacles à la migration
    • Sa bibliothèque standard et son outillage se sont renforcés, ce qui en fait une option pertinente pour le développement TypeScript côté serveur
    • Il faut toutefois éviter de choisir Deno uniquement pour éviter le multilinguisme au niveau de la plateforme
  • Graphiti

    • Il crée des graphes de connaissances sensibles au temps afin de suivre les relations entre des données en évolution continue
    • Il traite les données structurées et non structurées sous forme d’épisodes temporels, et prend en charge des requêtes combinant le temps, le texte, la sémantique et les algorithmes de graphe
    • Il contribue à améliorer la précision de la recherche d’information dans les applications basées sur GraphRAG
    • Il permet une mémoire à long terme et un raisonnement fondé sur l’état dans les systèmes LLM basés sur le RAG et les agents
  • Helicone

    • Plateforme LLMOps orientée open source pour la gestion des coûts des LLM, l’évaluation du ROI et la réduction des risques
    • Elle couvre l’ensemble du cycle de vie des LLM, avec des fonctions d’expérimentation sur les prompts, de monitoring, de débogage et d’optimisation
    • Elle permet d’analyser en temps réel les coûts, l’utilisation, les performances et les stacks d’agents pour différents fournisseurs de LLM
    • Bien que ses fonctionnalités soient puissantes, la plateforme reste à un stade précoce et l’exploitation des fonctions avancées demande un certain niveau d’expertise
    • Jusqu’à présent, l’expérience d’utilisation est positive
  • Humanloop

    • Plateforme axée sur l’intégration du feedback humain afin de rendre les systèmes d’IA plus fiables et plus flexibles
    • Propose des outils de labellisation, d’apprentissage actif, de fine-tuning en human-in-the-loop et d’évaluation fondée sur les besoins métier
    • Inclut des espaces de travail partagés pour la collaboration, des prompts versionnés et des fonctions d’intégration CI/CD
    • Dispose aussi de fonctions d’observabilité comme le tracing, la journalisation, les alertes et les garde-fous
    • Convient à la mise en place d’une IA responsable dans des environnements fortement réglementés
  • Model Context Protocol (MCP)

    • Standard ouvert proposé par Anthropic, conçu pour permettre aux outils d’IA d’exploiter facilement le contexte des systèmes existants
    • Standardise l’intégration entre l’IA et des informations issues de wikis, d’issue trackers, de bases de données, etc.
    • Repose sur une architecture serveur/client MCP, généralement exécutée en local sous forme de processus Python ou Node
    • Pour l’instant centré sur les utilisateurs techniques, avec encore des défis d’accessibilité, de gouvernance et de gestion des mises à jour pour les non-développeurs
    • À long terme, le potentiel d’évolution vers un écosystème plus convivial est important
  • Open WebUI

    • Plateforme d’IA open source auto-hébergée, capable de s’intégrer à divers modèles et API (compatibles OpenAI, OpenRouter, GroqCloud, etc.)
    • Permet d’exécuter des modèles locaux ou propriétaires via Ollama, y compris dans des environnements hors ligne
    • Fournit une interface de chat basée sur des documents grâce à des fonctions RAG intégrées
    • Permet de contrôler l’accès aux modèles et aux fonctionnalités par groupe d’utilisateurs sur la base du RBAC
    • Peut être étendue via des Functions basées sur Python et inclut aussi des fonctions d’évaluation des LLM
    • Peut évoluer de manière flexible pour un usage personnel, la collaboration d’équipe ou une plateforme de niveau entreprise
  • pg_mooncake

    • Extension PostgreSQL prenant en charge un stockage en colonnes et une exécution vectorisée
    • Permet de stocker des données au format Iceberg ou Delta Lake en local ou sur un stockage compatible S3
    • Peut charger des données depuis divers formats comme Parquet, CSV ou les jeux de données Hugging Face
    • Convient aux environnements nécessitant des analyses de données haute performance sans introduire de stockage colonnaire séparé
  • Reasoning models

    • Les « modèles de raisonnement » (Reasoning Models), capables d’atteindre des performances de niveau humain en mathématiques, en code et dans d’autres domaines, figurent parmi les avancées récentes les plus remarquées en IA
    • Ils renforcent des capacités comme le CoT (raisonnement étape par étape), le ToT (exploration d’alternatives) et l’auto-correction (Self-correction)
    • Divers modèles ont émergé, comme OpenAI o1/o3, DeepSeek R1 et Gemini 2.0 Flash Thinking
    • Ils sont aussi surnommés « slow AI » en raison de temps de réponse plus lents et d’une consommation de tokens plus élevée
    • Ils conviennent davantage à la résolution de problèmes complexes ou aux domaines STEM où l’explicabilité est importante qu’aux tâches simples
  • Restate

    • Plateforme d’exécution de workflows durables similaire à Temporal, développée par les créateurs d’Apache Flink
    • Écrite en Rust et distribuée sous la forme d’un binaire unique
    • Garantit la durabilité des données même en cas de panne grâce à un algorithme de consensus virtuel fondé sur Paxos flexible
    • Fournit des SDK pour Java, Go, Rust et TypeScript
    • Vaut la peine d’être envisagée lorsqu’il est impossible d’éviter les transactions distribuées
  • Supabase

    • Alternative open source à Firebase, qui prend en charge le développement backend avec extensibilité et sécurité
    • Basé sur PostgreSQL, avec de nombreuses fonctionnalités comme l’authentification, les abonnements en temps réel, les API, les edge functions et les vector embeddings
    • Lors du prototypage ou du développement d’un MVP, facilite ensuite la migration vers une solution SQL
  • Synthesized

    • Plateforme qui génère des données de test réalistes pour les environnements de développement et de test
    • Peut masquer des données existantes ou produire des synthetic data statistiquement significatives
    • Peut être intégrée dans les pipelines de build et prend en charge l’anonymisation irréversible par attribut (hachage, randomisation, etc.)
    • Permet aussi de générer de gros volumes de données pour les tests de performance, avec des fonctionnalités orientées vers la résolution de problèmes concrets
  • Tonic.ai

    • À l’image de Synthesized, plateforme qui génère des synthetic data réalistes et dé-identifiées
    • Prend en charge les données structurées comme non structurées et garantit la confidentialité via des techniques de differential privacy
    • Propose la détection et la suppression automatiques des informations sensibles, Ephemeral DB et la fonctionnalité Tonic Textual pour les systèmes RAG
    • Convient aux équipes qui veulent à la fois accélérer l’ingénierie et satisfaire aux exigences de protection des données
  • turbopuffer

    • Moteur de recherche serverless multi-tenant, prenant en charge la recherche vectorielle et plein texte sur la base d’un object storage
    • Se distingue par une conception axée sur la durabilité, l’extensibilité et l’efficacité des coûts, avec des nœuds de requête stateless
    • Utilise un cache des résultats de requêtes à froid sur SSD NVMe et maintient en mémoire les données les plus consultées afin d’offrir une faible latence
    • Adapté à l’IA fondée sur le RAG et à la recherche documentaire à grande échelle, mais actuellement accessible uniquement sur invitation
  • VectorChord

    • Module d’extension PostgreSQL de recherche de similarité vectorielle, développé comme successeur de pgvecto.rs
    • Compatible avec le type pgvector, il offre une recherche vectorielle rapide et peu coûteuse en calcul grâce à l’indexation IVF et à la quantification RaBitQ
    • Intégré à l’écosystème PostgreSQL, il permet d’effectuer à la fois la recherche vectorielle et les transactions
    • Encore à un stade précoce, mais mérite d’être évalué comme alternative pour la recherche vectorielle haute performance

Hold (recommandé de différer)

  • Tyk hybrid API management
    • L’architecture combinant un control plane managé et un data plane autogéré offre de la flexibilité dans les environnements multicloud ou hybrid cloud
    • Toutefois, des problèmes de manque d’observabilité sont apparus, notamment avec des incidents sur le control plane AWS de Tyk détectés d’abord en interne plutôt que par Tyk
    • Le support par tickets n’est pas adapté aux incidents urgents, et des retours font aussi état d’une lenteur de réaction
    • La maturité de la documentation officielle est insuffisante, ce qui complique la résolution de problèmes dans les environnements complexes
    • Le portail développeur pour l’entreprise présente aussi des problèmes de compatibilité limitée avec les versions précédentes et de personnalisation restreinte
    • Une adoption prudente est particulièrement nécessaire dans les configurations hybrides, avec un suivi continu de la maturité

Outils (Tools)

Adopt (recommandé pour adoption)

  • Renovate

    • Outil d’automatisation de la gestion des versions de dépendances, privilégié par de nombreuses équipes
    • Sur GitHub, Dependabot est la valeur par défaut, mais Renovate est plus complet et plus personnalisable
    • Il est efficace de le configurer pour surveiller les dépendances liées au tooling, à l’infrastructure et même aux dépôts internes/privés
    • Pour réduire la fatigue des développeurs, il peut aussi être pertinent d’envisager l’auto-merge des PR de dépendances
  • uv

    • Outil nouvelle génération de gestion de paquets et de projets Python écrit en Rust, dont l’atout majeur est sa très grande rapidité
    • Il unifie plusieurs outils Python existants (Poetry, pyenv, pipx, etc.) et améliore fortement les vitesses de build et de test
    • Une communauté mature et un support écosystémique de long terme restent importants, mais à ce stade c’est l’outil le plus souvent recommandé par les développeurs
    • Il convient particulièrement aux équipes data qui souhaitent sortir du système de paquets Python existant
  • Vite

    • Outil de build frontend haute performance, offrant un hot reloading rapide et un environnement de développement efficace
    • Adopté comme outil par défaut dans Vue, SvelteKit, React, etc., tandis que Create React App bascule vers un écosystème centré sur Vite
    • La création d’une organisation dédiée, VoidZero, renforce la pérennité du projet et son potentiel d’évolution à long terme

Trial (à essayer)

  • Claude Sonnet

    • Modèle de langage avancé, performant dans de nombreux domaines comme le code, la rédaction, l’analyse et les tâches fondées sur l’image
    • Peut s’intégrer au navigateur, au terminal, aux principaux IDE et à GitHub Copilot, et prend aussi en charge l’interprétation de graphiques ainsi que l’extraction de texte dans les images
    • La fonctionnalité « Artifacts » de l’interface navigateur permet d’interagir avec du code et des rendus HTML générés
    • La version 3.5 montre en particulier de forts gains de productivité dans la conception d’architecture ou les projets collaboratifs
    • Claude 3.7 a été publié, mais sa validation en usage réel est encore en cours
  • Cline

    • Extension open source pour VSCode, c’est un outil puissant pour implémenter des agents logiciels supervisés
    • Propose des fonctionnalités avancées comme le mode Plan & Act, l’intégration MCP et un suivi transparent de la consommation de tokens
    • Affiche d’excellentes performances avec Claude 3.5 Sonnet sur de grandes bases de code, l’automatisation des tests sans navigateur et la correction automatique de bugs
    • Renforce la confidentialité grâce au stockage local des données et présente un potentiel d’évolution porté par la communauté open source
    • Il faut toutefois prêter attention au coût des tokens et aux limites de débit des requêtes API (rate limit), et l’usage de fournisseurs d’API alternatifs comme OpenRouter est recommandé
  • Cursor

    • Éditeur de code centré sur l’IA, offrant des capacités avancées d’ajustement du contexte et une expérience conviviale
    • Permet d’intégrer divers modèles via la clé API de l’utilisateur, et incorpore au contexte les git diff, les conversations précédentes, la recherche web, la documentation de bibliothèques et MCP
    • Permet de donner des instructions d’implémentation via une interface de chat IA, puis modifie automatiquement les fichiers et exécute des commandes
    • Inclut aussi une fonction de détection puis de correction automatique des erreurs de lint et de compilation
  • D2

    • Outil open source de diagram-as-code, qui permet d’écrire des diagrammes sous forme de scripts textuels
    • Utilise des moteurs de mise en page comme Mermaid et propose une syntaxe D2 simple et déclarative
    • Sa structure syntaxique privilégie la lisibilité, ce qui le rend adapté à la documentation logicielle et aux diagrammes d’architecture
  • Databricks Delta Live Tables (DLT)

    • Outil déclaratif de gestion de pipelines de données prenant en charge à la fois le streaming en temps réel et le traitement batch
    • Réduit la charge opérationnelle en simplifiant les tâches répétitives de data engineering, notamment via l’automatisation des checkpoints
    • Permet aussi d’optimiser les performances grâce aux vues matérialisées (materialized views)
    • Il faut toutefois faire attention à la conception, car les tables sont gérées au niveau du pipeline et les tables de streaming sont de type append-only
    • Le fait que la suppression d’un pipeline DLT entraîne aussi la suppression des tables et des données constitue un risque opérationnel
  • JSON Crack

    • Extension VSCode qui visualise sous forme de graphe interactif des données textuelles comme JSON, YAML, TOML ou XML
    • Contrairement à Mermaid ou D2, il s’agit d’un outil de visualisation pour l’exploration de données, utile grâce à sa fonction de masquage des nœuds et des branches
    • Il existe aussi un outil web, mais il faut rester prudent vis-à-vis de la dépendance au service en ligne
    • Le nombre de nœuds est limité, et l’outil incite à passer à la version commerciale pour les jeux de données plus volumineux
  • MailSlurp

    • Service API pour l’automatisation des tests basés sur l’e-mail et les SMS
    • Propose des fonctions comme la création de boîtes de réception temporaires et de numéros de téléphone, la validation d’e-mails, les réponses automatiques et le transfert
    • Permet aussi de préparer facilement des tests manuels via une API REST et un tableau de bord no-code
    • Convient aux produits d’onboarding client et au développement de workflows de test
  • Metabase

    • Outil open source d’analytics et de business intelligence, permettant de créer des visualisations, rapports et tableaux de bord à partir de diverses sources de données
    • Permet, via un SDK, d’intégrer des tableaux de bord interactifs dans des applications web
    • Prend en charge à la fois les bases de données relationnelles et NoSQL, avec de nombreux connecteurs officiels et communautaires
    • Utile comme outil BI léger pour la gestion des tableaux de bord et des rapports
  • NeMo Guardrails

    • Toolkit open source de NVIDIA permettant d’appliquer des garde-fous de sécurité à des applications conversationnelles basées sur des LLM
    • Ajoute diverses intégrations, dont la prise en charge de Colang 2.0, AutoAlign et Patronus Lynx
    • Inclut des microservices NIM pour la sécurité des contenus, le contrôle des sujets et la sécurité des prompts
    • Des améliorations de performances ont également été apportées, notamment la prise en charge de la sortie de LLM en streaming
    • Son adoption croissante en production a conduit à sa promotion au niveau Trial
  • Nyx

    • Outil d’automatisation des releases sémantiques indépendant du langage et de la plateforme
    • Particulièrement adapté au développement en trunk-based, tout en prenant en charge divers workflows comme Gitflow, OneFlow et GitHub Flow
    • Propose la génération automatique de changelog sur la base de Conventional Commits
    • Il faut toutefois rester prudent avec les stratégies à branches longues
  • OpenRewrite

    • Outil d’automatisation du refactoring à grande échelle, utile pour les montées de version d’API ou les mises à jour de services basées sur des templates communs
    • Étend la prise en charge à d’autres langages que Java, comme JavaScript
    • Plus fiable et plus efficace que les assistants de code IA pour les changements structurés
    • Fournit aussi de nombreuses recipes (règles de transformation) et des plugins d’outils de build, le tout distribué en open source
  • Plerion

    • Plateforme de sécurité cloud centrée sur AWS, offrant des fonctions de détection et de priorisation des risques à travers l’infrastructure, les serveurs et les applications
    • Aide, comme Wiz, à se concentrer sur « le 1 % important »
    • Améliore la visibilité de sécurité côté client et renforce l’importance de la surveillance de sécurité en amont
  • Agents d’ingénierie logicielle (Software engineering agents)

    • Les agents de codage entièrement autonomes ne sont toujours pas vraiment pratiques, mais les modes agent supervisés dans l’IDE progressent rapidement
    • Le développeur pilote l’implémentation via une interface de chat, tandis que l’IA effectue des modifications sur plusieurs fichiers, exécute des tests et gère le linting ainsi que les erreurs de compilation
    • Aussi appelés CHOP (Chat-Oriented Programming) ou Prompt-to-Code, ils impliquent un partage des responsabilités plus important que les outils d’assistance classiques à base d’autocomplétion
    • Cursor, Cline et Windsurf mènent la danse, et leur combinaison avec les modèles de la série Claude Sonnet est particulièrement performante
    • Les gains de productivité sont importants lorsque le périmètre du problème reste réduit et que l’outil est utilisé sur une base de code structurée
    • Pour une application au code de production, il faut accompagner l’usage de procédures de revue comme le pair programming
  • Tuple

    • Outil de pair programming à distance, initialement conçu comme une alternative à Screenhero de Slack
    • Prend désormais en charge Windows, renforce les paramètres de confidentialité et ajoute une fonction de masquage de fenêtres d’applications spécifiques
    • Les améliorations de l’interface permettent aussi de collaborer sur des contenus hors IDE
    • Comme le pair distant peut accéder à l’ensemble du bureau, il existe des préoccupations de sécurité → il est recommandé de configurer la confidentialité et de former l’équipe avant usage
    • Son UX intuitive et sa faible latence en font un outil pratique pour le pairing à distance
  • Turborepo

    • Outil d’optimisation de build pour les grands monorepos JavaScript/TypeScript, qui améliore la vitesse de build grâce à l’analyse des dépendances, au cache et à l’exécution parallèle
    • Contrairement à Nx, il autorise un package.json par projet, ce qui permet temporairement plusieurs versions d’une même dépendance
    • Cela peut être utile lors d’une migration d’un environnement multirepo vers un monorepo
    • Sa configuration est simple et il offre des performances stables même sur des projets de grande taille

Assess (à explorer)

  • AnythingLLM

    • Application desktop open source permettant d’interagir avec de grands documents ou contenus, avec intégration à divers LLM et bases de données vectorielles
    • Compatible aussi avec des modèles open weight basés sur Ollama, et permet de configurer des modèles d’embedding sous forme de plugins
    • Au-delà du RAG, permet de composer diverses compétences en agents pour exécuter des workflows personnalisés
    • Gère les documents et l’historique des conversations par workspace, et peut désormais aussi être déployée en web app multi-utilisateur
    • Est également utile comme outil local d’assistant personnel
  • Gemma Scope

    • Outil d’interpretability mécaniste visant à comprendre le fonctionnement interne des LLM, capable d’analyser la famille de modèles ouverts Gemma2
    • Aide à identifier et déboguer les causes des hallucinations, biais et sorties anormales
    • Son importance grandit non seulement pour les chercheurs, mais aussi parce que l’entraînement de modèles devient un choix de plus en plus réaliste pour les entreprises
  • Hurl

    • Outil permettant de définir et d’exécuter des séquences de requêtes HTTP dans de simples fichiers texte, utile pour l’automatisation et les tests
    • Fournit des fonctions comme la vérification du code de statut, des en-têtes et du corps de réponse, ainsi que l’extraction de données et la mise en variables
    • Peut générer des rapports au format HTML ou JSON, et permet d’inclure les définitions de tests dans le dépôt de code
    • Adapté lorsqu’on cherche un outil de test d’API plus léger et plus simple que des outils GUI comme Postman ou Bruno
  • **

  • Jujutsu

    • Système de gestion de versions distribué qui utilise Git comme backend tout en proposant son propre workflow et une meilleure ergonomie
    • Compatible avec les serveurs et services Git, avec des fonctions de branching et de résolution de conflits plus simples et plus intuitives
    • Conçu aussi bien pour les débutants que pour les utilisateurs avancés, avec une UX à la fois intuitive et puissante
    • Ses excellentes capacités de résolution de conflits sont particulièrement saluées
  • kubenetmon

    • Outil de surveillance du trafic réseau Kubernetes publié en open source par ClickHouse
    • Permet de mesurer en détail les volumes de transfert de données et les coûts dans des environnements multicloud
    • À envisager si vous rencontrez des coûts de transfert de données imprévus dans une infrastructure basée sur Kubernetes
  • Mergiraf

    • Driver de fusion Git qui résout les conflits de merge à partir de l’arbre syntaxique abstrait (AST) du code
    • Efficace pour traiter les conflits de merge devenus complexes à cause d’historiques de changements longs ou de code généré par l’IA
    • Fonctionne plus finement que l’approche de fusion par lignes par défaut de Git et peut aussi s’appliquer à la fusion automatique et au cherry-pick
    • Peut être utile aux équipes qui utilisent des workflows Git complexes, comme les longues branches de fonctionnalité
  • ModernBERT

    • Série de modèles NLP de nouvelle génération, successeur de BERT, basée sur des transformers encodeur-only
    • Surmonte les limites de longueur de contexte grâce à Alternating Attention, avec une précision et des performances supérieures à celles de BERT
    • Mérite d’être considéré en priorité lorsqu’un modèle dédié au NLP est préférable à un modèle génératif généraliste
  • OpenRouter

    • Plateforme qui unifie différents fournisseurs de LLM derrière une seule API afin de faciliter les expérimentations et l’optimisation des coûts
    • Permet de router vers divers modèles comme Claude, OpenAI ou Mistral, et propose aussi des fonctions pour contourner les limitations de débit des requêtes API
    • Cette architecture implique toutefois une marge tarifaire, il est donc pertinent de ne l’envisager que si le basculement entre plusieurs modèles est réellement nécessaire
  • Redactive

    • Plateforme d’entreprise qui aide à créer en toute sécurité des assistants IA fondés sur le RAG dans des environnements réglementés
    • S’intègre notamment à Confluence pour créer des index basés sur les documents et refléter les autorisations utilisateurs en temps réel
    • Garantit que seules les informations autorisées sont exposées au modèle, en conciliant sécurité et accessibilité
  • System Initiative

    • Outil DevOps expérimental, différent des approches classiques d’infrastructure as code, récemment publié en open source (Apache 2.0)
    • Déjà utilisé en environnement commercial, mais il lui faut encore du temps avant de pouvoir passer à l’échelle des très grandes entreprises
    • Vaut la peine d’être essayé si vous souhaitez découvrir une approche différente des outils DevOps existants
  • TabPFN

    • Modèle de classification basé sur un transformer, optimisé pour les petits jeux de données tabulaires
    • Le modèle préentraîné est généralisé à partir de plusieurs millions de jeux de données synthétiques
    • Fournit des résultats rapides et précis sans réglage d’hyperparamètres, tout en étant robuste aux valeurs manquantes et aux anomalies
    • N’est pas adapté aux grands jeux de données ni aux problèmes de régression
  • v0 (by Vercel)

    • Outil d’IA qui génère du code frontend à partir de captures d’écran, de designs Figma et de prompts
    • Prend en charge divers frameworks comme React, Vue, Tailwind et shadcn, avec possibilité de déployer immédiatement le code généré
    • A des limites pour l’implémentation complète d’applications complexes, mais se révèle utile pour créer des prototypes initiaux ou poser les bases d’une UI
  • Windsurf

    • Assistant de programmation IA développé par Codeium, offrant une expérience d’implémentation orientée agent similaire à Cursor et Cline
    • Étend ses capacités d’exécution via l’exploration du DOM du navigateur, l’accès à la console et la recherche web
    • Permet d’utiliser divers modèles et propose aussi de solides fonctions de contextualisation comme MCP et la référence à la documentation
  • YOLO (You Only Look Once)

    • Modèle léger et performant, utilisable pour diverses tâches de computer vision en temps réel comme la classification d’images, la détection d’objets, l’estimation de pose ou la segmentation
    • La dernière version, YOLO11, améliore encore la précision et l’efficacité de traitement, au point d’être exploitable sur des edge devices
    • Rappelle que, pour certaines tâches de vision, les modèles de CV traditionnels peuvent être plus adaptés que les LLM

Langages et frameworks (Languages and Frameworks)

Adopt (recommandé pour l’adoption)

  • OpenTelemetry

    • S’impose rapidement comme standard de l’industrie pour l’observabilité (Observability)
    • La spécification OTLP (OpenTelemetry Protocol) permet de traiter traces, métriques et logs dans un format standardisé
    • Réduit la dépendance aux fournisseurs et s’intègre aux principaux outils comme Datadog, New Relic et Grafana
    • La prise en charge de la compression gzip et zstd améliore l’efficacité lors des transferts de gros volumes de données, ce qui le rend adapté aux environnements de microservices
    • L’extension du support des logs et du profiling facilite encore davantage l’observabilité de l’ensemble de la stack
  • React Hook Form

    • Alternative à Formik, offrant d’excellentes performances grâce à l’utilisation par défaut de composants uncontrolled
    • S’intègre facilement à des bibliothèques de validation fondées sur des schémas comme Yup et Zod
    • Fonctionne aussi bien avec des bases de code existantes qu’avec des bibliothèques de composants externes comme shadcn et AntD
    • Option stable et flexible, bien adaptée au développement de formulaires volumineux ou d’applications centrées sur les formulaires

Trial (à tester)

  • Effect

    • Bibliothèque de programmation fonctionnelle pour TypeScript qui simplifie l’implémentation de programmes asynchrones et synchrones
    • Permet de gérer des logiques complexes comme la gestion d’état, le traitement des erreurs ou la concurrence, avec sûreté de typage
    • Offre une meilleure composabilité et une plus grande facilité de test que les approches classiques basées sur Promise, async/await et try/catch
    • Propose des abstractions plus adaptées aux tâches de développement quotidiennes que fp-ts, utilisé auparavant
  • Hasura GraphQL Engine

    • Fournit des API GraphQL en temps réel sur diverses sources de données comme PostgreSQL, MongoDB et ClickHouse
    • Utilisé efficacement dans des projets de produits data pour intégrer des ressources côté serveur et construire rapidement des API
    • Les fonctions de Federated Query et de gestion intégrée des schémas sont puissantes, mais demandent de la prudence
    • La fonction PromptQL ajoutée récemment permet d’interroger les données en langage naturel à l’aide de LLM
  • LangGraph

    • Framework d’orchestration basé sur des graphes pour des applications multi-agents avec état, fondées sur des LLM
    • Offre un contrôle plus bas niveau que LangChain (nœuds et arêtes), ce qui permet de personnaliser les workflows
    • Se distingue par une gestion d’état prévisible, ainsi que par ses capacités de débogage, de maintenance et de montée en charge
    • La courbe d’apprentissage est un peu raide, mais il est très solide en matière de légèreté et de modularité
  • MarkItDown

    • Outil CLI qui convertit des documents PDF, HTML, Word ou PowerPoint en Markdown
    • Exploite les caractéristiques structurelles de Markdown pour améliorer la précision du traitement documentaire par les LLM et leur compréhension du contexte
    • Utilisé comme outil de prétraitement documentaire dans un système RAG, il améliore fortement la clarté des réponses de recherche
    • Outil utile pour accroître la productivité des développeurs, souvent aussi employé pour la documentation
  • Module Federation

    • Permet le partage de modules entre micro-frontends et élimine les duplications de dépendances
    • Depuis la version 2.0, fonctionne indépendamment de Webpack et prend en charge Rspack, Vite, React, Angular, etc.
    • Permet de structurer de grandes applications web afin que des équipes indépendantes puissent les développer, les déployer et les faire évoluer séparément
  • Prisma ORM

    • Toolkit de base de données open source pour les applications Node.js et TypeScript
    • Permet de définir des modèles de données avec de simples objets, sans décorateurs ni classes, tout en offrant une excellente sûreté de typage et une bonne portabilité
    • Propose des fonctions de migration automatique et une API de requêtes intuitive
    • S’accorde bien avec le paradigme de programmation fonctionnelle et est optimisé pour les environnements de développement TypeScript

Assess (à explorer)

  • .NET Aspire

    • Outil basé sur .NET qui simplifie l’orchestration d’applications distribuées dans les environnements de développement local
    • Permet d’exécuter plusieurs projets .NET, bases de données et conteneurs Docker avec une seule commande
    • Fournit des outils d’observabilité réservés au local, comme des tableaux de bord de logs, traces et métriques, ce qui améliore le débogage et l’expérience développeur
  • Android XR SDK

    • Système d’exploitation Android et SDK dédiés aux casques XR, créés par Google en collaboration avec Samsung et Qualcomm
    • Prend en charge la plupart des applications Android avec un minimum de modifications, et convient aux nouvelles applications de spatial computing
    • Actuellement au stade de developer preview, il est présenté comme le SDK standard pour le développement d’applications spatialisées
  • Browser Use

    • Bibliothèque Python open source qui permet à des agents IA basés sur des LLM de contrôler un navigateur web
    • Basée sur Playwright, elle permet d’automatiser la navigation, la saisie, l’extraction de texte, etc.
    • Le contrôle de plusieurs onglets et la coordination entre web apps sont possibles, ce qui la rend utile dans des workflows multi-agents
  • CrewAI

    • Plateforme de gestion et d’orchestration d’agents permettant de combiner plusieurs agents pour exécuter des tâches complexes
    • En plus de la bibliothèque Python, une version enterprise permet l’intégration avec des systèmes externes comme SharePoint et JIRA
    • Elle est appliquée à des cas d’usage métier réels comme la validation de codes promotionnels, l’investigation d’échecs de transaction et l’automatisation du support client
    • Si vous vous intéressez à la construction de systèmes à base d’agents, elle mérite d’être explorée
  • ElysiaJS

    • Framework web TypeScript type-safe optimisé pour le runtime Bun, permettant de concevoir des API de style RESTful et OpenAPI
    • Contrairement à tRPC, il n’impose pas de structure d’API et offre à la fois hautes performances et sécurité de typage
    • Adapté à la construction de BFF (Backend-for-Frontend), il vise des performances au niveau de Java ou de Go
  • FastGraphRAG

    • Implémentation GraphRAG haute performance qui améliore la précision et les performances en n’explorant que les nœuds pertinents via Personalized PageRank
    • Propose une prise en charge de la visualisation et des mises à jour incrémentales, ce qui la rend adaptée aux grands jeux de données dynamiques
    • Solution GraphRAG capable d’améliorer la qualité des réponses des LLM tout en économisant les ressources
  • Gleam

    • Langage fonctionnel statiquement typé basé sur Erlang/OTP, qui réduit les erreurs à l’exécution et améliore la maintenabilité
    • Conserve une syntaxe moderne et la compatibilité avec l’écosystème BEAM (Erlang, Elixir)
    • Convient aux équipes qui ont besoin de sécurité de typage supérieure à celle d’Erlang pour des systèmes exigeant une forte concurrence, de la stabilité et de la scalabilité

Assess (à explorer)

  • GoFr

    • Framework de microservices basé sur Golang, avec prise en charge native de la journalisation, du tracing, des métriques, de la gestion de configuration et de la documentation Swagger
    • Inclut l’intégration avec diverses bases de données, le pub/sub via Kafka et NATS, ainsi que la planification de tâches cron
    • Outil centré sur la productivité qui réduit les tâches répétitives et permet de se concentrer sur l’implémentation de la logique métier
  • Java Post-Quantum Cryptography

    • Technologie de chiffrement pensée pour l’ère des ordinateurs quantiques, avec une prise en charge initiale dans JDK 24 via les JEP 496/497
    • Implémente des algorithmes cryptographiques basés sur les réseaux euclidiens (KEM, signatures numériques) et convient à la protection des données pour lesquelles la sécurité à long terme est essentielle
    • liboqs d’Open Quantum Safe existe également, mais l’implémentation native Java est considérée comme une avancée importante
  • Presidio

    • SDK de protection des données qui identifie et anonymise les informations sensibles dans des textes structurés ou non structurés
    • Identifie les éléments de PII (numéros de carte bancaire, noms, lieux, etc.) à l’aide de règles, d’expressions régulières et de NER
    • Très personnalisable, mais comme une détection parfaite n’est pas garantie, il faut interpréter les résultats avec prudence
  • PydanticAI

    • Framework de construction d’applications basées sur les LLM et les agents, développé par l’équipe de Pydantic
    • Vise à minimiser la complexité et propose la gestion des sorties structurées, l’intégration des principales API de modèles et des workflows basés sur des graphes
    • Convient aux développeurs qui veulent éviter une abstraction excessive et préfèrent une architecture pratique et légère
  • Swift for Resource-Constrained Applications

    • Depuis Swift 6.0, la prise en charge de divers systèmes d’exploitation a été renforcée, ce qui accroît son potentiel d’usage dans des environnements à ressources limitées
    • Offre un équilibre entre performance et stabilité grâce à une forte sécurité de typage et une gestion mémoire basée sur ARC
    • Plus accessible que Rust, mais encore insuffisant pour répondre aux normes de certification de sûreté (MISRA, etc.), ce qui limite son usage dans les environnements aux exigences de fiabilité élevées
  • Tamagui

    • Bibliothèque UI qui optimise le partage des styles entre React Web et React Native
    • Grâce à un design system et à un compilateur optimisé, le rendu se fait en atomic CSS sur le web et avec des styles hoisted sur le natif
    • Utile lorsqu’on recherche des styles cohérents et une optimisation des performances dans le développement d’interfaces cross-platform
  • torchtune

    • Bibliothèque basée sur PyTorch pour les LLM, prenant en charge le post-training, le fine-tuning et les expérimentations d’inférence
    • Compatible avec l’entraînement distribué basé sur FSDP2 ainsi qu’avec les environnements mono-GPU et multi-GPU
    • Des recipes basées sur YAML permettent de mener des expérimentations intuitives sans configuration complexe, et la CLI facilite le téléchargement des modèles et l’exécution des expériences

Hold (déconseillé pour l’instant)

  • Node overload
    • Le fait que Node.js soit choisi de manière excessive reste un problème, avec de nombreux cas d’usage où il est adopté sans examen d’alternatives
    • Il reste efficace pour les tâches centrées sur les E/S, mais n’est pas adapté aux traitements intensifs en calcul ou très gourmands en données
    • Avec la hausse récente des workloads orientés données, les limites de Node.js deviennent plus évidentes
    • Nous comprenons la préférence pour une stack mono-langage, mais nous continuons à recommander une approche polyglotte
    • Alors que les frameworks alternatifs offrant de meilleures API et performances se multiplient, l’usage de Node.js doit être évalué avec prudence