21 points par xguru 2024-10-29 | 1 commentaires | Partager sur WhatsApp

L’impact croissant de l’IA

  • L’IA, et en particulier la GenAI, joue aujourd’hui un rôle majeur et occupe une place importante dans les conversations sur la technologie
    • L’IA et la GenAI influencent toutes les étapes de l’écosystème de livraison logicielle
  • Les assistants de code attirent le plus l’attention et sont généralement au stade le plus mature
    • L’utilité croissante de ces outils pousse à réévaluer la manière de livrer des logiciels afin de tirer parti des bénéfices de l’IA tout en maintenant ou en améliorant la rigueur d’ingénierie qui soutient la qualité logicielle
    • On peut s’attendre à une innovation continue dans ce domaine, avec des outils individuels comme GitHub Copilot et Cursor, ou des outils centrés sur l’équipe comme Haiven
    • Le nombre d’outils qui utilisent l’IA, ou qui aident à créer des applications d’IA, ou les deux, explose
  • La vitesse d’adoption de ces outils dépasse celle, en son temps, des outils JavaScript, tant en rythme qu’en quantité
  • La hausse des LLM on-device, ou des small language models (SLM), montre une tendance où l’inférence se déplace du serveur vers le web et les edge devices
    • Cette dernière tendance est positive pour la confidentialité

Prise de conscience croissante des limites et des risques de l’IA

  • On reconnaît de plus en plus l’importance de garder l’humain dans la boucle, surtout lorsqu’il s’agit d’outils de GenAI
    • Il reste difficile de maîtriser les hallucinations ou les erreurs simples lors de l’utilisation de ces outils
    • Certains proposent même de parler plutôt de « AI in the loop », puisque pour l’instant, dans certaines applications, c’est l’humain qui doit garder le contrôle
    • Toutefois, tout n’est pas sombre, puisque les prix Nobel de chimie et de physique ont été attribués à des contributions à l’IA et grâce à l’IA
  • Là où il y a des patterns dans la technologie, il y a aussi des anti-patterns, et l’IA en accumule clairement
    • Parmi les exemples marquants, on trouve le « pairing avec un LLM qui n’apporte pas beaucoup des bénéfices du vrai pair programming » ou encore « l’usage d’un LLM pour les code reviews, qui ne peut pas expliquer la cohérence de style et rend plus difficile la diffusion de la compréhension de la base de code »
    • Même si ces outils s’améliorent clairement, ils ne sont pas encore prêts à s’asseoir au volant ni à juger de manière autonome la qualité et l’adéquation du code
  • Enfin, un mouvement de rejet face aux promesses exaltées de la GenAI est en train de croître
    • Les analystes financiers s’interrogent sur les chances de retour sur investissement de tout l’argent actuellement injecté dans les différents projets IA et GenAI, y compris les activités qui alimentent les foundation models
    • Toute technologie traverse une phase de battage médiatique, et la GenAI ne fait pas exception
    • L’IA a déjà connu plusieurs hivers de l’IA par le passé, mais à ce stade le niveau de désillusion ne semble pas si grave
    • Néanmoins, comme pour les anti-patterns évoqués plus haut, il existe une tendance malheureuse à croire qu’une nouveauté brillante peut faire tout ce que l’on veut
    • Nous continuons d’apprendre ce qu’il est possible de réinventer dans une grande partie de nos processus métier standard
  • Il paraît cependant peu probable que l’IA retourne à l’arrière-plan

Montée en puissance de Rust et de WebAssembly, et permanence de Postgres

  • En dehors de l’IA, il se passe aussi beaucoup de choses dans le monde de la technologie
  • L’usage du langage Rust et le développement d’outils autour de Rust augmentent fortement
    • De nombreux outils sont réécrits en Rust, souvent dans l’écosystème Python
    • Rust est davantage adopté grâce à ses propriétés de sécurité mémoire
    • Parmi les exemples, on peut citer Iggy, Ruff, uv et Zed
    • Bien sûr, comme pour beaucoup d’autres technologies déjà observées par le passé, l’expression « blazingly fast » apparaît de manière très visible dans la documentation de ces outils Rust
  • WebAssembly (WASM) a été un sujet majeur de discussion, au même titre que le thème plus large consistant à tout exécuter dans le navigateur
    • L’adoption du standard WebAssembly est presque universelle dans les navigateurs et sur leurs plateformes
    • Cependant, nous avons aussi vu beaucoup de blips soumis autour de l’usage de WASM côté serveur
      • (Blip désigne une technologie ou une technique jouant un rôle important dans le développement logiciel)
    • WASM lui-même n’est pas actuellement dans le Radar, mais plusieurs blips, dont PGLite et Flutter for Web, utilisent WASM
    • Et bien sûr, l’IA est aussi présente, avec un blip consacré aux LLM dans le navigateur
  • Côté bases de données, nous avons constaté à quel point la base de données Postgres est répandue
    • Il existe diverses extensions Postgres pour la recherche de similarité, les tâches analytiques, la synchronisation partielle de bases de données, etc.
    • Ce n’est pas un phénomène nouveau, mais Postgres était particulièrement omniprésent lors de cette réunion du Radar
    • Nous voyons également de puissants nouveaux concurrents open source pour les data lakes, comme DuckDB, Iceberg et Parquet
    • Les bases de données relationnelles existent depuis très longtemps, mais nous continuons à voir de l’innovation dans ce domaine

Importance continue de la gouvernance technologique

  • Les discussions ne portaient pas seulement sur l’IA, mais aussi sur diverses approches de gouvernance technologique
    • L’IA s’accompagne de défis de gouvernance qui lui sont propres
  • Des approches de gouvernance comme Build Your Own Radar (BYOR) continuent d’apporter de la valeur aux organisations
    • Comme souvent, le livrable Radar pour une organisation est un résultat précieux, mais pas autant que le processus d’alignement qui permet de produire ce Radar
    • Un problème majeur de la gouvernance est souvent que la logique derrière certains critères est mal comprise par les équipes de delivery
    • Un exercice BYOR bien mené aide les équipes à comprendre pourquoi elles sont encadrées d’une certaine manière
  • La gouvernance exige aussi de la documentation, et produire une documentation de qualité, facile à utiliser et à jour reste difficile
    • Des outils comme Unblocked ne résolvent pas tous ces problèmes, mais ils aident en allant chercher dans les questions du contexte supplémentaire provenant d’autres sources, comme les tickets Jira et les pages wiki
    • La GenAI se révèle utile pour envelopper la documentation et répondre aux requêtes à son sujet
    • À mesure que ces outils gagneront en maturité, nous pourrons peut-être au moins progresser sur la recherche d’informations dans la documentation

Évolution de l’infrastructure as code

  • Comme mentionné dans une précédente édition de Macro Trends, l’infrastructure as code (IaC) continue d’évoluer
  • Nous observons également davantage de manifestations de l’infrastructure from code (IfC), implémentée dans des outils comme System Initiative, récemment passé en GA
  • La frontière entre application et infrastructure devient floue du point de vue du code comme de la propriété
  • Il est important de gérer la complexité de l’infrastructure et de savoir ce qui tourne réellement, en particulier dans les architectures microservices ou lorsqu’on exploite une architecture évolutive

1 commentaires

 
xguru 2024-10-29

À voir avec le Thoughtworks Technology Radar, Volume 31 publié hier.