AprĂšs une longue pause estivale, la newsletter reprend !
Au menu ce mois-ci :
đŻSoftware Teaming : le mĂȘme sujet, au mĂȘme moment, au mĂȘme endroit et sur la mĂȘme machine
đČ Revisitez vos pratiques dâarchitecture avec la thĂ©orie de la rĂ©sidualitĂ©
đAmazon met fin Ă quelques services managĂ©s pendant lâĂ©tĂ©
đ§ NotebookLM, un nouveau service de Google qui va peut-ĂȘtre changer ma façon de faire de la veille đĄ
đ§ AI agents invade observability: snake oil or the future of SRE? đ
đŻSoftware Teaming : le mĂȘme sujet, au mĂȘme moment, au mĂȘme endroit et sur la mĂȘme machine
Cet Ă©tĂ©, je me suis rendu au Meetup Software Teaming qui sâest tenu Ă Paris et qui invitait Woody Zuill, une rĂ©fĂ©rence internationale sur le Software Teaming (aussi connu sous le nom de mob programming).
Le meetup a dĂ©marrĂ© par une demi-heure dâintroduction aux concepts de coding dojo et de Software Teaming




5 personnes du public ont ensuite choisi un langage de programmation pour réaliser un kata en Typescript en suivant les consignes de Software Teaming dispensées par Woody. Ce dernier a introduit le concept comme suit :
Get a team together, to work on the same thing, at the same time, in the same space, ⊠and at the same computer ! (or many computers if you work remotely)
Pour lâavoir pratiquĂ© dans de nombreux projets, je trouve que câest une pratique efficace pour travailler sur des problĂšmes difficiles et Ă©viter un coĂ»t de synchronisation fort lorsquâil faut prendre des dĂ©cisions structurantes (on prend la dĂ©cision ensemble et on lâimplĂ©mente ensemble, on sâĂ©pargne de devoir la rĂ©-expliquer aux absents).
MĂȘme en Ă©tant familier avec la pratique, il Ă©tait intĂ©ressant dâobserver ce groupe travailler depuis lâextĂ©rieur et bĂ©nĂ©ficier des conseils et de la rigueur dâun expert qui commentait la situation.
Woody Zuill a partagĂ© quâil pratique toujours le Software Teaming en TDD, et quâil le pratique souvent comme âmode de fonctionnement par dĂ©fautâ : tous les jours pour toutes les tĂąches dans ses projets (et pas comme un outil ponctuel rĂ©servĂ© Ă certains problĂšmes).
Et vous, est-ce que vous pratiquez le Software Teaming/Mob Programming souvent ?
đČ Revisitez vos pratiques dâarchitecture avec la thĂ©orie de la rĂ©sidualitĂ©
Cet Ă©tĂ©, jâai lu le livre de Barry OâReilly sur sa âthĂ©orie de la rĂ©sidualitĂ©â, une approche diffĂ©rente de lâarchitecture.

