Décentraliser le Processus de Développement

Une expérience avec Radicle et quelques idées pour augmenter l’autonomie des équipes

Arnaud Bailly - @abailly.bsky.social

Pankzsoft

2025-10-02

Une courte fiction…

Introduction

Plan

  • Pourquoi décentraliser le développement logiciel ?
  • Retour d’expérience avec Radicle
  • Conclusion

D’où parlé-je ?

  • Dev Senior/Tech Lead/Architecte/Consultant/🤡 depuis plus de 30 ans
  • Praticien convaincu de l’eXtreme Programming
  • À la recherche de l’autonomie depuis 1969

Trop Long ; Pas Resté

  • Les services centralisés échangent de la commodité contre du contrôle (et/ou des frais). C’est bien…
  • … jusqu’à ce que ça ne le soit plus
  • Des solutions décentralisées (ré-)émergent comme Radicle
  • Cela offre aux équipes à la fois commodité et contrôle sur le processus de développement

Pourquoi décentraliser le développement logiciel ?

Un peu de terminologie

  • Décentralisation ≠ Distribution
  • Les équipes distribuées sont devenues courantes dans le développement logiciel
  • Les organisations décentralisées sont plutôt rares
  • La coordination décentralisée est difficile

Pourquoi centraliser les outils de développement ?

Commodité

  • Déléguer la complexité de la configuration et de la gestion des outils à des spécialistes
  • Offrir de meilleures interfaces et “expériences” utilisateur
  • Faciliter l’intégration avec d’autres outils/services

Efficacité

  • Diminuer le TCO en mutualisant les coûts d’infrastructure
  • Déléguer le coût de la gestion de l’infrastructure à quelqu’un d’autre
  • Se spécialiser ↦ Se concentrer sur le domaine principal de l’organisation

Contrôle

  • Fournir un point de contrôle unique pour les organisations
  • “Industrialiser” les pratiques et outils à travers l’organisation et des secteurs entiers

Pourquoi décentraliser les outils de développement ?

Reprendre la contrôle

  • Éviter l’extraction de valeur effrénée des “mégacorporations”
  • Éviter la censure des gouvernements
  • Éviter le verrouillage par les fournisseurs

Donner du pouvoir aux équipes et aux individus

Vous souvenez-vous du Manifeste Agile ?

Donner du pouvoir aux équipes et aux individus

  • Il n’y a pas de solution universelle
  • Permettre aux équipes de trouver des solutions qui correspondent à leur contexte
  • Augmenter l’efficacité locale et éviter l’inflation

Augmenter la Résilience

  • Supprimer le Point Unique de Défaillance
  • Distribuer la charge à travers le “réseau”
  • S’adapter à un environnement changeant

Lutter contre l’Enshittification

Retour d’expérience

Un peu de contexte…

  • Travail sur Cardano, un réseau blockchain et une crypto-monnaie
  • La décentralisation est (ou devrait être) au cœur de la blockchain
  • Pourtant 100% du code est hébergé sur GitHub !

Expérimentations

L’équipe HAL expérimente Radicle depuis mai 2025

Qu’est-ce que Radicle ?

Radicle est une pile de collaboration de code open source et peer-to-peer construite sur Git. Contrairement aux plateformes d’hébergement de code centralisées, il n’y a pas d’entité unique contrôlant le réseau. Les dépôts sont répliqués entre pairs de manière décentralisée, et les utilisateurs ont le contrôle total de leurs données et de leur flux de travail.

Plus d’infos sur https://radicle.xyz

En résumé

Démo

Travailler avec Radicle

Les retours de l’équipe sont globalement positifs

  • Excellente expérience développeur avec la CLI
  • Flux de travail collaboratif fluide
  • Possède toutes les fonctionnalités essentielles nécessaires pour collaborer sur des “petits” projets

Quelques défauts et problèmes :

  • Décalage de fonctionnalités entre l’interface utilisateur et la CLI
  • Ne pas avoir d’autorité centrale a causé quelques “tâtonnements”
  • Nécessite une connaissance plus approfondie de git
  • 🧩 Comment faire du Trunk-Based Development correctement ?

Conclusion

Plus d’expérimentations

Radicle CI

Contrôle d’Accès aux Ressources et Audit

Collaboration démarrée avec Antithesis

  • Antithesis est un SaaS pour le Test de Simulation Déterministe
  • Nous voulions fournir ce service à toute la communauté Cardano
  • Construction d’un outil CLI pour déclencher et tracer les exécutions de tests sur la blockchain Cardano
  • Plus d’infos sur le Dépôt

Plus d’idées et de projets

  • Partager les artefacts construits localement
  • Réseau de Confiance Décentralisé pour les packages de logiciels Open-Source
  • Utiliser ATProto pour la collaboration d’équipe(s)

Points à retenir

  • Les outils et processus décentralisés sont plus résilients et ouverts
  • C’est la promesse originelle de l’informatique personnelle, du World Wide Web, des DVCS…
  • Cette promesse est souvent oubliée en échange de commodité
  • Des outils comme Radicle offrent à la fois commodité et contrôle

Crédits