Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ATAM 2025 - Le code est une Res Publica

Avatar for Esprit Agile Esprit Agile
November 09, 2025
3

ATAM 2025 - Le code est une Res Publica

Avatar for Esprit Agile

Esprit Agile

November 09, 2025
Tweet

More Decks by Esprit Agile

Transcript

  1. pitch amélioré (et améliorable si besoin) "Une bataille pour le

    pouvoir" Pour vous, le code n'est surement qu'une suite d'instructions exécutées par une machine ou dans un cloud. Mais il est en réalité tellement plus que cela. Pouvons-nous même, nous faire une idée réelle de tout ce dont il est l'enjeu ? Le code est le vecteur de l'organisation des entreprises, jusqu'à ses idéaux. Ce n'est pas une technique, c'est un miroir. Et si nous osions regarder au travers, pour une fois ? À cause de la diversité à produire du code en entreprise, à cause de la multiplicité des formes d'organisations possibles, mais aussi des différents credo ou chapelles qu'ont créées les "faiseurs" de code; j'ai pu voir nombre de conflits, de résultats plus ou moins heureux, plus ou moins achevés. Une histoire avec des humains, des chef-fes, des technicien-nes, des testeur-euses, des PO, des SM,EM. CTO... et au final, si tout se passe bien, un ou des produits… Je remets tout cela en perspective avec les grandes Sociétés Humaines et l'organisation du Travail. Et je répondrai à ces 6 questions : Qu’est-ce que le code ? Qu’est-ce que le pouvoir de faire du code ? Y a-t-il une société secrète dans votre compagnie ? Quels sont les enjeux du pouvoir ? Quels sont les formes du pouvoir ? Quelles sont les techniques du pouvoir ?
  2. de l’organisation de la société • Être régi par des

    lois et non par des hommes 👉 l’idéal de la Loi 📖 • L’objectivité de la Loi La Gouvernance Par Les Nombres, Alain Supiot , p . 30 Alain Supiot - Le règne de la loi, les avatars d'un idéal
  3. Le rêve de l’harmonie par le calcul Fascination des nombres

    La mécanique céleste Mise en équation du vivant
  4. Loi, Justice & économie >Law & Economics (1960s): emprunte aux

    principes de l’ économie pour rendre la Justice >Analyse coût - avantage >Remplacer le jugement par le calcul
  5. Le logiciel dévore le monde En 2011, Marc Andreessen, père

    du légendaire navigateur internet Mosaic et co-fondateur de l'illustre Netscape, fait le buzz avec la sortie de son article, devenu très célèbre, dans le Wall Street Journal : " Pourquoi le logiciel dévore le monde ".
  6. Cyberspace is everywhere “Some things never change about governing the

    Web. Most prominent is its innate ability to resist governance in almost any form.” Tom Steinert-Threlkeld, “Of Governance and Technology,” Inter@ctive WeekOnline, October 2,1998 https://www.lemonde.fr/idees/article/2025/04/29/les-algorithmes-contre-la-societe -contester-la-soumission-au-cynisme-des-calculs_6601481_3232.html
  7. Le code construit le produit qui construit la société “la

    politique, aujourd’hui, se trouve aussi dans les algorithmes” Nadja Gaudillière-Jami, architecte.
  8. Code is ours... and remains “Code is never found; it

    is only ever made, and only ever made by us.” As Mark Stefik puts it,“Different versions of [cyberspace/code] support different kinds of dreams. We choose, wisely or not.” “You build things here, and they survive your leaving” https://archive.nytimes.com/www.nytimes.com/books/first/l/lessig-code.html
  9. Loi de Conway en 1968 : « Les systèmes (code)

    conçus dans une organisation reflètent inévitablement les structures de communication de cette organisation ». https://mixitconf.org/2023/loi-de-conway -lorsque-votre-conception-produit-se-fac he-avec-votre-organisation
  10. “Notre (code), comme toute œuvre humaine, donne à voir les

    images qui ont présidé à sa conception” citation détournée d’Alain Supiot, “La Gouvernance par les nombres” (introduction, Fayard, 2015)
  11. Cela suppose de coder nos valeurs dans les systèmes (garde-fous,

    traçabilité, réversibilité), de procéder à des essais dans le maximum de situation (temps, météo, nombres différents d’acteurs, etc.), d’enseigner ce que l’on pourrait appeler « l’humilité algorithmique », du sergent au général.
  12. politics everywhere Politics is just how humans coordinate in groups.

    It’s the invisible network of relationships, influence, and informal power that exists in every organization. https://terriblesoftware.org/2025/10/01/stop-avoiding-politics/
  13. politics in building a software • Building relationships before you

    need them. • Understanding the real incentives. • Managing up effectively. • Creating win-win situations. • Being visible. https://terriblesoftware.org/2025/10/01/stop-avoiding-politics/
  14. politics in tech Think about the last time a terrible

    technical decision got pushed through at your company. https://terriblesoftware.org/2025/10/01/stop-avoiding-politics/
  15. Technique ? Art ? Esthétique ? Vérité ? “This is

    only a foretaste of what is to come, and only the shadow of what is going to be. “
  16. Xavier Leroy: Le logiciel, entre l’esprit et la matière https://www.lemonde.fr/blog/binaire/2018/11/12/a-la-recherche-du-logiciel-parfait/

    Le logiciel est modelable (software) mais est exécuté dans du dur (hardware). Revers de cette flexibilité, le logiciel est aussi extrêmement vulnérable aux erreurs de programmation.
  17. Bring the pain forward According to Neal Ford, continuous delivery

    adopts "Bring the pain forward," tackling tough tasks early, fostering automation and swift issue detection. [3]
  18. Le code est un champ de bataille le logiciel est

    la pièce logique, structurée qui doit (sur)vivre dans un monde chaotique: celui de l'entreprise, du domaine métier.
  19. Pragmatisme Le code va devoir subir une somme de tensions

    qui vont conduire à l’émergence de normes et consensus au sein de l’appareil sociétal qui le produit : • => Entreprise • => Projet Open Source • => Bande de potes • ... • chacun ayant son propre système de référence
  20. La séparation de l’esprit et de la matière Alors que

    depuis l'aube de l’humanité, la pensée et main était inséparables, depuis le 19e, la machine sociale tend à séparer les 2. Entre le savoir et le faire, le divorce apparait au 20e siècle, prononcé par le corps social qui justifie cette division. 2 facteurs poussent dans ce sens : 1. la puissance des sciences pures (l’esprit peut imaginer l’intouchable : Einstein) 2. l’économie (rendement) du matériel (industrialisation, travail à la chaine) https://www.radiofrance.fr/franceinter/podcasts/l-heure-bleue/anti-burn-out-daniele-linhart-3345411
  21. De la sociologie dans le code Pair Programming Tour d’ivoire

    des architectes Mob Programming Superman Framework (ex. SAP, Joomla ... ) Syndrome du 󰭉 génie qui va tout vous expliquer (si il a le temps)
  22. Bicamérisme La "chambre basse" : les PO ou PM qui

    écrivent les specs, proches des besoins sur le terrain, réactifs aux besoins immédiats. La "chambre haute" : les architectes, CTO, qui définissent les grandes orientations, avec une vision technique et plus de recul (?). Et les développeurs ? de simples fonctionnaires qui écrivent le code à la demande ?
  23. Complexité systémique et culturelle ❖ l’architecte répond aux injonctions ➢

    techniques ➢ sociales ❖ le logiciel produit reprend les schémas sociaux intrinsèques de l’entreprise
  24. t

  25. réduire la couche bureaucratique du besoin à la réalisation pour

    l’utilisateur besoin code ✈ 🌾 prod PO/PM techs
  26. réduire la couche bureaucratique des besoins ... incluant: • normes

    • sécurité • cohésion technique • cohésion sociale besoin code ✈ 🌾 prod
  27. réduire la couche bureaucratique . besoin code ✈ prod Quid

    de • normes ? • sécurité ? • cohésion ?
  28. Seront nous toujours libres ? 2 problèmes Nous serons dégagés

    de toute responsabilité environnementale (tous types d’environnement : technique, mais aussi impact sur la planète) que peut nous faire sentir l’expérience directe. (in: Éloge du carburateur)
  29. bicamérisme interne (niveau entreprise) Les freins dans le modèle actuel

    : • Monopole de décision : les PO/PM + product managers décident seuls • La dette technique: peu prise en compte, tends à exploser, rend le travail des devs+ops difficile • Conflits d'intérêts structurels : optimiser pour l'engagement ≠ optimiser pour le bien-être et la faisabilité Solutions émergentes : • Comités d'éthique IA chez Google, Microsoft (et leurs échecs instructifs) • Le "Tech Won't Build It" - quand les développeurs refusent certains projets • Les IRB (Institutional Review Boards) dans la recherche - modèle transposable ?
  30. bicamérisme sociétal (niveau macro) Chambre basse = Le marché et

    l'innovation • Entreprises tech qui innovent rapidement • Développeurs qui expérimentent • Logique de l'efficacité et de la croissance Chambre haute = Régulation et intérêt général • Régulateurs (DSA, RGPD en Europe) • Représentation citoyenne dans les décisions tech • Logique du temps long et de la délibération
  31. Tensions et apories du modèle La question de la compétence

    : • Dans une république, les citoyens peuvent comprendre les lois • Peut-on comprendre un algorithme de deep learning ? • Le bicamérisme fonctionne quand les deux chambres parlent le même langage La capture régulatoire : • Les experts techniques finissent souvent dans les deux chambres • Le revolving door entre GAFAM et régulateurs • Comment éviter que la "chambre haute" soit colonisée par la "chambre basse" ?
  32. Solution : le Domain Driven Design Le DOMAINE (métier) est

    la connaissance Disséminer le DOMAINE jusque dans le CODE par le Language Ubiquitaire Écrire du code que tout le monde peut comprendre (Fluent) Masquer la “technicité” tout en reconnaissant qu’elle est cruciale
  33. La dette technique comme dette souveraine Parallèle avec la dette

    publique : • Les gouvernements empruntent pour satisfaire des besoins immédiats, repoussant le coût aux générations futures • Les organisations tech accumulent de la dette technique pour livrer rapidement, repoussant le coût aux équipes futures • Dans les deux cas : temporalité politique court-termiste vs. conséquences long terme 📐 Dette technique = Coût Marginal de la prochaine Feature
  34. la dette n’est pas bankable Pourquoi on ne la voit

    pas : • Invisibilité : La dette technique ne se voit pas dans un dashboard business • Incommensurabilité : Comment traduire "notre base de données est mal architecturée" en impact business ? • Décalage temporel : Les décisions d'aujourd'hui créent des coûts dans 2-3 ans, après que les décideurs soient partis ou promus • Asymétrie informationnelle : dépendent des développeurs pour comprendre l'état réel du système Pourquoi ils l'ignorent consciemment : • Incitations perverses : les bonus sont sur la croissance trimestrielle, pas la maintenabilité • "Technical debt is a problem for future-me" (et future-me sera ailleurs) • Pression des investisseurs/actionnaires pour la croissance rapide • Le refactoring ne se "vend" pas : pas de feature visible
  35. Le bicamérisme face à la dette technique : échec systémique

    Problème 1 : Horizon temporel inadapté • (operationel) : pense en sprints (2 semaines) • (business) : pense en quarters (3 mois) ou en levées de fonds • Dette technique : se matérialise en années. Problème 2 : Absence de représentation du futur • Dans une démocratie, les générations futures ne votent pas → sous-investissement dans l'environnement, les retraites, etc. • Dans une organisation tech, "l'équipe de 2027" n'est pas à la table aujourd'hui • Ceux qui paieront la dette ne sont pas ceux qui décident de la contracter
  36. Problème 3 : L'illusion de la liquidité • Une entreprise

    peut toujours "se permettre" encore un peu de dette technique ("on le fera plus tard") • Comme une carte de crédit : la limite n'est pas visible jusqu'au refus • Pas de "notation" de la dette technique comme pour les obligations souveraines Problème 4 : La tragédie des communs inversés • La qualité du code est un bien commun de l'organisation • Chaque équipe a intérêt à prendre des raccourcis (bénéfice local) • Tout le monde subit les conséquences (coût global) • Aucune des deux chambres n'arbitre vraiment Le bicamérisme face à la dette technique : échec systémique
  37. des dimensions politiques de la dette Le temps comme dimension

    politique du code : • Le code n'existe pas seulement dans l'espace (qui y a accès, qui le contrôle) • Mais aussi dans le temps (qui paie pour sa maintenance) • La dette technique est une violence différée exercée sur les futurs développeurs et utilisateurs L'irresponsabilité structurelle : • Dans le droit classique : principe de responsabilité (tu paies pour tes actes) • Dans le code : irresponsabilité temporelle (tu crées la dette, d'autres la rembourseront) • Les incitations individuelles sont découplées des conséquences collectives Le code comme ruine accélérée : • Une cathédrale met des siècles à se dégrader • Un code mal écrit devient "legacy" en 2-3 ans
  38. Propositions : Une troisième chambre ? La chambre de la

    soutenabilité technique Une institution qui représenterait explicitement le long terme technique : Composition : • Architectes seniors (pas impliqués dans la delivery quotidienne) • SRE (Site Reliability Engineers) - ceux qui gèrent les conséquences de la dette • Développeurs "émérites" avec mémoire institutionnelle • Éventuellement : anciens développeurs devenus CTO ailleurs (regard externe)
  39. Autres mécanismes institutionnels 1. Le "budget carbone technique" • Chaque

    équipe a un quota de dette qu'elle peut créer • Comme les quotas carbone : création d'un marché interne • Force à arbitrer : "cette feature vaut-elle vraiment 10 points de dette ?" 2. Les "technical debt amnesty days" • X jours par an où toute l'organisation arrête les features • Concept emprunté aux amnisties fiscales • Reconnaissance institutionnelle que la dette est normale mais doit être gérée 3. Le "future team advocate" • Quelqu'un dont le job est littéralement de représenter l'équipe de 2027 • Dans chaque réunion de planning : "Que penseront nos successeurs ?" • Inspiré des "ombudsman" scandinaves ou des "défenseurs des générations futures"
  40. Le cas particulier de l'open source L'open source révèle une

    dimension supplémentaire fascinante : Dette technique socialisée : • Les mainteneurs (souvent bénévoles) héritent d'une dette créée par l'usage commercial • Heartbleed (bug OpenSSL) : infrastructures critiques mondiales reposaient sur un projet maintenu par quasi-personne • Qui "rembourse" la dette d'un projet open source dont dépendent des milliers d'entreprises ? Tentatives de solution : • Tidelift, Open Collective : financement des mainteneurs • Mais fondamentalement : externalisation de la dette technique sur le commun numérique