Barry OâReilly affirme que penser lâarchitecture logicielle comme une discipline dâingĂ©nierie comme les autres (carrĂ©e, normĂ©e, prĂ©visible, sur laquelle on pourrait se baser sur des plans Ă construire comme lâautomobile, ou la construction dâimmeubles) est une raison pour laquelle nos projets informatiques Ă©chouent :
Imagine the designer of a car. How would their work look different if the properties of asphalt, rubber, aluminum and gravity were constantly changing or subject to change at any minute? Automotive engineering would not look as it does today. Building architecture would also not look the same as it does today if the properties of concrete, steel, and gravity were disordered instead of ordered. However, software engineers have happily imported practices from these engineering disciplines without a second thought, and they are simply not applicable
Il explique que si lâingĂ©nierie automobile ou lâarchitecture dâimmeuble repose sur des Ă©lĂ©ments de contexte connus, mesurables et prĂ©dictibles, ce nâest pas le cas de lâarchitecture (au sens logiciel) qui Ă©volue dans un systĂšme complexe et imprĂ©dictible: le mĂ©tier.
Il ne pourra alors jamais suffire de se contenter de rĂ©colter des exigences (non-)fonctionnelles en dĂ©but de projet ou de sâinspirer de recettes qui ont marchĂ© dans dâautres projets pour ĂȘtre certain de construire un produit qui va rĂ©sister Ă des stresseurs imprĂ©visibles (sociaux, Ă©conomiques, politiques, âŠ)
Selon lui, lâarchitecture doit ĂȘtre pensĂ©e comme une collection de rĂ©sidus. Un rĂ©sidu, câest ce quâil reste de notre architecture aprĂšs quâelle ait Ă©tĂ© exposĂ©e Ă un stresseur (quelques exemples: un compĂ©titeur dĂ©veloppe une fonctionnalitĂ© diffĂ©renciante, notre application passe au journal tĂ©lĂ©visĂ© et subit un pic de charge, le prix de lâeuro dĂ©gringole, une guerre Ă©clate, âŠ).
On corrige alors le tir, itĂ©rativement, en faisant Ă©voluer lâarchitecture pour survivre Ă ce stresseur, puis on applique de nouveaux stresseurs, itĂ©rativement, jusquâĂ espĂ©rer atteindre la criticalitĂ© : un Ă©tat de notre architecture oĂč lâassemblage de rĂ©sidus ayant ainsi Ă©mergĂ© est tel quâil devient de plus en plus difficile de trouver un nouveau stresseur capable de nuire durablement au systĂšme.
Câest un livre assez court, qui prend un angle scientifique (ça parle dâergodicitĂ©, dâhyperliminalitĂ©, avec quelques formules en LaTeX ici et lĂ ) mais qui reste accessible. Il met le doigt sur des ressentis que jâai pu vivre dans certains de mes projets, avec des situations ou des dĂ©bats passĂ©s dans lesquels je me suis reconnu. Câest un livre qui se veut aussi pratique/activable avec des exemples et des outils prĂ©sentĂ©s dans le dernier chapitre.
Si cette lecture vous intĂ©resse, je vous recommande dâabord cet article dâEric Normand qui rĂ©sume bien ce livre, puis ce talk dâintroduction de lâauteur de ladite thĂ©orie. Sâil ne vous a pas assommĂ©, alors peut-ĂȘtre que le livre peut vous intĂ©resser :)
đLivre Residues: Time, Change, and Uncertainty in Software Architecture (Barry OâReilly, LeanPub)
#Stressor #Attractor #Residuality #Criticality #DeleuzianWalk #FMEA
đAmazon met fin Ă quelques services managĂ©s pendant lâĂ©tĂ©
Au dĂ©tour de ma veille cet Ă©tĂ©, jâai dĂ©couvert cet article qui faisait une synthĂšse de quelques services managĂ©s arrĂȘtĂ©s, ou bien Ă la fin de vie annoncĂ©e :
SimpleDB: un service de base de donnĂ©es NoSQL que je ne connaissais pas, et qui semblait ĂȘtre une premiĂšre version de DynamoDB
Data Pipeline: un service pour construire des ⊠data pipelines, à base de runners EC2 et EMR
Cloud Search: un autre service que je ne connaissais pas non plus, qui semblait servir à créer des moteurs de recherche
CodeCommit: la solution de versionning de code par AWS,
Cloud9: un IDE dans le Cloud,
S3 Select: un service bien pratique pour requĂȘter des donnĂ©es prĂ©sentes dans un bucket S3 en SQL-like
QLDB: une base de données managée avec de la blockchain dedans,
Forecast: un service de prédiction pour les time series
Si la fermeture de certains de ces services mâa surpris (comme S3 Select ou Cloud9), voici ce que je perçois de ces dĂ©cisions :
Peut-ĂȘtre quâAWS redescend de la hype sur les technologies Ă base de crypto
Peut-ĂȘtre quâAWS se sent trop en retard dans la course Ă âlâenvironnement de dĂ©veloppement du futurâ vis-Ă -vis dâautres acteurs ou solutions plus avancĂ©es comme Gitpod ou Github CodeSpace
Entre le nombre de services plĂ©thoriques Ă maintenir (plus de 250) et leurs ambitions de frugalitĂ©, ce nâest peut-ĂȘtre pas Ă©tonnant de voir enfin ce portefeuille de services managĂ©s sâamincir
Et vous, vous connaissiez ces services ? Quâest-ce que leur arrĂȘt vous inspirent ?
đ§ NotebookLM, un nouveau service de Google qui va peut-ĂȘtre changer ma façon de faire de la veille đĄ
Cette semaine j'ai testé NotebookLM, un nouveau service de Google avec des vrais morceaux de LLM et de GenAI dedans.
đ Il permet de construire des notebooks: rien Ă voir avec les Notebooks Jupyter, c'est Ă prendre au sens premier du terme (un cahier, ou un classeur de notes qui portent sur un thĂšme)
đïž On peut mettre dans un notebook des fichiers prĂ©sents sur notre poste ou des liens vers des sites web ou des vidĂ©os youtube (jusqu'Ă 50 fichiers/lien par notebook), et le service permet de poser des questions Ă cette base de connaissance ainsi construite
Pour ceux qui parlent couramment l'IA, c'est un service qui permet "simplement" de construire des RAGs, mais de façon accessible pour le commun des mortels (et ça c'est chouette)
đŁïž La feature qui commence Ă changer ma maniĂšre de faire de la veille ? Une fois qu'on a dĂ©posĂ© nos sources dans un notebook, une fonctionnalitĂ© permet de "gĂ©nĂ©rer un audio". Cela gĂ©nĂšre alors un podcast oĂč 2 intervenants (homme et femme) discutent en anglais des documents que vous avez dĂ©posĂ© pour les expliquer, et le rĂ©sultat est vraiment bluffant
Ca m'est arrivĂ© dans la semaine de crĂ©er un notebook avec juste 1 lien d'un article que je nâavais pas eu le temps de lire, et d'Ă©couter le podcast dans le mĂ©tro.
Un exemple ci-aprÚs, avec un audio généré à partir d'un article de Gregor Hohpe : Cloud Automation à la DDD
Et vous, vous avez testé NotebookLM ? Comment vous en servez-vous ?
#LLM #RAG #KnowledgeManagement
đ§ AI agents invade observability: snake oil or the future of SRE? đ
Ce mois-ci, jâai lu cet article de Clay Smith qui sâinterroge sur lâimpact que les agents dâintelligence artificielle pourraient avoir sur les mĂ©tiers de lâIT.
Si les articles parlant de lâimpact de la #GenAI sur le mĂ©tier de dĂ©veloppeur sont lĂ©gion, lâauteur sâintĂ©resse ici Ă lâimpact quâils pourront avoir sur les mĂ©tiers dâOps, de SRE (Site Reliability Engineer) ou sur les experts du monitoring et de lâobservabilitĂ©.
đ§ Ainsi, de la mĂȘme maniĂšre quâil existe le SWEBench, pour mesurer la capacitĂ© dâune IA Ă rĂ©soudre une issue Github en produisant le code dâune fonctionnalitĂ© ou du code pour corriger un bug, je dĂ©couvre dans cet article lâexistence du SREBench: un benchmark pour mesurer la capacitĂ© dâun agent Ă identifier la root cause dâun incident dans un cluster Kubernetes âžïž
Avec ce genre de capacitĂ©s en tĂȘte, lâauteur se projette alors dans le difficile exercice dâimaginer la plateforme dâobservabilitĂ© du futur (dâici ~5 ans) : lĂ oĂč la littĂ©rature aujourdâhui encourage comme bonne pratique de logger des Ă©vĂ©nements structurĂ©s (des arbitrarily-wide structured log events selon le concept de âlâobservabilitĂ© 2.0â dĂ©crit par HoneyComb), Clay Smith pense (avec un certain scepticisme) quâil serait possible de construire un agent IA capable de se brancher Ă toutes sortes de sources de donnĂ©es non-structurĂ©es dĂ©crivant le systĂšme Ă observer pour corriger des incidents : code source, documentation dâentreprise (type JIRA), donnĂ©es de monitoring et tĂ©lĂ©mĂ©trie.
Source de lâimage: AI agents invade observability: snake oil or the future of SRE? - Clay Smith
Et vous, vous misez plus sur des logs structurés ou sur des LLMs pour votre observabilité ?
#Observability #Observability2.0 #SREBench #SWEBench