Anarchisme, agilité et développement
L'instant musical
Premiers contacts
J'ai écouté pas mal de punk dans les années 90 / 2000, essentiellement du "punk à roulette", très présent comme bande son des vidéos de bodyboard et de skate.
Même si l'anarchisme est souvent associé au punk, ça n'est pas vraiment le cas pour les groupes de punk californiens. On est plus sûr de la provocation à base de "je montre mon cul" que des revendications politiques.
Pourtant, il y a bien quelque chose qui unit beaucoup de groupes de punk et c'est le Do It Yourself.
Le DIY
Comme énoncé, le "do it yourself" est très présent dans la culture punk. On retrouve ça à plusieurs niveaux.
Les fanzines
Fanzine, la contraction de "fan" et de "magazine" est une publication élaborée par des passionnés. On y retrouve des chroniques d'albums, des reviews de concert ou n'importe quoi d'autre.
Ils sont auto-édités à base de photocopies, vendu lors des concerts ou par courrier.
Voici quelques fanzines que j'avais achetés et que j'ai retrouvés à la maison :
Il existe même à Poitier une Fanzinothèque maintenant !
Les distros
On retrouve beaucoup de labels indépendants dans le punk qui fonctionnent souvent en petits commités. Ces labels indépendants garantissent aux groupes une totale liberté de composition, de cadence, etc. Contrairement aux majors pour lesquels le groupe est vu comme un produit.
De la même manière, il existe des distros indépendantes qui s'illustre généralement par un gars dans son garage qui vend vinyles, CD ou cassette en VPC.
Les concerts
Qui dit musique, dit concert. Dans le punk, on retrouve les circuits classiques à travers les salles de concerts, mais également des lieux altérnatifs.
Évidements, on retrouve les bars, mais également des squats, des lieux improvisés, des champs, etc.
Dans les concerts, rien de conventionnel, il m'est par exemple arrivé de jouer le prix de mon entrée aux dés.
Dans les années 2000, j'avais vu le groupe sleeping in gethsemane à Nantes au fouloir qui était un squat. Une maison habitée par des squatteurs, avec une véranda et une piscine qui servait de salle de concert et les groupes jouaient dans la piscine.
À travers les fanzines, les distros et les concerts, transparait un vent de libertés de prises d'initiatives. Ça n'est pas toujours beau, pas toujours bien fait, mais ça a au moins le luxe d'exister. C'est fait avec le cœur et c'est déjà pas mal.
Des groupes politisés
Dans le punk, on retrouve de tout, y compris des groupes cathos ! On va laisser ceux-là de côté pour se concentrer sur ceux qui nous intéressent.
En plus d'un goût certain pour la provocation, on retrouve pour certains groupes des prises de position plus marquées sur la politique.
Il existe le mouvement straight edge dans le punk et le hardcore. Dans ce mouvement, ceux qui y adhérent ne consomment pas de drogues, ni alcool, ont des relations sexuelles dans les relations sérieuses et le véganisme est souvent mis en avant.
Parmi les groupes que j'ai écoutés, on peut citer Refused, AFI, Propagandhi ou encore Raein et Yage qui sont des portes paroles de ce mouvement.
Certains groupes comme Propagandhi vont encore plus loins, Anticapitaliste, Féministe, Végan, Pro LGBTQ+ etc, ils défendent les libertés de chacun et font la promotion d'auteurs, d'historiens et de médias activistes comme à l'époque Howard Zinn, Noam Chomsky, etc.
Est-ce qu'on ne se rapprocherait pas un peu de l'anarchisme ?
L'anarchisme, c'est quoi ?
Alors que je bouinais tranquillement sur l'internet, youtube me suggère une vidéo "Ni dieu, Ni maitres" sur l'histoire de l'anarchisme. Il m'en fallait pas plus pour creuser un peu plus le sujet.
L'anarchisme tente de concilier liberté et égalité : “Pleine liberté sans égalité, c'est la jungle, Pleine égalité sans liberté, c'est la prison“.
L'anarchisme né durant la révolution industrielle du 19e siecle. Alors que tout un tas d'avancées sont faites dans différents domaines (comme la médecine), les travailleurs des usines eux vivent dans des conditions désastreuses. Ils travaillent tous les jours, 12 heures par jour, et survivent dans la misère, enfant compris.
Dans ce context, Proudhon, le théoricien de l'anarchisme sera le premier à se réclamer anarchiste en utilisant ce terme de façon positive.
Il définit 3 formes de dominations :
- l'état : par la force publique
- le capitalisme : par la violence sociale
- le clergé : par ces règles sociales
Il souhaite la destruction de ces 3 formes de pouvoir, sans pour autant recourir à la violence.
"L'anarchie, c'est l'ordre sans le pouvoir"
Il préconise de nouvelles organisations gérées directement par le peuple sous une forme mutualiste en commençant par les banques.Paradoxalement, il est aussi sexiste et pour l'esclavage, comme quoi, on peut être en avance sur certaines idées tout en étant un gros con.
Contrairement au communisme, qui prone une forme de pouvoir centralisé, les anarchistes sont contre et veulent installer un communisme libertaire sans état.
Bakounine, une figure de l'anarchisme dira :
“Prenez le plus grand révolutionnaire, mettez le sur le trône de toutes les Russies, vous en ferez un tyran en quelques années”Une histoire de luttes
L'anarchisme est essentiellement une histoire de luttes. Pour faire court, on va rencontrer deux formes de luttes principales : la grève générale et l'action directe / propagande par le fait.
La grève générale, on connait bien, on arrête de travailler, on se rassemble, on manifeste, etc. L'idée est assez simple, en bloquant la production, on fait pression sur le patronat et l'état pour obtenir des avancées sociales.
Avec la propagande par le fait, le but est de faire un coup d'éclat, une action spectaculaire pour attirer l'attention et espérer déclencher quelque chose comme une insurrection par exemple. Dans ce mode d'action, on retrouve les attentats, notamment à la bombe.
Si on caricature un peu, on retrouve une sorte d'altérnance entre le mode grève générale et le mode action directe. La grève générale a tendance à perdre de son efficacité et certains vont se radicaliser pour gagner en impact. À l'inverse les coups d'éclat et attentats peuvent vite générer une incompréhension et un rejet de la population, ce qui va pousser à revenir vers des actions plus collectives.
Est-ce que ça marche ?
Comme l'anarchisme est essentiellement une histoire de luttes, on peut se demander si ça marche ou si, il existe des exemples concrets de mise en œuvre.
Il existe quelques exemples intéressants.
Les communes de Paris
Les communes sont un mouvement insurrectionnel contre le gouvernement de versailles en 1870-1871. Les communards prennent la ville et mettent en place quelques avancées intéressantes pour l'époque. La commune de Paris a été en avance sur le droit des femmes avec entre autre l'abolition de la prostitution, l'égalité salariale, facilitation du divorce. Le temps manque pour instaurer le droit de vote des femmes.
La révolution espagnole de 1936
Probablement un des exemples le plus spéctaculaire de mise en œuvre de l'anarchisme à grande échelle.
Alors que le front populaire vient de gagner les élections en 1936, un coup d'état militaire est organisé par Franco. Des bastions de résistance se forment, notamment en Catalogne et en Aragon.
En catalogne, les anarchistes prennent le contrôle de la région et mettent en place une organisation anarchiste de la société.
Des villes entières sont prises et deviennent des terreaux d'expérimentation.
Quelques mesures et actions en vrac :
- Abolition de l’argent et salaire familiale en fonction des besoins
- 75% des entreprises autogérées en catalogne : Cinema, théatre, boulangeries, tramway, taxis, bus, hotel, restaurant, textiles, cuir, petits commerces, petite et grandes entreprises etc, gérées de façon collective sans baisse de rendement
- Education populaire / libertaire
Notre-dames des landes
En 2010, suite à un projet d'aéroport à Notre-dames des landes, des opposants au projet s'installent sur le site pour empêcher les travaux.
Les zaddistes (zone à défendre) vont occuper la zone jusqu'en 2018, date à laquelle l'état décide d'évacuer la zone par la force.
Pendant 8 ans, les zadistes vont expérimenter différentes formes d'organisations collectives, agricoles, culturelles, etc.
Les habitats sont autoconstruits, notamment en torchis. Niveau agriculture, on va retrouver de l'élevage, de l'apiculture et du maraichage. À noter qu'il n'y a aucun organe de gouvernance.
La communauté met en place un système de justice le "cycle des douze" pour gérer les conflits internes, avec un système de tirage au sort.
Et encore d'autre ?
Ils existent plein d'autres exemples locaux ou internationaux longo maï, rojava, Christiania etc, vous ferez vos propres recherches !
En résumé
Loin du bordel et de la loi du plus fort l'anarchisme se traduit plutôt par de l'auto gestion, de la mise en commun et de l'éducation populaire.
La philosophie libertaire pourrait paraître très individualiste mais, lorsqu'on fonctionne sans hiérarchie, on se rend compte que la coopération et l'entraide sont indispensables.
Et dans l'IT ?
Faisons un bon dans le temps, dans les années 2010.
En tant que développeur, nos perspectives d'évolution, c'est de devenir analyste puis chef de projet, ensuite manager. Le développeur est considéré comme un pisseur de code qui va traduire les spécifications en code executable.
Le développement est considéré comme un coût, l'externalisation en mode forfait est la norme et ça peut même aller jusqu'à de l'offshoring.
Il n'est pas rare d'avoir des frameworks d'entreprise imposés et bien rigides et les éditeurs a license (oracle, DB2 etc) sont très implantés.
Côté méthodologie, on est sur du bon vieux cycle en V en mode tunnel, tout va bien.
Le moral des développeurs est au plus bas, on peut sentir la révolte gronder.
Les sources d'oppression
Dans la situation décrite plus haut, on peut identifier une liste non exhaustive de sources d'oppression :
- Les deadline : elles poussent à la surproduction, au code de mauvaise qualité et à la dette technique
- La hiérarchie, manager ou RH : condition de travail dégradée, pression constante, manque de reconnaissance etc
- Les process : lourdeurs, rigides, inadaptés au contexte réel
- Les frameworks / outils imposés : manque de flexibilité, inadéquation aux besoins réels etc
- Forfaits, les centres de services : aller / retour incessant entre le client et le prestataire, perte de sens etc
- Les licences propriétaires, les éditeurs : coût, manque de contrôle, dépendance aux éditeurs etc
- Et bien d'autres...
Tous ces aspects nuisent au travail, les développeurs sont déresponsabilisés, le travail perd du sens. Les injonctions contradictoires sont la norme. L'entreprise veut être productive, mais les employés sont sans cesse génés dans leur travail.
Chief happiness officer
Quand ça va mal au boulot, c'est bien connu, c'est de votre faute ! vous n'êtes pas assez heureux au travail !
Pour remédier à ça, heureusement, il existe une solution : le chief happiness officer (CHO).
À ça, on ajoute avec une bonne morning routine, le tour est joué, tous vos problèmes seront résolus !
Révolte chez les devs
Dans les années 2010, c'est l'emérgence des conférences. La première édition de Devoxx France a lieu en 2012, on voit des JUG se créer un peu partout en France.
Un discours de rebellion arrive dans les conférences et certains speakers poussent les développeurs à la désobéissance, en les incitant à faire des tests, du code propre, etc.
Bref : de la désobéissance par le craft !
Le logo du podcast "Artisan Développeur" de Benoit Gantaume est assez évocateur
Un autre aspect qui va bousculer l'ordre établit, mais d'une façon un peu différente, c'est l'arrivée du noSql.
Le noSql et surtout les bases schemaless vont séduire les développeurs par leur simplicité d'usage, mais aussi parce qu'en reprenant la main sur la définition du schéma, on s'affranchit de la lourdeur des intéractions qui peuvent exister à cette époque entre les devs et les DBAs.
Pas mal de solutions noSql sont open source, il est donc assez simple de les tester et de les déployer (souvent du shadow IT).
La main mise des éditeurs de bases relationnelles est remise en cause et les bases opens sources noSql vont en profiter pour gagner du terrain.
PostgreSQL va également en profiter pour s'imposer comme une alternative crédible aux bases propriétaires.
Les temps changent, les pratiques de dév s'améliorent, le métier de dév devient plus valorisé et l'open source monte en puissance.
Qu'en est-il de la gestion de projets ?
L'agilité
En plus de l'artisanat logiciel, on voit arriver à peu près en même temps "la mode" des méthodes agiles. La ou avec le cycle en V, on part en mode autoroute, avec de grandes chances de se planter en éxplosant le budget, ou bien ne livrant pas à temps ou encore en livrant un produit non conforme, et peut-être même les 3 à la fois, les méthodes agiles promettent de remettre le client et ses besoins au centre du projet.
Mais l'agilité ça n'est pas seulement de la gestion de projet, c'est aussi une façon différente de voir son équipe et les interactions entre les membres.
Voici quelques verbatims du manifeste agile :
- Les individus et leurs interactions plus que les processus et les outils
- La réponse au changement plus que le suivi d'un plan
- Des solutions opérationnelles plus qu'une documentation exhaustive
- Construire des projets autour d'individus motivés, donnez-leur l'environnement et le soutien dont ils ont besoin, et faites-leur confiance pour accomplir le travail
- Les meilleures architectures, spécifications et conceptions émergent d'équipes auto-organisées
On commence à se rapprocher de valeurs anarchistes non ?
L'agilité d'entreprise
Au niveau des grosses entreprises, des concepts novateurs comme l'entreprise libérée ainsi que l'holacratie font leur apparition.
La définition wikipédia de l'entreprise libérée est la suivante :
Le terme entreprise libérée désigne « une forme organisationnelle
dans laquelle les salariés sont totalement libres et
responsables dans les actions qu'ils jugent bon — eux et
non leur patron — d'entreprendre. »
Ici, on n'est pas encore au niveau des usines autogérées d'Espagne car, cette organisation est imposée par les patrons, cependant des espaces de liberté existent pour les employés, et c'est quand même un point intéressant.
On regrettera quand même le retour arrière de certaines boites comme Castorama qui finalement n'ont pas réussi à maintenir ce modèle.
Safe
Avec l'engouement pour l'agilité, il fallait bien que ça arrive, le framework SAFe (Scaled Agile Framework) est né. Anti agile au possible, il séduira les grosses entreprises en quête de normalisation et de contrôle.
Le modèle SPOTIFY
Contrairement à SAFe, le modèle SPOTIFY est un modèle d'organisation qui met en avant l'auto-organisation des équipes. Il n'impose pas de process rigides, mais propose des principes d'organisation.
L'idée est d'avoir des tribus qui sont responsables d'un domaine métier. Dans ces tribus, on retrouve des squads qui sont des équipes responsables de produits. On doit retrouver dans la squad toutes les compétences nécessaires pour livrer le produit : dev, ops, BA, UX, PO, etc.
Il existe également les guildes qui sont des communautés de pratiques transverses aux squads et tribus.
À la MAIF, nous avons adopté ce modèle d'organisation depuis plusieurs années maintenant. On était organisé en silo technique auparavant DBA, middleware, tibco, cobol, JAVA... et il fallait faire travailler tout le monde ensemble pour faire évoluer une fonctionnalité. Difficile dans ce contexte de livrer rapidement de nouvelles fonctionnalités, le time to market en prend pour son grade.
Autre aspect de l'organisation à la MAIF qui n'est probablement pas dans le modèle SPOTIFY, c'est le fait que rattachement hiérarchique soit différent du rattachement opérationnel. Mon chef qui est le chef des leads developpeurs, ne travail pas de mon équipe produit. Ceci a pour conséquence qu'il n'existe pas de rapport hiérarchique entre les membres de l'équipe. Chacun remplit sa fonction et les décisions sont prises collectivement ou portées par un rôle.
Quête (de liberté) d'autonomie
C'est bien d'avoir une organisation qui favorise l'auto-organisation dans l'équipe, mais pour que ça fonctionne, il faut que les équipes aient un maximum d'autonomie.
L'autonomie ça n'est pas uniquement d'avoir tous les profils dans l'équipe, c'est aussi limiter au maximum les couplages, qu'ils soient techniques ou organisationnels.
Le DDD (Domain Driven Design) est une approche qui permet à travers le concept de context borné (Bounded Context) de découper le système en plusieurs sous-systèmes les plus indépendants possibles.
Il existe plusieurs outils et ateliers pour définir les Bounded Contexts, très bien décrits sur cette page
Un des outils que j'apprécie particulièrement, c'est le context mapping. Il permet de mettre en évidence les dépendances et les couplages qui peuvent exister entre plusieurs domaines qu'ils soient au niveau technique ou au niveau des interactions entre équipes.
À partir de ce mapping, on peut identifier les points de friction et travailler à les réduire.
Refus (d'autorité) de couplages !
Pour maximiser la liberté et l'autonomie des équipes, il faut faire la chasse à tous les couplages.
- Il faut challenger l'impact des process
- Il faut challenger l'impact des frameworks
- Il faut challenger l'impact des normes
- Il faut challenger l'impact des communs
- etc
Il n'est pas inutile de faire de la mise en commun, cependant les mises en commun doivent être réfléchies et conçues pour minimiser au maximum les adhérences.
Éducation populaire
Dans notre milieu, il existe beaucoup de manières d'appendre des choses et de se former sans suivre la voix classique de la formation.
Dans le contexte de son équipe :
- le pair programming
- le mob programming
- les kata
- la veille
- etc
Dans le contexte de son entreprise
- hands on
- conférence interne
- pizza conf (à la MAIF, on organise des visionnages de conf en mangeant des pizzas)
Dans un contexte externe
- conférence
- meetup
- etc
Mon (usine) équipe autogérée
Si on met tout ça bout à bout, nous avons une équipe autonome qui gère son/ses produits. Comme vu plus tôt, tous les métiers sont représentés :
- product owner
- développeurs / lead développeurs
- business analyst
- ops
- ...
Il n'existe pas de rapports hiérarchiques entre les membres de l'équipe, chacun contribue à la bonne réalisation du produit et chacun doit apprendre à collaborer avec les autres. La prise de decision est collective, les pratiques se construisent ensemble et évoluent en permanence.
Pour conserver au maximum sa liberté d'agir et sa capacité à délivrer, l'équipe fait la chasse aux couplages, qu'ils soient techniques ou organisationnelles.
Le savoir est partagé, les débutants doivent pouvoir monter en compétence et être intégré dans l'équipe.
Une vraie usine autogérée.
Est-ce la solution ultime ?
Bien évidemment, non !
Pour commencer, il faut trouver une boite qui accépte ce genre de fonctionnement et même quand notre employeur offre ces espaces de libertés, il faut que l'équipe s'organise. Comme on a tendance à reproduire ce qu'on connait, certains individus vont vite chercher à jouer le rôle de chef.
Ensuite, il va y avoir certains challenges à relever.
La gestion de communs
Comme évoqué précédemment, avoir des communs, c'est se coupler mais pour autant avoir des communs, c'est mutualiser de l'effort.
Mais alors que faire ? Pas de bonne réponse ici, il faudra trouver des compromis, jouer sur le design etc.
Esprit SAAS
Une façon de limiter les coupables, c'est de penser les produits en mode "software as service" (SAAS) pour qu'ils soient utilisable en self service.
On pourra limiter en partie certaines interactions avec l'extérieur ainsi que du support.
Le manque de cadre
Les équipes étant composées de profils divers et variés, il y aura forcément des conflits. Entre ceux qui veulent aller vite, ceux qui veulent que tout soit parfait, ceux qui ont besoin de sécurité, ceux qui veulent des process et du cadre etc. Je vous invite à voir la présentation d'Anne-Laure Gros qui montre comment l'équipe devient meilleure quand elle est variée.
Le challenge de l'équipe sera de prendre en compte les besoins et aspiration de chacun et de trouver des compromis.
Gestion de conflits
Quand il y a un chef, la gestion de conflit est assez simple, le chef tranche et c'est finit.
Mais dans un groupe sans chef, il faudra que le conflit soit géré par le groupe.
Comment travailler ensemble ?
Une équipe sans chef n'est pas totalement désorganisée. L'équipe est organisée par spécialisation, chaque personne de l'équipe est déjà spécialisée grâce à son rôle (dev, ba, ops, etc).
Mais je pense qu'on peut aller plus loins ! Partager correctement les informations, spécifier ensemble, prendre des decisions collectives, etc. Il y a du travail !
J'ai parcouru la chaine fouloscopie dans l'espoir de trouver des réponses, mais malheureusement même si c'est très intéressant, ce qui est montré s'applique à des groupes plus grands que nos équipes produit.
La douche froide en partant !
Un ex-collègue de promo d'école d'ingé me partageait l'effondrement d'une personne qui avait adoré travailler dans une équipe auto gérée et qui a très, très mal vécu de changer d'équipe et de revenir dans un fonctionnement classique. Et oui, ce sont aussi des choses qui arrivent.
L'équipe est fragile !
C'est connu, à chaque fois qu'un personne arrive ou qu'une personne part, l'équipe change et devra se réadapter.
Mais un changement n'est pas forcément négatif, il faudra profiter de ce nouveau membre pour amener un peu de fraicheur dans les pratiques, challenger la documentation etc.
Les sujets transverses
Dans une organisation composée d'équipes produits autonomes, il faudra trouver un mode d'organisation pour les sujets transverses.
Il arrive que des sujets soient multi domaines (par ex : contrainte juridique etc) et il faudra par moment coordonner les squads produit.
L'autonomie ne sera pas totale !
Prises d'initiatives
Le modèle tient malheureusement beaucoup sur les prises d'initiatives et sur la culture de chacun.
Obtenir cet espace de liberté ?
L'organisation du travail n'est probablement pas le combat de prédilection des syndicats, mais ça pourrait très bien être un combat à mener.
Alors ? vous êtes tous des anarchistes ?
Ça sera à vous de répondre à cette question !
Vous l'aurez compris, cet article, c'est une façon un peu fun de parler de punk, d'agilité et d'intelligence collective.
Est-ce qu'une équipe autogérée c'est de l'anarchie ? Probablement pas !
Ceci étant dit, on peut facilement faire des ponts entre des valeurs anarchistes et des valeurs de l'agilité. L'agilité ça n'est pas seulement des sprints et un package de rituels à respecter, c'est avant tout de mettre le client au centre et laisser travailler l'équipe. En plus des besoins du client, le produit doit tourner en prod (c'est le minimum), être fiable (non buggé) et évolutif (time to market). On s'en fout de savoir si la messe est en latin ou si on a bien réspecté le sprint poker ou je ne sais quel autre rituel, laissons l'équipe et l'intelligence collective faire son travail !
Ceux qui se sentent autonome dans leur travail et qui font face au micro management un peu trop zèlé, se retrouveront très certainement dans un modèle d'organisation plus anarchiste. Malheureusement, ces environnements, ne sont pas si courant et méritent d'être défendu quand ils existent.