Bosser en mob programming avec Hadrien MP

Durée: 83m7s

Date de sortie: 29/11/2022

Travailler binômage ou en mob sont des pratiques parfois méconnues ou mal perçues. 


Quelle est la perception des équipes ou des managers sur ces techniques de travail collaboratif ? Quelle en est la valeur ajoutée ? 


Ceux qui prônent le mob nous diront que le niveau de qualité devient vraiment optimum vis-a-vis d’un dev travaillant seul, quelles en sont les raisons ? 


Et quand on travaille à plusieurs, comment confronter les visions et approches différentes de chacun ? Comment « remplir » les besoins et envies de tous les participants ? 


On décrypte tout cela dans l’épisode du jour avec Hadrien MP. 


Pour suivre Hadrien sur Linkedin : https://www.linkedin.com/in/hadrien-mens-pellen-39071231/ 

Pour suivre le blog d'Hadrien MP : https://hadrienmp.fr/ 

Deviens un Développeur Freelance Libre : https://artisandeveloppeur.fr/freelance-libre 


Hébergé par Ausha. Visitez ausha.co/politique-de-confidentialite pour plus d'informations.

Bienvenue sur le podcast Artisan Developer, l'émission pour les programmeurs qui veulent
vivre une carrière épanouissante.
Prêts à passer au niveau supérieur ? C'est parti !
Aujourd'hui, je suis avec Adrien, Mainz Pelene.
Adrien, bonjour.
Ben bonjour Benoît.
Enchanté d'avoir sur le podcast.
Je suis ravi d'être là.
C'est un privilège en fait d'être ici.
C'est un honneur en vrai.
Ça fait longtemps que j'écoute ton podcast.
J'adore ce que tu fais.
Donc je suis ravi de pouvoir participer.
Ecoute, je prends.

Ça fait un peu gonfler les chevilles mais ça me va, ça me fait plaisir.
En ce moment, j'en ai besoin.
Ben écoute, je te propose de te présenter un petit rituel.
Présente-toi pour ceux qui ne te connaissent pas.
Oui, ça marche.
Donc comme tu l'as dit, moi c'est Adrien Mainz Pelene.
Je suis un dev passionné depuis 12 ans que je fais ça.
Je suis très à fond dans la communauté Kraft.
Donc on partage cette communauté.
J'adore le TDD notamment.
Je travaille beaucoup dessus et j'adore ça.
Et on me connaît pas mal dans cette communauté pour parler notamment de coopération.
Donc tout ce qui est binommage et surtout meuf programming.
Et justement, ça sera un peu le thème de cet épisode.
Je sais pas trop où on va mais je sais d'où on part et on peut partir de là.
C'est un article que j'ai publié sur le père Programmi que tu as lu,
qui avait l'air d'avoir pas mal raisonné chez toi.
C'est vraiment une ressource.
J'essaye l'ambition, elle est double.
Elle est de poser une ressource qui soit vraiment la plus exhaustive et la plus complète sur ça.
Alors qu'il n'y a finalement pas tant de ressources et de retour d'expérience sur le sujet.
Puis il y a une ambition aussi qui est tout simplement en termes de référencement,
autant le poser là aussi.
Et je suis très content parce que les résultats pour l'instant sont là.
Mais j'ai été à encore plus surprise.
C'est de la surprise est allée au-delà de ce que j'imaginais parce que l'article a eu
vraiment un très bon accueil sur LinkedIn.
Il a été relayé par pas mal de monde qui n'était pas arrivé depuis un moment sur des ressources
start-up en développeur au-delà des podcasts de temps en temps qui étaient commentés.
LinkedIn est devenu beaucoup plus difficile en termes d'accessibilité que ça pouvait l'être
il y a quelques années.
Et du coup, je m'en ai dit du qu'il y avait quelque chose à faire et je serais ravi qu'on continue
dans cette ligne-là parce que toi tu as une très bonne expérience du mob.
Or moi, ce n'est pas mon cas.
Et d'ailleurs, justement dans l'article, je dis que je tape un peu une limite sur ça.
J'ai un peu des a priori et que tu as un peu démonté d'ailleurs.
Donc j'ai trouvé ça hyper intéressant parce que finalement, ton expérience était totalement
contraire avec mes a priori.
Et c'est ça que j'ai envie d'aller explorer avec toi aujourd'hui.
Mais avec plaisir.
On peut déjà partir peut-être de l'article.
Qu'est-ce qui a raisonné particulièrement s'il y avait un ou deux points de l'article dans lesquels
tu t'es vraiment particulièrement retrouvé ?
C'était quoi ?
Moi, le truc qui m'a beaucoup marqué dans ton article et c'est quelque chose que je partage.
Et qu'on partage tous les deux en fait avec beaucoup de gens que je connais qui ont fait du binommage
longtemps, on va dire et qui ont aimé ça quand il y a eu une bonne expérience.
C'est que avec nos binômes, on est vraiment en synchrone.
Ça crée une espèce de fusion.
Et ça, c'est quelque chose que j'ai vraiment vu.
Tu vois, genre dans les exemples un peu classiques, je vois par exemple Thomas Pirin et Bruno Bucard.
Tu vois, quand tu les vois parler ensemble, ils sont en synchro.
C'est ce qu'on m'a dit que j'avais avec Thomas Carpeille aussi, avec qui j'ai fait du mob,
où qu'on avait ce genre de relations.
Et je vois ça arriver à chaque fois, en fait.
Et quand tu dis fusion, je pense que ça vaut le coup qu'on s'arrête deux secondes pour expliquer à des gens
qui ont... parce que c'est quand même...
Moi, j'ai vécu quelque chose d'assez particulier quand même dans un...
Tu vois, ce n'est pas spécialement un cadre intime.
Mais pourtant, il y a une forme de connaissance qui commence à être intime.
Il y a un moment où tu as vraiment l'impression que les cerveaux sont branchés en fait.
Tu vois, il y a un câble à haut débit entre les deux.
Oui, carrément, on pourrait rentrer dans des registres peut-être un petit peu malaisants,
mais ça fait presque comme si on avait effectivement une relation d'amitié de longue durée, par exemple.
Ou c'est qu'on est capable, effectivement, de...
Avec juste quelques mots, de savoir exactement où l'autre personne va aller, en fait.
Et de...
Comment dire, cette fusion, ça me permet aussi quelque chose que je trouvais hyper important quand on est en coopération.
C'est d'aller plus facilement à pousser dans le même sens que l'autre personne,
et d'être moins une sorte de frein.
Ce qui est quelque chose qui crée de la souffrance, je trouve, facilement.
On pourrait y revenir sur ça, sur le côté...
Sur la place de l'ego là-dedans et...
Et comment est-ce qu'on fait pour que ça marche bien, quoi ?
Et ok, donc tu as retrouvé là-dedans, c'est cool.
Est-ce qu'il y avait autre chose dans l'article que tu as particulièrement apprécié ?
Comme ça, qui ne me revient pas forcément, mais c'est effectivement, je trouve que le guide...
Le guide, il est vraiment très précis, et il donne beaucoup de bonnes pistes,
et je pense que c'est quelque chose de vraiment important.
C'est un moyen fait passer.
À ce stade, cher auditeur, si on a bien réussi à te donner envie de le lire,
StarCycle, je te mettrai le lien dans la description, évidemment.
Donc voilà, pense à aller le lire après notre échange.
Tu remarqueras que dans cet échange-là, dans cet article-là,
il y a notamment une partie sur le MOB, où je n'y fais vraiment qu'une allusion.
Et c'est là où on va pouvoir, avec Adrien, rentrer dans le cœur du sujet.
Parce que moi, je partais avec un espèce d'appriori,
que si tu étais déjà pas capable de binommer,
ça allait être franchement compliqué de faire du MOB.
Alors peut-être que tu en peux déjà rappeler,
est-ce que tu peux rappeler ce que tu entends toi par MOB Programming,
et puis peut-être partir de cet appriori pour voir où ça nous amène,
puisque visiblement, tu avais une expérience différente.
Oui. Alors pour moi, ma définition préférée de MOB Programming,
c'est celle qu'utilise Woody Zool,
qui a coaché l'équipe chez Hunter,
où ils ont découvert cette pratique,
même s'il y a des gens qui faisaient des choses similaires avant.
Et en gros, la manière dont ils présentent,
c'est qu'on prend toutes les personnes qui sont nécessaires à réaliser une tâche.
On les met ensemble à travailler en même temps sur un seul poste de travail.
Ok. Donc là, ce qui est intéressant dans ta définition,
c'est qu'il n'y a pas de critères de compétences, en fait.
Oui. C'est vraiment les personnes qui font.
Souvent, c'est plutôt des équipes de développement.
On va pas se mentir.
Donc il y a un gros coeur de développeur.
Mais ensuite, effectivement, ça peut être pour faire mener à bien cette story.
Par exemple, je vais avoir besoin de mon UX Designer.
Ça, c'est quelque chose qui marche très bien,
bosser avec les UX ou plutôt quelqu'un, un profil de test
ou alors j'ai besoin de mon DevOps pour ça, etc.
Mais alors si tu pars ta définition,
ok, de prendre toutes les personnes nécessaires à la réalisation d'une tâche.
Là, d'un coup, j'ai eu ma casquette du micro-manager qui va te dire,
t'es gentil, mais ils ne sont pas tous nécessaires.
En fait, tu pourrais t'en passer.
Tu penseras à quoi, par exemple ?
Par exemple, si tu es 3 à 4 dev, on pourrait facilement harguer qu'on fête un seul suffit.
C'est vrai. C'est quelque chose qu'on pourrait faire.
Souvent, c'est quand même un petit peu limite.
Je trouve que ça a beaucoup de valeur.
En tout cas, je sais qu'avec mon profil en perso,
je vois énormément de valeur à être pas le seul dev.
Je sais que j'ai des biens quand je développe.
Et être avec les bonnes personnes,
les autres bons développeurs ou bonnes développeuses,
ça va me permettre de couper ces biens.
C'est intéressant.
Là, tu es en train de me vendre l'autre truc et ça ne me bat.
J'achète.
Ça son, j'ai déjà acheté.
Mais t'es intéressant ce que tu dis sur les biens.
C'est quoi typiquement ? Est-ce que tu as un exemple en tête ?
Oui, c'est peut-être un peu cliché.
Mais c'est un reproche qu'on va déjà faire,
que je trouve plus ou moins justifié.
Mais il y a quand même un vrai fond de valeur.
Quand tu le trouves toi même plus ou moins justifié,
c'est qu'en général, il l'est.
Ouais, ouais, ouais.
C'est le fameux contre-argument de la surqualité.
C'est genre, il ne faut pas faire de surqualité.
C'est quelque chose qu'on peut reprocher facilement
à des profils plutôt craft qu'aiment bien la qualité de code, etc.
C'est jouer les trop loin.
Effectivement, il y a des fois,
je veux aller polir le code plus que c'est nécessaire
pour sa bonne vie dans un projet.
Et ce qui marchait hyper bien dans le mob où je suis resté longtemps,
on a fait deux ans de mob presque full time,
c'est qu'il y avait d'autres gens dans l'équipe
qui eux étaient très axés, genre non, on veut dépiler de la feature.
La qualité de code, c'est pas très important.
Et en fait, on arrivait très bien à trouver un compromis
et de se dire, voilà, moi j'ai besoin de plus propre.
Moi, j'ai envie qu'on avance et puis en fait, le compromis,
ça permettait de trouver un niveau de qualité
que j'ai jamais trouvé ailleurs.
En fait, c'était assez impressionnant dans cet équipe-là.
J'ai jamais vu de meilleure qualité dans un projet.
Et le pire, c'est que quand je travaille tout seul, elle est moins bonne aussi.
Ah non, mais c'est vachement fort ce que tu dis,
parce que le fait d'être à plusieurs qui sont de meilleures qualités,
ça, ça me parle largement.
Par contre, ce que tu viens de me dire,
c'est que tu as travaillé dans une équipe pendant,
pendant, enfin, visiblement plusieurs mois, plusieurs années,
et tu disais, c'était quasiment du full time,
le mob.
Oui, exactement.
Alors vas-y, raconte-nous comment ça a fonctionné ça.
En fait, c'est assez rigolo.
En plus, le début, c'est le début,
m'intéresse beaucoup de cette expérience-là,
parce que j'avais très envie de faire du mob depuis longtemps,
mais j'ai trouvé difficile à introduire en équipe.
Et ce qui a déclenché ce mob-là,
on était dans une équipe avec un autre seigneur,
et on a embarqué un junior, quelqu'un qui sortait d'école, tu vois.
Et on lui a donné un morceau de fonctionnalité à faire,
qu'on pensait être assez simple,
c'était juste coder une API sur des fonctionnalités qu'on avait déjà.
Mais c'était assez jeune, comme sujet à les APIs,
et du coup, le design n'était pas forcément solide,
tu vois, c'était pas juste dérouler une API quelconque.
En fait, il a passé une journée à développer son API,
il nous l'a mis en relecture, parce que c'est comme ça qu'on fonctionnait,
et on s'est dit, voilà, c'est sa première story,
on va se mettre avec les deux seignores à relire dans une salle avec lui,
et puis corriger en live ce qu'il avait fait,
et au final, on a passé trois jours à corriger.
Du coup, le ratio, il n'est pas ouf.
Il n'est pas terrible quitte à y être, autant le faire ensemble.
Et voilà, et c'est exactement ce qui est sorti de là,
ce que j'étais très content,
c'est que j'ai pas eu besoin de sortir le mot mob,
ce qui est hyper important, enfin, je ne sais pas si tu partages,
mais souvent, le nom des pratiques, ça fait peur.
Le nom des pratiques est un impact sur la manière dont ça va être perçu,
en bien ou en mal, clairement.
Exactement. Et puis, en fait, on s'est dit, assez naturellement,
bah tiens, on a une prochaine API à faire,
plutôt que de passer quatre jours, si on en passe deux,
voire même trois, on a du gain, mais faisons-la ensemble.
Et en gros, l'idée, c'était, on va consolider un petit peu nos pratiques
et notre vision de ce qu'on doit faire,
pour après, va potentiellement se séparer, mais on ne l'a jamais fait.
C'est excellent. C'est-à-dire que vous avez perçu tellement de valeur dans le truc
que vous avez dit, bah non, finalement, on reste ensemble.
Et donc, vous étiez trois, et vous avez bossé comme ça.
Donc, tous les jours, vous arrivez, puis vous mettez devant l'ordi, puis à trois, quoi.
Ouais, on était jusqu'à cinq,
certains moments de chaussures, de bouchements, on était effectivement trois, quatre,
en général.
Et comment ça a été perçu ça dans la boîte ?
Je pense que tu dois te douter un petit peu de la réponse.
Parce que j'ai un peu un a priori.
Tu vois, je pense que vous avez été vu comme des Martiens.
J'imagine que vous avez, parce que ça devait être assez ostentatoire et visible.
Peut-être pas ostentatoire, mais en tout cas, ça devait être bien visible.
Ça se voyait très clairement.
Donc, j'imagine que vous avez pris des remarques de gens,
alors plus ou moins sympa, mais qui comprenaient juste pas,
en fait, qui se posaient simplement la question de, tiens, c'est bizarre.
C'est quand même pas une pratique hyper répandue,
tu vois, de mettre plusieurs personnes sur une même tâche.
Et du coup, comment, ouais, quels c'est quoi les remarques que vous avez pu avoir ?
Comment vous avez géré cette partie-là, qui était un peu de la com' interne ?
Ouais, on a eu des réactions assez différentes en vrai.
Souvent, les collègues, alors il y avait quelques collègues qui trouvaient
que c'était vraiment stupide, ce qu'on faisait.
Mais ceux-là, j'ai pas vraiment géré de com' parce qu'ils avaient pas de dépendance
hiérarchique avec nous, ou de pouvoir, ou de quoi que ce soit.
Donc, tu n'en avais rien à faire, en fait ?
Oui, c'est ça.
C'est genre, j'ai essayé de leur expliquer la valeur qu'on trouvait et pourquoi c'était intéressant.
Mais ils ne la voyaient pas.
En fait, c'est tellement contre-intuitif comme pratique que si on l'essaye pas vraiment,
c'est bizarre, tu vois, intellectuellement, ça rentre pas.
Donc, ces personnes-là, j'ai pas vraiment investi.
Il y a beaucoup de gens qui étaient plutôt sur la curiosité.
On avait notamment les gens du support qui se sont mis à faire, tu vois, le support client,
qui se sont mis à faire des petits mobs où justement, ils répondaient à des calls ou
gérer des incidents à plusieurs pour se former à partir de ça.
Génial, ça devait être super riche, ça pourrait aussi.
Oui, oui.
Donc, ça a même essémé en interne, c'est ouf.
Un petit peu, mais c'est vraiment un tout petit peu.
Oui, mais ça...
Parce que le management, c'était pas le même délire.
Oui, alors que le management, comment ils ont accueilli la chose ?
Pas bien, pas bien du tout.
En fait, notre manager, c'était notre PO à ce moment-là aussi.
Et lui, il était vraiment dans la posture de ça peut pas marcher, tu vois.
Conceptuellement, c'est pas possible.
Et en fait, il ne voyait pas comment ça pouvait marcher,
mais l'avantage d'être ce mob-là, c'est qu'on s'est aligné très vite sur des postures,
sur des visions.
Et en fait, on était une unité.
Du coup, ça va être redondant, mais on était unis face à ce manager qui nous disait,
travailler comme ça, c'est bête, mais je ne vais pas vous obliger à travailler autrement.
En gros, c'est vous les professionnels, à vous de faire comme vous pensez.
Mais moi, je pense que c'est vraiment stupide.
Ah, c'est vrai, il a quand même été assez ouvert en fait.
Et est-ce qu'à un moment donné, vous avez réussi à le retourner ou pas ?
Non.
Ou il a gardé sa ligne ?
À la fin, c'est plutôt lui qui retournait tous les autres.
Donc ça a pris deux ans, mais bon, c'est des histoires de comme pas très sympa,
mais il a convaincu tous les étapes nécessaires dans le management autour pour les convaincre
que ce qu'on faisait, c'était n'importe quoi, jusqu'à ce qu'on nous interdise d'en faire.
Non !
Et ouais.
Mais alors, attends, comment ça se fait qu'ils en soient arrivés à vous interdire d'en faire ?
Est-ce que ça veut dire que vous n'avez pas...
La valeur que tu percevez, toi, lui, il n'a jamais perçu en fait.
C'est ça, mais c'est quelque chose...
Bon, c'est forcément...
J'ai un biais en le disant parce que c'est ma perception,
mais ma vision de la chose, c'est qu'ils étaient sur des croyances.
Parce qu'en fait, je leur amenais des...
J'ai essayé de leur ramener en tout cas des choses concrètes.
Je leur amenais des statistiques, des velocités où on voyait des choses intéressantes qui se passaient en vrai.
Et à chaque fois qu'ils ont dit...
Bon, ça commence à bien faire, en gros, votre manière de travailler, on leur a dit,
OK, testons une autre manière, genre prescrivez-nous une autre manière de bosser,
on va la tester, et puis on va continuer avec nos mesures,
tu vois, velocité, qualité de code, etc.
Ce genre de choses-là.
Et puis on va faire un bilan au bout d'un spring to two, par exemple,
on se met ensemble, on fait un bilan, on regarde,
et puis on voit, est-ce qu'on continue avec votre prescription ou est-ce qu'on continue comme avant ?
À chaque fois, les résultats, ils étaient en faveur du mode,
c'est pour ça que nous on disait, ben...
Non, encore, on veut encore du mode, on continue.
Attends, attends, donc ça veut dire que vous aviez des métriques un tout petit peu objectifs.
Ouais, on avait quelques-unes d'objectifs.
Il y avait en tout cas de la calimétrie qui permettait de se donner un peu une indication.
Vous avez fait, honnêtement, alors honnêtement,
avec tous les biens humains qu'on peut avoir,
et vous avez essayé différentes manières.
À chaque fois, c'est tombé en faveur du mode,
et malgré ça, rien à faire, ça finit à la trappe quand même.
Ouais, c'est ça.
Mais notamment parce que là, je parle un petit peu dans le vague depuis tout à l'heure,
mais dans les choses mesurées qu'on a,
qui étaient vraiment hyper intéressantes,
et moi je trouvais si on ignorait tous les trucs effectivement,
tu vois, un petit peu subjectifs qui sont genre la qualité de code,
ou alors comment nous on se sent dans l'équipe, etc.
parce que c'était aussi des choses qu'on regardait régulièrement.
Le truc objectif, c'était la vélocité,
ou combien de stories on sortait par semaine, par sprint, par mois.
Et en fait, on a vu un truc qui est hyper contre-intuitif,
du coup, quand on est passé de quatre en parallèle,
enfin du coup trois en parallèle, à trois ensemble, en série en quelque sorte,
on a vu une bonne ébuse à baisser,
tu vois, c'est le temps qu'on apprenne à bosser de cette manière-là,
et puis intégrer le junior,
mais on a baissé à peu près de,
ça devait être un truc du genre 20% de vélocité.
Et du coup, c'est hyper intéressant parce que le management s'attendait à diviser par trois.
Ouais, dans une bonne vision Taylorienne des choses, c'est ça.
Et du coup, ça a montré ça, pour moi,
qu'il y avait quand même un effet un petit peu combinatoire.
Tu vas me perder de la vélocité, ce qui n'est pas génial,
mais on n'en perdait pas autant que ce qu'on pensait.
Et le truc par contre qui était vraiment pour moi un argument
bien en faveur de ce qu'on faisait, c'était qu'on s'est retrouvé,
on a échangé une vélocité qui était en dans de si.
Tu vois, il y a des fois des sprints, on faisait, genre,
plein de stories, des fois pas du tout, etc.
Et c'était vraiment très très compliqué à prédire
dans un sprint qu'est-ce qu'on va faire.
Là, on s'est retrouvé avec une vélocité plate.
Et c'est à chaque sprint, on faisait le même nombre de points
et le même nombre de stories.
Ah, c'est fou ça.
Et est-ce qu'après, elle remonte un peu ta vélocité ?
Ouais, elle remontait doucement.
Donc, ce qui s'est passé aussi,
c'est ça, c'est un classique à chaque fois
qu'on intégré quelqu'un dans l'équipe,
et baisser pendant un sprint à peu près,
et puis après, elle remontait.
Mais oui, elle a monté petit à petit.
Ce n'était pas des changements énormes,
mais elle a monté.
Sans faire de manips non plus sur les points ou les stories,
ce que tu es déjà...
Donc, assez, sur cette expérience-là,
avec un petit peu de...
Voilà, cette mesure-là que vous aviez,
toi, pour toi, l'impact que ça a eu,
c'est un impact entre moins 20 et peut-être moins 10,
ou presque 0, quoi ?
Non, 0, c'est sûr qu'on était moins rapide
que notre manière de bosser avant.
Mais toutes les autres manières de bosser
qu'on nous a prescrits,
par contre, étaient deux fois plus lentes après.
Ce qui était assez impressionnant.
Ah oui.
Mais en fait, de ce que je pense qu'il s'est passé,
mon diagnostic, c'est qu'on a tellement remonté la barre,
de ce qui était la barre d'entrée de logiciels
en termes de qualité,
que ce soit qualité subjective du code,
mais aussi de niveau de défaut, etc.
On l'a tellement remonté
qu'en essayant de la réatteindre
avec les autres manières de bosser
qu'on a testé après, c'était un enfer.
Tu veux dire quoi ?
Tu veux dire que pour que chacun individuellement
vous réatteignez ce niveau-là,
ça demandait un effort qui était beaucoup plus important,
et du coup, à chaque fois que vous avez comparé,
après, de respliter le travail,
c'est là que vous perdiez de manière drastique
en vélocité.
Oui.
En fait, la dernière,
quand ils nous ont fini par nous interdire le MOB,
bon, il y avait des gens dans l'équipe,
l'équipe avait un petit peu changé de morphologie.
On a réussi à remonter
à le niveau de vélocité du MOB,
mais juste même niveau cette fois-ci.
On a réussi à remonter en bossant,
en binôme et défaut en solo,
mais avec plus de relecture.
Du tout.
Et donc, ce qu'on codait,
ça partait direct sur le master,
et du coup, il n'y avait plus de partage de connaissance,
création de silo, etc.
Et puis, après, c'est le grand classique que tu déroules.
C'est, ah, il y a un problème de facturation.
Ah, c'est pas moi, c'est M. Machin
qu'il faut aller voir ce que tu as envie d'éviter,
en général.
Ouais, c'est hyper intéressant
comme retour d'expérience.
C'est quoi, pour toi,
les plus grands bénéfices que tu as pu voir dans le MOB ?
Pour moi, le bénéfice numéro 1,
mais c'est parce que c'est un peu mon focus,
c'est la qualité de code.
C'est ce que je te disais tout à l'heure,
c'est que j'ai jamais vu de qualité de code comme ça,
dans un logiciel, vraiment.
C'est en termes de design.
C'est drôle, tu en parles un peu
comme une espèce d'âge d'or perdu,
même aujourd'hui, j'ai l'impression
que tu n'as pas retrouvé ça, en fait.
Ouais, exactement.
Mais c'est en fait quelque chose que je dis,
justement, dans la conférence qu'on a fait avec Thomas,
sur la conférence, c'est comment on réussit le MOB.
Tu vois, c'est pas qu'est-ce que c'est le MOB,
mais c'est comment est-ce qu'on peut
mettre en place des choses qui te permettent
d'aller vers de la réussite.
Je me suis rendu compte qu'en fait,
dans tous les projets où j'étais avant,
donc, des fois, vous avez du binommage, etc.,
mais la qualité de code, c'était plusieurs crans en-dessous.
Du coup, le pire, c'est que mes projets perso,
les trucs que je fais en solo,
la qualité de code, elle est vachement en-dessous aussi.
C'est ouf.
Donc, maintenant, quand on ne me fait plus faire du MOB,
effectivement, je vois que la qualité,
elle s'en ressemble beaucoup.
Donc, ça, c'est un truc important.
Bon, après, il y a eu des effets sur les niveaux de défaut.
Dans le logiciel, mais ce n'est pas que le MOB.
Il y a plusieurs choses.
Les gens n'étaient pas habitués à faire du TDD.
Donc, en faisant du MOB, ils l'ont appris, etc.
Donc, ça améliorait pas mal des choses.
C'est un size effect assez sympa quand même.
Ah oui, c'est cool.
Et c'est allé hyper vite.
En fait, quand tu ronds dans une team,
si tu as arrivé que tu es en MOB
et que les gars sont là et te disent,
bon, au fait, c'est TDD et c'est tout.
Même Arnaud parle de ça,
et c'est hyper intéressant.
La manière qu'il a d'amener le TDD dans l'équipe,
et notamment, lui, il aime bien commencer par un MOB.
Et il parle surtout pas du mot,
parce qu'effectivement, ça peut faire peur à plein de gens.
Arnaud le maire, tu voulais dire ?
Arnaud le maire, oui, ça arrive.
Il parle de comment il l'amène ça dans les teams.
Je crois que dans un podcast, il raconte,
il dit, en fait, je m'assois avec eux,
et puis je dis, ben, tiens, venez, on va coder le truc ensemble.
Bon, ben, d'accord, tu es avec un coach,
en formation, ça passe crème, tu vois, les gens.
D'accord, on voulait faire quoi exactement ?
On voudrait faire ça.
Tiens, c'est intéressant, ça.
Si on le décrivait,
avec du code, ah ouais, tiens, c'est pas bête.
Tiens, regarde, là, on la décrit.
Si on utilise un petit framework de tests,
et puis tu le fais, et puis,
ah, tiens, maintenant qu'on a notre test,
vas-y, on va le coder, le truc, tu vois.
Et comme ça, il les embarque,
jusqu'au bout d'un moment ou au bout d'une heure ou deux,
t'as un qui fait, et dis donc...
Ça serait pas ça, t'es dédé ?
Ça serait pas du t'es dédé,
est-ce que tu nous fais faire plus de deux heures ?
Mais là, ouais, effectivement, ouais, c'est ça, ouais.
Ah ouais, mais c'est ça, en fait.
Donc, tu as ce truc-là où...
Comment j'ai pu diverger sur ça ?
D'où je suis parti ?
Alors là, j'avoue, tu m'as peut-être un peu perdu.
Bah, on parlait de... Si, si, on parlait de...
Ah oui, voilà, quand tu arrives, c'est hyper fluide, en fait.
C'est comme moi, mes expériences de binomètre,
mon binôme, il me dit, c'est sur Vihaï.
Ah ouais, c'est cool.
Ouf.
Mais t'inquiètes, et franchement, j'ai appris Vihaï avec lui.
Parce qu'il me dit là, tu tapes tels touches, tu tapes tels touches,
là, tu veux insérer.
Et au bout de trois jours, franchement, j'étais quasiment autonome sur Vihaï.
Donc, ce que je veux dire, c'est qu'effectivement, quand tu...
Le transfert de connaissance, il est...
Il est juste dingue, en fait, qui peut se passer et...
Ça me fait une super transition, justement,
sur les autres avantages des trucs que j'ai adorés dans le MOB.
C'est quand c'est arrivé à la fin de mission,
j'ai eu un rendez-vous avec le CTO de la boîte.
Et qui m'a dit, bon, tu finis, je ne sais plus, c'était deux, trois semaines.
Maintenant, il va falloir écrire de la doc,
faire du passage de connaissance, tout ce que j'aime pas.
Et en fait, j'ai pu lui dire, non, tu le souviens,
jusqu'à il y a tant de temps, on bossait en MOB.
Tout ce que je connais, les autres le connaissent pareil.
À part, tel endroit, tu vois, il y avait des trucs que je l'ai fait avant qu'on soit en MOB.
Je lui ai dit tel endroit, tel endroit, mais honnêtement, ça va le faire.
Donc, je suis parti, je joue au lendemain, comme ça, rien à faire.
Ils n'ont pas eu besoin de me rappeler derrière ce que je trouve bien.
Bah, c'est que tu as bien fait ton taf.
Bah, et aussi, parce que c'était un travail d'équipe, du coup.
Alors, si on parle des a priori que j'avais sur le MOB,
c'est que c'était difficile de MOB à 3, 4, à plus de 2, en gros.
Si tu ne savais pas déjà MOB à 2, et toi, ton retour d'expérience,
ça a été dit, maintenant, finalement, c'est pas mal,
parce que tu dis lui quelque part une espèce de pression sociale.
Si, finalement, ton collègue, tu t'entends pas super bien avec lui,
ou que tu n'es pas au top de la synchro,
bah, en binôme, ça va se sentir.
Et effectivement, moi, j'ai eu des collègues avec qui,
pourtant, on s'entendait super bien,
mais qui, parfois, par exemple, pouvaient taper plus lentement.
Bah, c'est un truc qui peut paraître bête,
mais il y a des fois, ça peut ne pas coller, en fait, avec ton binôme.
Et toi, tu dis, bah ouais, mais le fait d'être plusieurs,
ça te dilue un peu ce côté désagréable.
Et ça t'enlève une pression, si tu as besoin de prendre l'air,
tu peux prendre l'air cinq minutes, le bump continue.
Enfin, voilà, j'aimerais bien que tu élabores un peu là-dessus, en fait.
Ouais, carrément.
Effectivement, mes expériences de binommage avant de faire du mob,
c'est, on ne peut pas dire que c'était des francs succès.
Ah ouais, d'accord.
Donc, tu es passé au mob alors que le binommage, ça n'avait pas été top, quoi.
Ouais, ouais.
En fait, c'est tout le monde, quand je suis arrivé dans une équipe
où tout le monde était très craft,
enfin, j'avais beaucoup de collègues qui étaient craft,
j'avais jamais fait de binommage et ils me l'avaient pas mal vendu en me disant,
« Ah, tu vas voir, c'est génial, etc.
J'en ai fait en temps plein, le binommage, c'est génial. »
Et je me suis dit, « Bah, cool, je vais essayer,
je vais me mettre avec des collègues du plateau.
Peut-être que c'était ma sélection qui n'était pas bonne aussi.
Mais ça s'est hyper mal passé.
Ah, je vais y raconter.
Raconter.
Bah, en fait, c'est par exemple, il y avait une personne qui venait d'arriver
dans l'équipe sur un sujet un peu chaud, un truc.
Et ils avaient pensé, le management, la mission un peu comme solo,
il va faire son truc pendant 2-3 mois dans son coin,
ce qui n'est pas une super idée.
De base, mais voilà, c'était un sujet un peu chaud
où moi, je fais déjà un peu de connaissance.
Et je me suis dit, « Bah, tiens, pour l'onborder,
pour le faire venir dans l'équipe, lui apprendre le truc,
je vais bosser à côté lui,
puis on va commencer à coder son truc ensemble,
et ça va être cool.
Et en fait, on n'était vraiment pas raccords.
Mais on n'était raccords sur pas grand chose.
Moi, j'étais à fond pour faire du TDD,
il ne voulait pas en entendre parler.
J'aimais bien avoir un rythme style Pomodoro,
prendre des pauses régulières, lui, pareil, il n'en voulait pas.
Enfin, c'était très très compliqué de se mettre d'accord sur tout.
Et à tel point que à un moment, je lui ai dit,
« Bah écoute, au bout d'une journée et demi de test,
j'en avais tellement marre, je lui ai dit, est-ce que ça te va ?
Si je te laisse continuer à explorer un petit peu de ta story,
puis dès que tu as une question, tu viens me demander,
et puis on reprend.
Mais voilà, j'ai eu besoin de m'enfuir en quelque sorte de cette expérience-là,
et ça m'a souvent fait ça.
C'était la question qui suivait,
parce que là, c'était peut-être juste un mauvais match,
mais visiblement non, ça sert à produit.
Ouais, en fait, les bonnes expériences de binomage que j'ai eues,
je les ai eues une fois qu'on s'est fait interdire le MOB,
ou qu'on s'est mis à faire du binomage,
avec mes collègues de MOB, le binomage, ça marchait nickel.
Ah, mais comment tu l'analyses ?
Parce que vous aviez déjà,
dans les trucs qui ont frotté et qui ont posé problème,
visiblement, ça a des pratiques.
Donc le fait d'avoir harmonisé les pratiques avec le MOB
fait que vous vous êtes retrouvé.
On était déjà beaucoup plus raccord.
Alors sachant qu'après, il y a quand même certaines personnes de l'équipe
que j'évité quand même, un binomage, tu vois,
où je me disais, on va faire du binomage.
Est-ce que tu es sûr que tu veux faire avec moi,
parce que j'avais envie de faire tel tâche avec telle autre personne, etc.
Qu'est-ce qu'ils faisaient que tu les évitées ?
C'était, on parlait de pression sociale,
je ne sais pas si c'est le bon terme,
mais en tout cas, il y avait une certaine tension.
Quand on travaillait, c'était beaucoup plus dur d'arriver à du consensus.
J'avais l'impression que c'était lent.
On n'arrivait pas justement à parler de pousser dans le même sens.
Ça ne poussait pas dans le même sens, qu'on rentre trop dans le clash.
En fait, on s'épuisait.
Alors là, tu touches à un point qui m'intéresse particulièrement,
parce que j'ai une vision du truc.
Et ça, j'ai envie de formaliser cette idée.
J'en ai pris conscience pas longtemps.
Moi, pour moi, pour que ça marche,
je fais un gros parallèle entre le binommage et l'impro.
L'impro, alors je ne suis pas un expert d'impro,
mais j'ai fait quelques cons sur le sujet.
Et tu as ce truc de quand tu es en match d'impro,
tu dois faire avec ce que l'autre amène.
Sinon, c'est même un carton où tu es sanctionné,
tu as une faute de déni ou de refus de l'autre,
je ne sais plus comment ça s'appelle.
Et en fait, l'histoire, elle ne se construit comme ça,
parce que si imagine que tu arrives et que tu dis « voilà,
salut, je suis ta grand-mère, je t'amène une bonne tarte ».
Et l'autre, il arrive, il prend ce que tu amènes,
et le maire la poupbête, il dit « Ben moi, en fait,
non, tu n'es pas ma grand-mère, tu es ma fille,
et voilà, je te donne un bon bon ».
Il est donné dans Matrix.
Et là, en fait, une histoire, elle ne marche pas,
en fait, elle, ça ne donne rien.
J'ai l'impression que c'est un peu la même chose dans le binommage,
c'est que quand l'autre arrive avec quelque chose,
il faut le prendre, en fait.
Alors, tu peux avoir quelque chose de mieux,
et là, tu peux le proposer,
comme soit une amélioration, soit une note d'iraction.
Mais si jamais, ce n'est pas franchement mieux,
objectifement, ce que tu amènes,
à part dans ta tête et dans ton égo.
Et c'est souvent le cas, en fait,
c'est juste qu'on a des visions différentes
et on l'aurait fait différemment.
Et c'est souvent qu'en fait,
il n'y en a pas une qui est spécialement meilleure,
ou en tout cas, on n'a pas encore le niveau d'information
pour juger si qu'elle est l'approche qui est la meilleure.
Et du coup, il faut juste faire et avancer.
Et si tu fais ce refus de ce qu'amène l'autre,
là, c'est hyper dur, en fait,
de travailler en binommage, c'est hyper dur.
Et donc, c'est hyper intéressant.
Comment est-ce que tu arrives à ce consensus-là ?
J'ai l'impression qu'il y a vraiment un état d'esprit à avoir.
Alors, on va peut-être partir dans de la philosophie,
mais qui est de l'accueil de l'autre,
en fait, d'accueillir ce que l'autre amène,
mettre son égo de côté,
bah ouais, peut-être que toi,
tu l'aurais fait autrement,
mais ce n'est pas pour autant que c'est mieux, en fait.
Qu'est-ce que tu en penses de ce que je viens de te dire ?
Ça résonne ou ?
Ah oui, oui, je suis complètement d'accord.
Ce que je vois comme nuance,
de ma perception de la chose, en tout cas,
c'est qu'on arrive dans un binôme ou dans un MOB,
chaque personne avec des besoins,
des besoins, des envies.
Si on n'arrive pas à mettre à accord ses besoins,
à remplir ses besoins de chacune des personnes,
en fait là, le binôme ou le MOB ne fonctionne pas.
Et remplir ces besoins quand ils sont différents,
en binôme, c'est assez dur.
Et souvent, les raisons de tension,
c'était toujours en parler de,
moi j'aime bien aller un peu trop loin dans le design
ou dans la qualité de code.
Il y a une autre personne,
par exemple, qui va être très je veux dépiler
de la fonctionnalité.
Ça, c'est hyper dur à raccorder en binôme, en fait.
Alors qu'en MOB, ça se raccordait mieux ?
Oui.
Et en fait...
Pourquoi ?
Qu'est-ce qui se passait ?
Qu'est-ce qui faisait que ça se passait mieux ?
C'est le fait qu'il y ait d'autres personnes,
ça venait équilibrer un peu l'échange,
on dirait comme ça ?
Exactement.
En fait, c'est à deux.
C'est un duel, en fait.
Et oui.
Alors ?
À deux, si tu as deux visions divergentes,
tu as un choix en faillite.
Il y en a un qui gagne, l'autre qui perd quelque part.
Ouais, après, ça c'est assez maniquant.
Il y a plein de manière de trouver des compromis
qui remplissent les besoins de l'un et de l'autre.
Ce qui est cool quand ça arrive.
Mais des fois, ça se lève pas et ça clash.
Mais des fois, tu peux buter...
Ouais, voilà, c'est ça.
Tu vois, sur la question de « On fait en TDD »,
tu peux pas faire à moitié, tu le fais ou tu le fais pas.
Ouais, c'est ça.
Ou alors, c'est piquement...
Tu vois, collades, elles sont en fin de ligne
ou elles sont au début de ligne.
On peut repartir dans des trucs très bêtes.
Mais tu vois, c'est par exemple...
J'ai envie de faire un refactor de ce qu'on est en train de faire.
J'aimerais bien extraire une classe et genre,
« Ah non, tu fais chier, il y en a marre des classes,
tu vois, par exemple. »
Là, ça devient compliqué.
Donc là, en bidem, ça va être compliqué.
Et du coup, tu dis en meub,
par contre, qu'est-ce qui se passe à ce moment-là ?
Au moment où tu dis « J'aimerais bien faire un extra class,
que l'autre te dire « Non, tu vas en encore douze tickets,
qu'est-ce que tu nous racontes ? »
Et là, qu'est-ce qui se passe ?
En fait, c'est une forme d'inertie, je trouve.
Et on a tendance à continuer à avancer plus facilement
avec le mob.
Et tu vois, c'est genre...
Il y a quelqu'un, genre par exemple,
là, tu parles un peu une angoisse, tu vois.
C'est genre...
J'ai pas envie de refactor parce que j'angoisse
par rapport à tout le reste du travail qu'on a
et sur lequel je me suis plus ou moins engagé.
Avec le groupe.
Si tout le monde partage cette angoisse,
par exemple, si moi, je suis tout seul à dire,
genre « Bah moi, j'ai besoin de refactor ce truc-là. »
Et le groupe dit « Non, on est trop en fluide,
vraiment, on est vraiment en retard, il faut qu'on avance. »
Moi, je vais avoir de la facilité à dire « Ok, tu vois,
je ne sais pas grave, laissez ce truc de côté et avançons. »
Comme ça, tout le monde se sent mieux.
Et souvent, les refacteurs, c'est pas si important que ça pour moi.
Et au pire, je prends une heure de plus le soir,
tu vois, je le fais au besoin, quoi, en me détachant du mob.
C'est beaucoup plus facile d'avoir...
Il y a plus rarement en mob des gros duels.
Tu vois, genre par exemple, si t'es 4
et que t'as deux personnes avec un avis,
deux personnes avec un autre avis, ça c'est assez rare.
Et ce qu'on faisait pour régler ça,
c'était tout simplement, bon, on s'amusait avec les systèmes de vote, tu vois.
On se listait des possibilités.
On prenait un système de vote,
genre par exemple le jugement majoritaire ou qu'on d'or c'est,
randonniser, on trouvait ça rigolo.
Et on se trouvait la solution comme ça.
C'est le qui faisait le plus consensus.
Alors c'est hyper intéressant parce que,
du coup, il y a plusieurs aspects dans ce que tu dis.
Tu as le côté équilibre du groupe
où le groupe t'amène une certaine inertie.
Et si finalement ils te disent tous,
ah, on est en flip, tu as plus tendance à faire confiance.
A l'inverse, si ils te disent,
bah non, on est serein, celui qui est en flip,
il aura plus tendance à se dire,
oh ben ça va, si le groupe est plus serein, c'est peut-être...
Et c'est pas sur lui qu'on va taper.
Ouais, c'est ça.
En fait, c'est ça.
Quelque part, tu te décharges un peu de la responsabilité sur l'ensemble du groupe
et l'ensemble du groupe
prend ensemble la responsabilité de ce qu'elle est en train de faire.
Et donc, du coup, tu peux plus facilement éviter,
peut-être, les interférences ou les bruits
d'une personne qui va être plus fatiguée
ou qui aura passé une salle nuit
ou qui va être dans une période un peu plus stressée.
Exactement.
Et tu vas comme ça venir écriter un peu.
Et puis, il y a cette notion que j'aime beaucoup,
que j'avais pas vraiment perçu
et que tu amènes un regard hyper intéressant
qui est qu'elle est mon besoin, en fait.
Comment est-ce qu'on fait...
En fait, comment est-ce que j'arrive avec mon besoin ?
Est-ce qu'il y avait un carrément un moment où
vous le posiez sur la table ?
Moi, mon besoin, c'est ça, de manière assez explicite ou...
Pas vraiment.
Pas vraiment, parce que c'est des sujets qui sont un petit peu...
sensibles, je trouve.
Alors, moi, j'aime beaucoup le sujet des corps protocols.
Je sais pas si tu connais ce sujet-là.
Un petit peu, ouais.
C'est quelque chose que j'essaie d'amener un petit peu.
Mais concrètement, j'étais aussi inspiré de ce que fait Hunter,
en fait, ou eBoss, je sais plus, je crois qu'ils sont trois,
quatre mobs maintenant qui eBoss non-stop.
Ils font des rétros à chaque fin de journée.
C'est ce que je faisais beaucoup en binommage, moi.
Ouais, et du coup, en fait, on faisait ça.
C'était les bons moments pour dire...
Genre, comment est-ce qu'on s'est sentis pendant cette journée ?
Est-ce que c'était confortable ?
Est-ce que c'était inconfortable ?
Pourquoi y en essayez de creuser comme ça sur les besoins ?
Alors, moi, j'aime bien, effectivement, parler des besoins,
mais je fais attention parce que genre...
Un besoin, ça peut facilement cacher un jugement.
Et si tu dis genre, j'ai besoin, par exemple,
un truc qui sera horrible, ça serait dire,
j'ai besoin qu'on arrête de faire de la merde niveau qui est état de code.
C'est hyper violent.
Effectivement, les autres peuvent mal le prendre.
Ouais, et puis le besoin, normalement, c'est quelque chose...
Enfin, les gens le comprennent assez facilement.
C'est quelque chose de pas vraiment négociable, tu vois.
Si tu as un besoin, il est rempli ou il n'est pas rempli, quoi.
Ouais.
Et du coup, si ton besoin, c'est qu'on arrête de faire de la merde,
là, c'est foutu, c'est mort, quoi.
Par contre, arriver et dire...
Enfin, si on arrive à le poser et dire genre,
j'ai besoin d'être fier de ce travail qu'on accomplit sur la story,
pour l'instant, je l'ai pas trop.
Ça, ça peut mieux passer, quoi.
Bah oui, parce que dans le premier cas,
tu aimes clairement le jugement sur le travail des autres.
Dans le deuxième, tu parles de toi et de ton ressenti.
Donc, un ressenti personnel est indiscutable, en fait.
Il peut être divergent, on peut le proposer de manière de voir les choses,
mais si tu n'es pas fier, tu n'es pas fier, tu vois.
On peut me donner...
Mais du coup, c'était pas, en tout cas, pour répondre à ta question.
Ce n'était pas une règle qu'on avait de se dire,
on exprime nos besoins directement et clairement.
Mais c'était quelque chose qui arrivait assez facilement.
Ce que je comprends, c'est qu'en tout cas,
ça a venu en filigrane dans vos échanges,
peut-être un peu plus dans ces moments de rétro que tu veux,
que vous organisiez le soir.
Et tu dis, c'était assez délicat.
En fait, ce que j'entends, c'est un peu intime et délicat de poser ça.
En en parlant avec toi, je pense qu'il y a des gens qui ne seraient même pas capables
de le verbaliser très directement, qui auraient besoin d'aide pour le verbaliser,
parce que ça demande déjà à avoir une certaine conscience de soi
pour être capable d'exprimer clairement ces besoins.
Donc, en fait, ce que je trouve dingue, c'est qu'il y a une dimension humaine
qui est hyper forte là-dedans.
C'est ce que j'adore.
Alors que je suis hyper introverti et un peu antisocial en vrai.
Mais paradoxalement, j'adore ça.
Oui, je trouve ça super.
Mais typiquement, un des trucs que moi, j'ai beaucoup aimé
et que je ne vois pas beaucoup de mobs faire et que je trouve dommage,
c'est souvent les gens ont une vision assez rigide de qu'est-ce que c'est un mob.
C'est une fois que tu les mets à bosser un mob,
c'est qu'on doit bosser ensemble tout le temps non stop.
Ce qui n'est pas forcément vrai.
Une fois où on parlait de besoins, ça a bien marché.
C'était justement avec Thomas, on était raccord sur
on a besoin, on a envie, en tout cas, de pousser plus loin le refactor sur cette story.
On pense que ce n'est pas encore assez propre ou assez maintenable, etc.
Et à ce moment-là, on n'était que trois.
Et l'autre personne, nous, nous disait genre,
« Ben non, le refactor, ça me saoule.
Tu vois, avec des termes, ce n'est pas forcément enrobé.
Mais là, ça me saoule.
Et puis moi, j'en ai marre du refactor, je veux faire autre chose.
Et au final, le besoin est assez clair à comprendre derrière.
Et on lui a dit, tout simplement, genre, « Ben, c'est pas grave,
tu prends la prochaine fonctionnalité.
Tu vois, dans ton coin, tu commences à dépiler.
C'est cool, tu vas faire la découverte, peut-être poser quelques tests, etc.
Nous, on finit notre refactor.
Quand on en est content, tu décides, est-ce que tu as envie de revoir ce qu'on a fait ou pas.
Et on te rejoint sur la story, puis tu nous brifes, et puis on continue.
Et ça, c'est cool, tu vois.
C'est tout le besoin rempli d'un coup.
Oui, oui.
En fait, de s'autoriser à splitter le groupe,
et faire complètement partie de la vie du groupe, il n'y a pas ce truc de…
C'est vrai que quand il y a des phases où je travaille en binôme,
il y a des fois où je me sentais un peu obligé, tu vois.
Et sur certaines tâches, soit parce que d'abord,
le binommage est quand même quelque chose d'assez intensif sur le temps cognitif,
et des fois, ça fait du bien de faire un truc un peu plus shallow,
de travailler un peu plus superficiel plutôt qu'un du travail profond.
Et du coup, tu vois, tu fais, je sais pas, un truc qui me vient en tête.
On a fait pas mal de systèmes où il y avait un peu de crud.
Bon, tu te prends une heure, tu poses tes crud, tes machins.
Ça demande peu de travail de réflexion.
Il n'y a pas tellement de feedback à donner, c'est assez sa roule.
On a fait des dizaines et des dizaines de fois.
Je partage complètement avec toi ça, oui.
Et j'avais une sorte de culpabilité à le faire.
Mais dans ce que tu dis,
parce que tu vois, je crois que j'étais rentré un peu dans cette espèce de non-fobinomé tout le temps.
Mais en fait, non, pas du tout, en fait, t'as raison.
Et visiblement, en plus toi, tu dis,
bah non, ça a été extrêmement bénéfique dans les expériences que tu as eues.
Mais même, en fait, c'est peut-être un peu paradoxal,
mais je considère que le travail tout seul, ça a beaucoup de valeur.
Et même quand on était, tu vois, un des objectifs principaux de notre MOB,
c'était faire monter en compétence le junior.
En tout cas au début.
Et ça a été hyper positif à certains moments où on s'est dit,
où lui-même s'est dit, là j'ai envie de faire cette story là tout seul.
Et c'était vraiment top parce qu'à la fin de cette story, on s'est dit,
genre, ah ouais, en fait, le chemin que lui, il a parcouru en étant dans le MOB, c'est tout ça.
Et c'était vraiment phénoménal.
D'ailleurs, c'est genre, c'est pas que le MOB,
c'est lui aussi qui avait vraiment hyper bien bossé.
Mais la différence, c'était le jour et la nuit.
Et ça permet de consolider ce que t'as appris.
Et puis d'engranger ton propre cerveau.
Parce que la dynamique de cerveau en MOB, et même en binôme,
en binôme, c'est un peu plus, tu restes un petit peu dans ton processus connectif classique,
même si ça change un peu.
En MOB, c'est très, très différent.
Ah, tu fais une grosse différence entre le binôme et le MOB.
Ouais, je trouve que ça change pas mal.
Ouais.
En tout cas, c'est peut-être très personnel.
Mais moi, ma posture, elle est très différente.
C'est assez facile, je trouve, en binôme, de faire du ping-pong d'idée.
En quelque sorte, c'est genre, ah tiens, j'ai une idée, on va faire tel truc.
Et puis là, c'est ton cerveau qui fonctionne patati patata.
Et puis l'autre qui dit, c'est bien ou tu déroules.
Alors, ah tiens, à ce moment-là, j'ai une autre idée, boom, ping-pong, etc.
Et en MOB, en fait, il y a beaucoup plus de temps d'observation, je trouve.
Ou c'est pas forcément toi qui va donner les idées et tu suis le flow, etc.
Et ça change beaucoup de choses.
Alors que quand t'es tout seul, je suis face à mes propres incohérences.
Est-ce qu'il y avait un leadership plus marqué ?
Tu vois, j'ai pu rencontrer des équipes où le MOB était assez marqué par le TechLead ou un peu le chef d'Orcas.
Tu sentais qu'il n'y avait pas forcément, en tout cas, l'impression que ça donnait,
mais de l'extérieur et sans avoir vécu trop longtemps,
que ça y avait quand même un leadership très marqué et que c'était lui qui donnait la direction.
Est-ce que tu as pu voir ce genre de choses ou au contraire, le leadership, tu sentais qu'il était assez réparti ?
Pour être très honnête, je pense que s'il y avait quand même un certain leadership,
moi j'ai tendance à pousser un peu fort aussi sur les pratiques auxquelles je crois et que j'aime bien.
Donc pendant un moment, c'était un peu moi qui poussait.
Mais je m'arrangais pour être assez discret pour que ça passe parce que,
effectivement, quand c'est flagrant, ça marche pas.
C'était pas moi le TechLead d'ailleurs.
Mais le TechLead était très, on était très à un niveau de coopération et pas de leadership.
C'était vraiment cool, c'est juste on partageait nos besoins et puis nos visions tech et on s'alignait comme ça.
Mais même à la fin, il y avait quand même une partie des gens qui étaient plus à suivre
et d'autres personnes qui étaient plus à pousser.
Je sais pas si c'est clair, mais typiquement avec Thomas Carpay et puis avec Thomas Ployon aussi qui nous a rejoint un moment,
on poussait beaucoup vers du design objet bien pensé, genre inspiré du fonctionnel typiquement,
avec le TDD poussé peut-être un peu loin, du Pomodoro assez strict, etc.
Et les autres qui n'étaient pas convaincus sur cette pratique mais qui suivaient quand même derrière.
Donc il y avait une sorte de leadership, mais ce que je comprends,
c'est que ça ne fago-cité pas forcément le truc, ça donnait plutôt au contraire d'une sorte de cadre
et qui finalement a plutôt bien survécu quand vous êtes disbun, quand le groupe s'est réparti.
Oui, j'étais assez surpris d'ailleurs, je t'avoue, parce que quand ça s'est arrêté
et qu'on s'est dit à un moment, on a fait cette expérience là en boss solo.
Et solo avec des poules request, je crois que c'était un petit peu le délire.
Et je me suis dit, ou là là, en gros, il y a telle personne et telle personne,
ça va faire mal quoi.
Leur lecture du code, ça va faire mal, en fait non.
C'était cool.
J'étais hyper surpris, mais on s'était vraiment bien aligné.
Et les gens, même si j'avais l'impression de pousser fort, genre dire,
genre non, là il faut réfacto plus, il faut réfacto plus, là on n'est pas encore bon.
En fait, quand ils étaient tout seuls, ils traînaient peut-être les pattes dans le mob,
mais tout seuls ils arrivaient au même genre de truc que j'aurais voulu faire.
Trop bien.
Donc, c'est que ça avait quand même marqué.
En fait, ils gardaient une posture un peu passive,
mais finalement, ils m'y devaient de leur propre responsabilité,
en sachant qu'il allait avoir une PR.
Ils avaient peut-être monté un peu le niveau d'exigence vis-à-vis de même.
Ou peut-être qu'ils avaient peur que je sois vraiment très très chiant à leur lecture.
C'est ça aussi.
Oui, donc ça, je ne sais pas.
En tout cas, ça faisait partie de mes valeurs, en tout cas,
dans ce mob que j'avais envie d'infuser,
mais c'était que tout le monde puisse participer.
Et que ce soit pas mon mob, en fait,
mais que ce soit notre mob ou qu'on façonne notre manière de travailler ensemble.
Mais quand tu en parles,
il y a vraiment cette sensation d'une équipe qui fait corps, en fait.
Oui.
Et ce que je comprends, c'est que tu n'as toujours pas retrouvé ça.
Alors aujourd'hui, qu'est-ce qu'il fait que...
Exactement.
Est-ce que c'est devenu un critère chez toi dans tes recherches ?
Là, je sais que tu viens de te lancer en frillantes.
Est-ce que c'est un sujet...
Est-ce que c'est quelque chose que tu regarderas avec attention,
ou tu es pragmatique, il faut d'abord faire avant tout faire bouillir la marmite,
comment tu vois les choses ?
Avant tout, avant d'avoir une marmite,
je veux aussi avoir les pattes pour l'instant.
C'est un petit peu mon objectif frillance.
Donc je ne suis pas très regardant.
Là, avant d'être frillance,
ça faisait un an et demi que je bossais chez Sunday,
justement la boîte où est Arnaud Lemaire en ce moment.
Et ça faisait vraiment pas partie de la culture technique.
Le mob, le binommage, oui.
Mais il y a cette espèce de fossé
entre les deux pratiques que je trouve assez impressionnantes.
Je vois beaucoup de gens qui sont convaincus du père.
Et en fait, le mob, ça paraît être une hérésie.
Oui, tu es carrément hérésie.
Tu ne maches pas tes mots.
En gros, souvent, c'est pas aussi tranché que ça.
Ça va être des opinions, style.
Le mob, c'est intéressant, mais que de temps en temps,
sur certains trucs très précis.
Et pour tout le reste, c'est albinom.
Donc, on ne faisait pas de mob.
Et c'est vrai qu'il y a des choses qui m'ont manqué.
Des effets, même pas juste sur la manière de travailler,
mais des effets sur le logiciel qui m'ont beaucoup manqué.
Comme quoi ? Parce que tu vois, j'ai l'image Sunday,
piloté par Arnaud,
j'ai quand même pas mal confiance en lui,
qui peut diffuser de pratiques et de culture.
Donc, je me dis, ça doit faire,
ça ferait probablement partie des boîtes
dans lesquelles j'aimerais bosser.
Donc...
Si ils prennent des frilances à un moment,
j'aime toi dessus.
Mais en dehors de ça,
ce que je veux dire,
c'est que je me serai attendu à une culture hyper réceptive.
Et tu dis, sur ce point très particulier du mob,
pas forcément.
Oui, oui.
Et c'est quoi les impacts qui t'ont manqué ?
Les effets numéro 1
qui m'a manqué beaucoup.
C'est...
La puissance de refactor.
Et c'est en fait quelque chose où on en parlait
d'inertie
et puis de...
C'est un côté réconfortant,
parce que tu partages les conséquences des actes.
Quand tu es en mob, quand on est 4 à faire une connerie,
ça fait moins mal que si tu l'as fait tout seul.
Parce que tu as les gens qui sont là
et tu te dis, si on s'est plantés en équipe,
bon, c'était presque inévitable.
Et ça nous donnait un pouvoir
qui était dingue, c'était de se dire.
Ici,
le système qu'on a choisi ne marche pas.
Donc je ne sais pas,
ça peut être un design particulier,
ça ne marche pas et on veut tendre vers
tel système.
On avait un gros problème de perte dans l'appli
et tout ce qu'on tentait,
ça avait trouvé ses limites.
On s'est dit, le système qu'on a, il faut qu'on le transforme
vers du CQRS.
En étant en mob, c'était hyper facile de s'y mettre.
On a pu faire des refactos de grande orvergure,
parce qu'on était tous là.
On savait qu'on allait péter le code de personne,
à côté, et qu'on pouvait procéder
petit à petit et s'accorder sur
comment on a envie de le faire, que tout le monde
le comprenne, faire des refactos assez
importants.
Quand j'étais chez Sonday,
il y avait pas mal de développeurs,
même si on était bien découpés
dans des contextes définis.
Si t'es un binôme
et que tu vois un système qui ne marche pas
et que tu te dis il faudrait aller vers tel autre,
c'est très compliqué.
Il faut réussir à chopper tout le monde,
se mettre des réunions, ce qu'elle est des réunions pour se dire,
le système qu'on propose c'est tel truc,
est-ce que vous y croyez,
ou si vous y croyez pas, et essayer de convaincre
et le mettre en place dans la durée, etc.
C'est hyper difficile.
Est-ce que c'est lié à la taille
parce que l'équipe était beaucoup plus grosse
et c'est aussi lié aux contextes,
des bandes de contexte un peu différents
et que ça crée un peu des zones, c'est ça ?
ou tu parles là de modifier ton propre système
ou celui de...
De modifier uniquement quelque chose de très localisé
dans le contexte par exemple.
Et même ça tu dis, le fait de pas être en mob
crée une inertie dans le processus de décision
qui était décourage en fait, c'est ça que tu veux dire ?
Oui c'est ça, c'est ça.
Typiquement un moment on a commencé,
moi j'ai beaucoup bossé sur le front
de Sunday, le front bitouci
et à un moment on s'est dit
le design système qu'on a choisi,
il n'est pas assez costaud pour supporter nos besoins
et on va vouloir introduire
plus de types en fait,
introduire de la type safety
et...
on a commencé à faire
ces petites bonifications
mais qui ont été presque tout de suite diluées
dans le volume de code que produisaient les audbinomes
donc on introduisait de la type safety
genre on allait peut-être
à genre 50% de la pays du design
système qui était type safe
ou tu pouvais techniquement pas faire de conneries avec
ce qui était déjà un bon ratio
mais en fait on le poussait
une semaine ou deux semaines après le temps que
on arrive à partager, à diffuser cette vision
aux autres, on était tombé peut-être à 25%
et puis après
l'inertie du legacy qui continue
c'est genre, c'est plus simple de continuer
dans l'ancien système que de se mettre dans le nouveau
Ah hyper intéressant
donc il y avait ce côté synchro
du travail
qui
facilité l'émergence
des sujets, en fait qui facilité la réalisation
des sujets et rien que ça, ça amène déjà beaucoup
de valeur parce que
un design système qui par exemple est bien calé
qui est bien structuré, qui est bien type safety
tout ce qu'il faut
tu vas vachement plus vite en fait
Ouais c'est clair, c'est impressionnant
et donc
ce que je j'en déduis
c'est que du coup l'amélioration est plus
lente à venir parce que justement il y a
toute cette phase de réharmonisation
au sein des binômes en fait
c'est ça, et l'air de rien
ça lignait suffisamment
c'est pas simple
parce que tu vois qu'en même on était que 10
genre le meilleur
alignement qu'on a eu
c'est quand il y a quelqu'un qui arrivait avec
un peu une casquette expert
tu vois, fronte, nous on n'était pas expert front
qui arrivait avec une casquette expert front
et puis un peu plus une position de lid
tu vois, c'est genre du coup quand il disait quelque chose
on l'écoutait et on appliquait
et ça c'est la meilleure solution d'alignement
qu'on a trouvé
parce que dans l'image que j'ai moi, l'alignement
dans ma vision en binômes
il se fait par le travail de para-père
comme tu changes régulièrement
tous les 1 à 3 jours tu changes de binômes
donc ça se diffuse
mais c'est effectivement lent en fait
et ce que tu dis c'est que dans certains contextes
ça bouge très vite, c'est trop lent
alors que le même permet d'harmoniser tout d'un coup
mais tu te saurais vu faire un mob
à 10 ?
un mob à 10 ça me paraît ambitieux
je t'avoue
mais je pense qu'il y avait moyen potentiellement
de séparer deux contextes
et de se faire genre un mob à 5
ou un mob à 6
ça se fait complètement sans trop de difficultés
c'est quand tu passes au-delà de 6
ça commence à devenir plus compliqué
mais
ce que je trouve en fait et c'est aussi une différence
que je mets
et donc j'avais envie de parler en plus donc ça tombe bien
sur ce pouvoir
du mob là, typiquement, mon préféré
tu vois la puissance de refactor
c'est lié à la puissance de décision que tu as dans l'équipe
et c'est pour ça que je mets en fait une différence
j'ai pas de bonne traduction
en français de... comment est-ce que tu appellerais
en français mob programming
autant père, binôme
c'est facile et ça se comprend
autant la traduction en français elle est pas simple
et il y a cette vision que tu vois genre
à plus de deux c'est un mob
donc si t'es trois personnes c'est un mob
c'est vrai mais moi ce que je préfère
c'est
le travail en équipe complète
c'est à dire dans le mob, il y a tout ton équipe
et ça rejoint un petit peu le concept de pizza team
etc mais c'est genre si on est six dans l'équipe
et qu'on travaille dans un mob
là on a un vrai pouvoir de décision
et si on se met d'accord et ça va souvent vite
avec les bonnes pratiques de développement
en équipe
si on se met d'accord en cinq minutes sur
on prend telle décision, bah boum là ça déroule
et on a ce pouvoir en fait sur notre morceau
de la base de code et notre morceau du métier
en fait et ça ça fonctionne beaucoup mieux
que genre par exemple si tu avais
une équipe de 10 ou une équipe de 9
on va faire simple avec trois mob de 3
tu retrouverais pas du tout les mêmes avantages
que ce que moi j'ai vu
dans la mission on était tous ensemble
oui parce que tu refractionnes
le processus de décision
ce que tu a l'air de dire qui est important
c'est pas tant le fait d'être à plusieurs
que d'être tous ensemble
oui exactement, c'est beau ce que tu dis
oh merci, ça je dis continue de m'envoyer des fois
non mais c'est hyper marquant
parce que ça veut dire que du coup
ça pose quasiment une limite
si tu veux que tes équipes travaillent en mob
ça pose quasiment une limite sur la taille d'une équipe
en fait
en tout cas ma vision de ce que j'aimerais faire
c'est ça
oui donc la valeur
elle est dans le fait d'être tous ensemble
en même temps ultra synchron
sur ce qu'on est en train de faire
et là tous les enjeux de diffusion de la connaissance
de transfert de compétences
de prise de décision sans régler
instantanément c'est inclus dans le package
et tu fais ça en direct
et rien que ça effectivement tu gagnes masse de temps
tu imagines ça veut dire plus de réunions
plus de code reviews, beaucoup moins de bugs
plus de daily
bah oui pourquoi tu veux faire une daily
tu vas pas refaire un reportage au chef de projet
c'est ce que c'était à la fin ouais
et à la fin en fait tu peux limite
tu en envoies un quoi
sacrifier
vous faites ça à la courte paille
aujourd'hui c'est Michel
demain ça sera Pauline
et donc
et là on peut comprendre assez objectivement
où est-ce qu'il y a du gain
parce que le gain en debug
alors quand tu fais pas de tdd pour moi
rien que ça c'est 50% de ton temps
et tous les développeurs
qui souffrent de ce temps de réunion
cette espèce de réunion mythe qui s'évite partout
où j'entends tout le temps les gens
de la merde faire des réunions
et des fois quand tu demande aux gens
t'as l'impression qu'il passe
2-3 heures par jour en réunion
sans même parler du fractionnement que ça génère
où tu pètes
la possibilité de travailler vraiment
sur du travail profond
rien que là
en fait
tu parlais de sacrifice
c'est quelque chose que tu peux envisager en mob assez facilement
c'est quelque chose qu'on faisait souvent
sacrifice c'est pas très sympa comme terme
mais c'est par exemple
je sais pas on avait un moment
dans la boîte où on était en mob full time
les ops qui cherchaient
aller plus loin
dans leur approche des DevOps
ce qui était cool
mais ils avaient besoin de se synchro de passer de la connaissance
et en fait souvent on envoyait une personne
récupérer la connaissance pendant que le mob continue à avancer
ce que moi je trouve hyper satisfaisant
les réunions elles nous arrêtent pas
le flot de développement continue
ça s'arrête jamais je trouve ça excellent
et en fait la personne prenait la connaissance
et puis elle nous l'a diffusée au fur et à mesure
mais tu sais que rien que ça
en fait j'en prends conscience pendant que
pendant qu'on en parle ça a une énorme valeur
en termes d'équipe
de pas être bloqué par les réunions
de par design
d'en supprimer tout un paquet
de faire tous les jours
moi je sais que c'est quelque chose que je faisais
dès que j'étais ambitieux de prendre
même au début par demi journée carrément
de prendre 10 minutes tu vois c'est pas long
de se faire une rétro à chaud
pour l'itération suivante
et moi une itération c'était un jour
c'était pas plus
mais c'est tellement précieux
tu vas tellement vite
dans l'évolution
dans le changement
et tu vois quand
maintenant je peux te le dire
j'ai toujours été un peu dubitatif
sur le...
dubitatif mais pas réfractaire mais dubitatif
ça me semble normal
parce que comme tu... cette fois ça me rassurait
mais quand je t'entends de dire
c'est un peu incontrintuitif
je présentais qu'il y avait quelque chose
puisqu'il y a des gens qui étaient très fans
et je suis très ouvert à l'expérimentation donc
pas de soucis
mais ce que tu me dis maintenant
j'y vois beaucoup plus clair donc je l'ai toujours pas vécu
mais je le comprends un peu mieux
et ça me paraît énorme en fait
et du coup je ressens d'autant plus
le contraste
qui peut y avoir entre un micro-manager
classique qui lui au contraire
va joger son travail
la qualité de son travail à la quantité
de réunions qu'il va organiser en gros
il a que ça à faire le garçon
donc il faut bien qu'il s'occupe
et là d'un coup tu te dis
tu passes
de quelque chose qui est hyper toxique pour le travail
à quelque chose qui est hyper vertueux
et qui est impossible
qui est inaccessible
pour toute une partie de la population en fait
et c'est d'autant plus frustrant en fait
et c'est en fait
si je devais résumer moi mon expérience du mob
en vrai
c'est que ça a été hyper libérateur
alors c'est peut-être parce qu'on a choisi aussi
les bonnes pratiques qui vont autour
mais pas je parle pas de bonne pratique technique
mais d'organisation de communication
mais c'était hyper libérateur
et c'est tu vois cette vision de
le mob ça s'arrête jamais
c'est de la production en continu
ça faisait que bah
moi j'ai un coup de blouse
ou je suis fatigué
bon bah les gars là désolé
je suis mort
je prends une heure de pause
je me dirais jamais ça
dans du boulot en solo
je vais peut-être passer une heure à progressiner
involontairement
ça ça m'arrive peut-être des fois
mais là je pouvais dire genre bah non
là je prends une heure de pause
je vais faire la sieste mais on ne sa rien
pendant une heure et je reviens
et puis bah là c'est bon je serai frais
je pourrais donner des trucs au mob
et ça c'est
bah c'est hyper libérateur
vouloir se dire genre
moi j'étais en prestation
en prestation de service et me dire genre
ah bah là j'ai l'administratif tu sais
les cras, les trucs, les formulaires à remplir
ce genre de choses là pour les usn
bah je dis bon bah
continuer sur la story là il faut que je m'absente
je sais pas une demi heure pour faire l'administratif pour la boîte
et je reviens
et en fait c'est pas en pause le travail
et moi j'ai même pas besoin de garder le contexte dans ma tête
parce que peu le long
du coup je sors du mob je rentre et puis je fais
ah bah oui en plus tu vas t'aider
toi qui connais bien t'arrives
comme on est dans un flot t'aider
bah tu dis c'est juste le test
on ne fait pas c'est et puis après tu vas récupérer
le contexte comme ça
et quand tu portes comme ça une heure ou deux tu raccroches les wagons facilement
ouais
c'est quelque chose que je trouvais hyper
chouette et même des fois ça arrive
bah genre de prendre ça pouvait
être deux trois jours je pars en formation
par exemple ou alors je vais donner une formation de craft
quelque part et
je reviens et puis en fait
en je sais pas un quart d'heure, une demi heure je suis reparti
au créé enfin
ouais c'est comme d'alas quoi
tu pouvais rater deux trois épisodes
tu avais rien raté d'histoires
ou l'effet de l'amour, même toi j'aime regarder l'effet de l'amour
ça sent pas vrai
ouais tu as juste raté l'épisode de l'année qui fait l'éparrater
ouais ça ça peut arriver en mob aussi en vrai
ouais mais je comprends
c'est que tu as quand même tellement le background
que
que c'est ok quoi
alors par contre comment tu fais quand tu reviens
comme ça trois jours et qu'il y a une décision qui a été prise
ou du coup t'as pas été parti prenant de la décision
et finalement t'étais pas si d'accord que ça avec
est-ce que c'est arrivé et comment tu veux faire ce cas là
dans ma tête
soit c'est pas arrivé soit ça m'a vraiment pas marqué
donc c'est que ça s'est bien passé
ouais te sens ce qui
moi je sais plus
d'où ça sort là
d'une espèce d'atelier d'intelligence collective
qui est les bonnes personnes
sont celles qui sont là quoi
ouais genre comme l'open space en fait
ouais voilà mais je crois que ça vient de l'open space
les personnes qui faut sont celles qui sont là en fait
exactement et c'est en fait
c'est
ma posture et je pense qu'on a un peu la même
parce que tu disais t'es très accès
expérimentation moi c'est quelque chose que je trouve
hyper important et que j'essaye de pousser
quand je le peux
si y a une décision qui a été prise
et je suis pas d'accord en fait je vais me dire
bah c'est pas grave on va tenter
on va faire
et du coup je rentre dans le mobe on fait
et puis si ce que je me dis dans ma tête
que je pensais pas bien arrive vraiment
bah c'est aussi le bon moment pour dire genre
ah au final y a tel truc peut-être qu'on pourrait éviter de telle autre manière
quoi
et souvent en bois après
ça serait pas pareil si c'était une décision
qui a été prise genre y a 6 mois
forcément parce qu'il y a plus
de vécu qui s'est accumulé
ou de code
oui ce que tu dis c'est qu'en plus
même si tu t'appesantes
à moins de partir très longtemps de toute façon
la quantité de code qui a été produite elle est pas non plus immense
il y a pas trop de doff set de délais
et souvent
si y a vraiment une bêtise
ou tu es capable d'amener
un argument très clairement
objectif qui disent que c'est une mauvaise direction
bah on peut toujours revenir en arrière
quoi il s'est pas passé non plus
trop quoi
oui puis souvent mon biais c'était un peu de me dire
on revient même pas forcément
sur ce qui a été codé déjà
si ça fonctionne suffisamment bien
pour rester en prod c'est cool pas besoin
d'y toucher
ça pas besoin de tout être 100%
cohérent à tous les endroits de toute façon c'était un peu utopique
c'était un viol logiciel quand même
et
si jamais on a besoin d'y retoucher
bah ça sera peut-être le bon moment
genre je sais pas y a une nouvelle fonctionnalité sur ce morceau de code
qui n'est pas un raccord
ça sera le bon moment pour introduire du refactor
est-ce qu'il t'arrive d'accompagner des équipes
ou d'accompagner des équipes qui veulent passer au mob
parce que c'est un sujet qui a déjà bossé
dans un contexte où t'as eu
une posture différente pas celle de participant
mais celle de coach ou de facilitateur
ouais ouais ouais
en fait avec Thomas
c'est pas tout à fait ça mais avec Thomas Carpey
justement on anime un meetup qui est en pause pour l'instant
mais qu'on va relancer en octobre
qui est mob programming francophone
et où on fait
ça peut être plein de choses soit on discute autour du mob
mais souvent c'est
on fait des catas
donc un petit exercice de code et puis juste la contrainte c'est tdd et mob programming
et
sinon accompagner des équipes qui veulent faire du mob
ça m'est jamais arrivé par contre
proposer à des équipes de leur facilité
une session de mob oui parce que souvent les équipes
n'avaient pas forcément envie de faire du mob
mais ça m'est arrivé
genre j'ai fait un passage chez AG Cap
j'y suis allé notamment grâce à toi
parce que t'avais interviewé
Lucas qui est le site de AG Cap
et j'ai trouvé ça cool et je me disais
bago ça me convainc tu vois
et eux avaient eu une assez mauvaise
expérience du mob
et ils savaient déjà que bah moi c'était un petit
peu mon truc
et ils m'ont dit bah est ce que ça t'intéresserait
genre de
nous aider à faciliter une session
ce qu'on avait fait à un moment on a réussi à se réunir
et ça c'était super chouette toute une équipe
pendant toute une après-mne sur une tâche qu'ils avaient
sélectionnée qui trouvait intéressante
faire un mob et ouais
avec les bonnes techniques
le ressenti il a complètement changé
qu'est ce que tu as eu à faire
qu'est ce que tu as eu à réguler dans
cette facilitation le gros gros classique
c'est la durée des tours
donc c'est
concrètement un mob tu sais on prend
chaque tour de la clavier
ah bah on en a même pas parlé ça commence à se passer
concrètement ouais c'est le moment
d'en parler
ouais bah concrètement alors il y a plein de
manière de s'organiser différentes
qui sont valides moi la manière
dont j'aime bien avec laquelles j'aime bien
travailler c'est on va prendre des tours
aux claviers avec des durées limitées
donc c'est il y a un petit chrono
qui se lance et puis qui sonne
au bout d'un certain temps
genre 5 minutes, 10 minutes, 30 minutes
c'est quoi l'ordre de grandeur ?
moi souvent je propose aux équipes
pour commencer genre 6 ou 8 minutes
ok donc toutes les 6 à 8 minutes
le driver change
c'est ça donc la personne donc la vie est sans va
et puis il y a une autre personne qui la remplace
souvent on a un seul navigateur ou une seule navigatrice
qui transmet les idées du mob
enfin c'est genre c'est la personne qui va aller
filtrer les idées du mob et choisir celles
qui sont lesquelles on a décider de faire
et la traduire pour le driver
et donc on va tourner ces deux rôles là
et l'intuition qui est mauvaise
dans beaucoup d'équipes où je vais
c'est de se dire
un tour, une demi heure ça nous semble cool
donc pendant une demi heure
il y a une seule personne au clavier
c'est hyper lourd
et pourtant c'est ce que j'aurais eu
comme intuition moi aussi
mais maintenant que je t'écoute je me dis ça doit être sclerosant en fait
c'est... en fait
on décroche super vite
l'équipe où j'ai facilité
la chez AJK je pense qu'on devait être
6 ou 7, peut-être 8 même
et du coup
si t'es un tour
d'une demi heure
je suis très très mauvais en calcul
mais ça fait quoi, genre 4 heures pour passer au clavier
si t'es dans le dernier
dans la queue
et genre 4 heures sans coder
moi j'aurais complètement décroché quoi
alors que si tu te fais un tour de 5 minutes
tu sais que tu vas passer dans l'or
et tenir genre 45 minutes de focus
ça se fait
c'est des fois un peu chaud
mais...
du coup le fait de savoir que tu vas repasser
quelque part te garde éveillé
te garde attentif
donc du coup dans un mob
parce que 8 c'est un peu extrême
si t'es 6 tu sais que tu vas passer dans la demi heure
même en général les mobs
ben 6 c'est peut-être pas tant que ça
mais disons un mob à 4, 5
tu sais que toutes les demi heure
tu vas t'affaire
5 à 6 minutes
et je vois que c'est un petit...
tu restes éveillé du coup tu restes plus attentif
et c'est un côté un peu énergisant
tu vois d'être au clavier
c'est pas un hasard en général
si on est devenu dev c'est qu'on aime bien coder
et du coup c'est pas naturel non plus
comme position de juste regarder et proposer des idées
et quand t'es au clavier c'est un petit peu comme si
je sais pas
tu es en promenade, tu lâches ton chien
et c'est là le chien
c'est le kiff, tu vois, il court dans tous les sens
il va aller renifler partout
ben là c'est un petit peu moi quand je prends le clavier
tu vas genre super je vais faire des raccourcis
et je vais taper des trucs, ça va être chouette
et ça relève
mon niveau d'énergie
Ok et la conclusion de l'expérience
à l'horchage et cap ça a été quoi là ?
Je crois pas qu'on ait eu
une de mémoire
c'était juste... déjà
ça a renversé leur opinion
sur le mob
en gros la crainte c'était même
peut-être que le mob ça marche pas chez AJK
les équipes sont pas
là où il faut pour que ça fonctionne
ou c'est juste avec la culture c'est trop différent
et en fait
si ils se sont rendu compte que ça le faisait
que ça pouvait être fun parce qu'en vrai à la fin de la journée
on n'avait probablement pas produit grand chose
ce qui est pas choquant pour une première demi journée
de mob
mais par contre tout le monde s'était éclaté
et les gens étaient contents
et puis ils avaient quand même eu l'impression d'avancer
sur la story et c'était pas du temps perdu
Ok il n'y avait pas forcément du code produit
mais il y a des choses qui s'étaient passées
qui était quand même caménait quand même de la valeur
Si on a produit du code mais pas énorme
pas un volume énorme
de la valeur que ça a amené elle était effectivement
différente de comprendre les positions
des uns des autres et puis aussi du team building
c'est une exercice de team building
c'est ce que j'allais dire
c'est ce qui m'est venu en tête
tu as commencé à lire
Il n'y a pas eu de décision après effectivement de se dire
il faut que ça soit un truc qu'on fait régulièrement
mais au moins ça a changé un petit peu la vision
Ce qui est déjà pas mal en fait
Ah ouais je trouve ça cool
Ce qui est déjà pas mal par une expérience
juste une demi journée d'arriver à changer
le regard sur quelque chose
c'est assez efficace en termes de
ratio-énergie impact
Est-ce qu'il y a des choses que tu aurais encore
envie d'évoquer autour de ce sujet-là
ou est-ce que tu as l'impression qu'on a fait le tout ?
Ouais il y a peut-être deux effets
bénéfiques du MOB
enfin des choses que j'ai adoré
du MOB que j'aimerais bien partager
La première c'est bah
quand j'ai réussi à faire venir Thomas Carpay dans mon équipe
on avait quand même
une stack assez... enfin il y a du setup
quoi pour pouvoir commencer
à bosser sur le projet
La demi journée où il a arrivé
j'ai laissé l'équipe tout seul
donc ils étaient deux à taffer sur les stories
puis moi j'ai dit bah non, moi je vais avec Thomas
on fait son setup de poste ensemble
et du coup comme je connaissais
par coeur tout ce qu'il fallait faire
enfin voilà c'est... je travaillais avec
je lui ai installé son poste en une demi journée
l'après-midi on est allé
à 4 dans le MOB bosser direct
genre à sa deuxième demi journée
il a pu contribuer
activement
au développement quoi
et genre en termes de downboarding
moi j'ai jamais vécu ça ailleurs
genre la deuxième demi journée t'es productive
c'est fou je trouve
ce qui était vraiment productive
c'est... c'était assez simple
même si il connaissait pas toutes les complexités
du métier et des détails de la
story bah il apportait des
idées tu vois genre ah bah par exemple on pourrait
écrire plutôt tel test ou alors en termes de
forme du code on va plutôt dans telle direction etc
et ça c'était... c'était fou
je trouvais
et l'autre effet
génial c'est qu'on avait
énormément de difficultés à faire comprendre
à notre métier
comment prioriser et que la
priorisation était hyper importante
pour faire le bon produit
quand on est arrivé en MOB
c'était du jour le lendemain baguette magique
la prio parfaite
en fait tout simplement parce que bah ouais
le métier il s'est dit
bah c'est comme si j'avais plus qu'un seul développeur
donc ils avaient plus le choix
enfin ils pouvaient plus jongler et essayer de t'en mettre 3
en parallèle
et du coup ça les a forcés
à
être plus clair sur la priorité c'est ça que tu veux dire
ouais c'est ça et c'est parce que à chaque
fois c'était
c'est la meilleure story
qu'on peut envisager de faire à ce moment-là
à chaque fois c'était ça
alors qu'avant c'était genre on va charger
tu le demandais pas
de charger ouais tu leur demandais pas un panier
avec les 1 2 3 4 c'était
salut tu veux qu'on bosse sur quoi
alors si on avait quand même cette
prio tu vois on avait une liste on avait
notre panier justement de sprint avec les stories
mais on savait qu'au moins la première
story c'était celle qui voulait vraiment
maintenant
et suivant le temps que ça prenait la story
bah parce qu'il y a des incertitudes
tout le temps suivant le temps que ça prenait
il allait nous réajuster les suivantes
et ça c'est quelque chose qui faisait spontanément
on n'avait plus besoin de venir l'embêter et lui dire
est-ce que ça c'est vraiment le bon truc à faire maintenant
est-ce qu'il n'y a pas autre chose de plus intéressant
sur lequel on pourrait bosser
c'est assez facile d'avoir cette vision
de je mets un dev par exemple
sur le taf prioritaire et puis d'autres sur des travaux
de fond non là c'était vraiment
ce qu'on a besoin de faire au bon moment
tu te rends compte que là tu viens d'économiser
dans certaines équipes un Tp en fait
peut-être
j'ai pas de chiffre
j'ai vu des équipes où t'avais
un gars
c'était un peu des anti-paternes
mais le gars passait la moitié de sa journée
à faire des gantes pour planifier
les choses et l'autre moitié en réunion
a expliqué pourquoi l'équipe était en retard
mais alors c'est un peu satirique
mais tout ce travail
d'organisation, de synchronisation, de planification
ce que tu dis c'est que le mob
le simplifie radicalement
parce que tu n'as pas
de chemin parallèle, tu n'as pas de chemin critique
tu n'as pas de truc comme ça
tu as une team et tu lui donnes
un truc à faire en même temps
ton whip il est
il est de 1 by design
c'est comme ça en fait
c'est ça dans l'explication
dans la philosophie ligne
c'est aussi ce qui explique pourquoi ça marche
c'est parce que le whip est de 1
et du coup ça augmente le flow
pour nos amis auditeurs
qui savent que c'est un whip
le whip c'est pour work in progress
et dans la théorie ligne je vais te laisser en parler
l'idée c'est que plus t'y a de tâches en parallèle
et plus c'est long
de passer tout le flux
et plus le whip est bas
vas-y je te laisse
en fait plus c'est simple
en fait ma vision est simple
peut-être simpliste
mais plus on a tâches plus il y a de risques
d'emboutillage
dans la chaîne de valeur qui part en production
et quand on a en fait
une seule valeur qui passe à chaque fois
donc là c'est la version extrême
le whip de 1 c'est pas forcément
ce qui est préconisé non plus mais c'est la vision extrême du truc
t'as pas d'emboutillage en fait
et tu peux juste pas apporter un emboutillage
plus qu'il y a que un truc qui entre
il y a une seule voiture
la route peut être cassée
mais tu peux pas
tu peux même pas faire d'accident en fait
oui mais techniquement la route
est jamais cassée quand t'es en mode
parce que si on reprend la définition que je donnais du mode
t'as toujours les bonnes personnes
toutes les personnes qui sont nécessaires au succès
de ta tâche qui sont dans l'équipe
et du coup même si la route est cassée
en fait la tâche ça devient réparer la route
et t'embarque tous les gens dont t'as besoin pour réparer la route
donc je sais pas par exemple
la pipeline de production qui est cassée
sur le nom genre on a cassé un truc
on embarque le DevOps
tu vois c'est genre t'embarques un ops
et c'est parti quoi
donc même le run tu le gères en mode
c'est pas que la phase où tu construis le soft
c'est toute la phase aussi opérationnelle
du truc tu peux le faire
tu le faisais aussi en mode
c'est pas tout à fait on avait quand même
l'équipe ops qui était dédiée
mais des fois ça nous arrivait toucher à certains endroits
et de faire des bêtises
et quand on faisait des bêtises on embarquait un ops
et puis on le corrigait tous ensemble
mais imaginons
la pro de brûle
tu vois
une alerte bug critique
suite à il y a quand même une merde qui est passée
qu'est ce qui se passe là
il y a un gars qui sort du mobe pour aller t'un l'incendie
ou c'est tout le mobe qui se met dessus en fait
ça va dépendre
en fait de la gravité
de ce qui s'est passé et de la difficulté de résolution
à la fin on s'est émis
des super héros
qu'on les appelait parce que ça nous aimait
dans d'autres équipes
ils appellent ça les pompiers de prod
et effectivement on avait
deux personnes parce qu'on voulait que ça soit au minimum des binômes
pour partager la connaissance
qui allait régler le problème de prod ensemble
et permettre aux mobs de continuer
parce que nous on aimait bien ça, tu vois que les tâches ne s'arrêtent jamais
mais suivant la gravité du truc
effectivement tout le mobe pouvait s'arrêter
et puis aller tous ensemble bosser potentiellement
avec un nobz aussi
et tu vois genre sortir les logs et puis regarder la merde
qu'est-ce qu'il est en train de se passer
un peu en mode task force
c'est un petit peu toute l'idée du mobe
c'est une grosse task force permanente
parce qu'est ce qui m'a toujours fasciné dans les entreprises
c'est que quand le projet était en carafe
en méga rush
ils sont capables
là il n'y a pas de problème
il y a même un côté un peu héroïque
pour les managers à te trouver une salle
tout le monde libérer les plannings
annuler les réunions
là c'est magique
mais il faut attendre que ce soit le feu
et donc tu leur dis mais donc vous reconnaissez
que c'est un mode qui est hyper efficace
puisque vous l'utilisez dans les situations
d'urgence les situations les plus extrêmes
les plus engagantes et les plus risquées
mais pourquoi vous le faites pas au quotidien
en fait
voilà c'est vrai que j'ai pas aussi un peu
peut-être une vision qui est très
qui cuit les petits oiseaux
du mobe un peu idyllique tu vois
il y a aussi des choses qui sont pas folles
ouais c'est vrai on en a pas trop parlé de ça
raconte un peu
le dark side du mobe
le mec qui s'endort
qu'est ce que je peux avoir comme le mec
qui s'endort dans la salle
le tir au plan
vas-y alors vas que c'est quoi un peu le dark side
moi je les ai pas tous vécu
j'ai Thomas Carpay
qui lui il a bossé dans des mobes
avec des fois un peu plus de difficultés
il y a certains profils où ça marche pas
genre de ce qui m'a expliqué
les profils qui sont très attentistes
ça fonctionne pas et si tu en as un certain volume
j'ai pas de chiffre à te donner
mais il y a un moment
où ça peut être une force de rendissement
le truc c'est souffle
ouais c'est ça qui est trop important
et en gros les gens qui sont moteurs doivent tirer trop de monde derrière
et au bout d'un moment ça fait genre bon bah stop c'est mort
ok
donc tu peux avoir ça
bah non mais ce qui est compliqué c'est simple
en passant
en mobe on augmente
à fond
les communications entre les devs
et même si ça change
les devs c'est pas forcément
les personnes les plus sociales ou les meilleurs communicants
tu vois genre les devs
classiques il y a un cliché mais c'est pas forcément
pour rien c'est pas forcément simple de communiquer
et donc ça ça ramène un peu de tension
tu vois il faut apprendre à bien
parler, à véculer
puis bah genre gérer les émotions c'est pour ça les rétro
moi j'aime bien les accesses sur les émotions
parce que c'est hyper important tu peux facilement
accumuler de la frustration
et si tu ne la désactives pas
bah ça explose et là t'as perdu
oui donc il y a tout un côté
développement personnel
soft skill, gestion des émotions
oui
ou les individus doivent avoir
je sais pas on peut dire une certaine
souplesse, un certain niveau là dedans pour que
ça marche bien quoi
sachant que c'est aussi une très bonne manière de l'acquérir
si tu fais au moins
cette démarche explicite de dire
on va essayer de devenir meilleur là dessus
ouais il te faut quand même
le
le service de base
alors l'envie pour ceux qui sont pas compétents
et la compétence interne pour l'animer
pour l'accueillir pour le faire vivre
parce que c'est pas non plus intuitif
ok et le dernier
Darkside que moi je vois mais c'est
plutôt un trade off en fait c'est un compromis
c'est que le mobs a coûté un
tu mets genre
4 ou 5 personnes pour travailler
sur une tâche effectivement ça coûte
plus cher au début
que de mettre une seule personne sur ta tâche
donc en termes de coup c'est pour ça
que les managers l'aiment pas ça coûte genre 4 fois
plus cher dans leur tête
après la qualité
sur un projet qui dure 3 ans
oui
est-ce que tu penses que l'équation économique
tu t'y retrouve ou est-ce que ça reste
quand même plus cher ? en vrai ça je saurais pas
dire parce que
toi comme moi j'ai vécu cette équipe
j'ai pas eu des talons
en fait pour comparer
comment ça se serait passé si on n'avait pas
bossé en mobs j'ai que nos petites expériences
sur quelques sprint pour savoir
ça marche ou ça marche pas quoi
mais du coup je pense que
en fait je pense que ça coûte quand même plus
cher toi de la même manière qu'on a perdu
25% de velocité dans ces eaux-là
je pense que ça coûte quand même plus cher
mais pas autant qu'on pourrait penser
c'est pas 4 ou 5
si t'es 4 ou 5 personnes
parce qu'en fait t'économises énormément
en termes de maintenabilité et de défaut
moi pour moi c'est pour ça que tu vois
typiquement le binom est clairement
générateur de valeur
même financier
pour moi le ROI est positif de
travailler en binom
donc parce que tu économises
ça coûte effectivement un peu plus cher
à périmètre ou de tâche
égal mais le niveau de qualité est tellement
supérieur le niveau de maintenabilité est tellement
supérieur la transition est tellement supérieur
la gestion de la connaissance est tellement supérieure
que tout ça c'est des choses qui vont
rapporter des dividendes
largement au-delà de la dépense
du surplus dans le temps
en fait donc
éventuellement sur un projet court
on peut discuter le bout de gras
machin mais sur un projet qui s'inscrit
plutôt dans une durée tu vois genre un pur
payeur, un éditeur
qui va miser son business sur sa solution techno
pour moi c'est un
c'est un no brainer
le binommage
est plus que rentable en fait
un mène de l'argent, un guy fait gagner de l'argent
son nom est tributant
mais je n'ai pas ce recul de ce que tu me décris
j'ai l'impression mais c'est
un sentiment
que sur des petites équipes
ça peut être extrêmement rentable
et la priori
un petit peu qui va dans le sens que tu dis c'est que
peut-être qu'avec en grandissant
c'est plus discutable
j'ai l'impression qu'une équipe de 4
ça a l'air d'être un très bon chiffre
parce que
un gars peut sortir facilement
tu restes en mob
tu peux au besoin faire de binom
j'ai l'impression qu'il y a un truc
moi je pense que le sweet spot ça doit être 5
5 ? ah ouais
5 personnes et tout simplement parce que c'est un nombre un père
ça facilite beaucoup les décisions
ah ouais
et si tu fais sortir un binom
tu te retrouves à 3
ce qui est bien aussi
tu vois intuitivement
je me serais dit 5 ah là ça commence à coûter cher
tu vois j'ai encore
ce recul là
c'est ta priori là plutôt
c'est des trucs où
j'ai pas de mesure pour pouvoir dire
effectivement à quel moment ça arrête d'être intéressant
moi ce que je vois c'est à quel moment ça devient
compliqué à gérer
sur plein de paramètres
donc effectivement c'est des trucs très simples
mais c'est genre si t'es 15 dans une salle
sur un seul bout de code
ça va être difficile
il va y avoir beaucoup de discussions
il va falloir que les gens soient très très disciplinés
ça va être hyper dur de les tourner trop
ça va prendre super longtemps enfin c'est une équipe de 15
c'est une mauvaise idée quoi
non clairement mais tu vois au delà
de l'aspect financier moi je sais que
mon expérience du binomage c'est qu'il y a des choses
qui n'auraient pas été possibles ça en fait
pareil avec le mâtre
à un moment donné c'est même plus une question
d'argent c'est une question de est-ce qu'on peut le faire
en fait
et pour moi c'est très clair
j'ai un sujet notamment un peu pointu
qui était très métier où il y avait
enfin je suis convaincu que
sans nous en travailler en binom
qui a duré quelques semaines
ça aurait été juste pas possible en fait
c'est hyper pressieux
en fait l'échange
moi je me rends compte que quand je suis tout seul
je peux très facilement
tomber
dans un cycle de réflexion
et de me dire j'ai envie de faire tel truc
ah mais y a-t-elle problème du coup pour éviter
d'avoir tel problème j'ai telle autre solution
je vais faire du ping-pong dans ma tête entre les deux
et je vais me saboter comme ça
alors que quand je suis en binom ou en mob
en fait c'est assez facile de se dire
enfin c'est plus facile de se dire on se pose
on prend telle solution et puis on y va
jusqu'à ce que ça marche
oui
ça me coupe ce cycle un peu
néfaste
écoute adrien j'ai l'impression qu'on a fait le tour
est-ce que tu as encore un truc à dire ?
non là je pense c'est bon là j'ai bien vu des monstres
ahah
bah écoute c'était un énorme plaisir pour moi
de t'accueillir aujourd'hui
c'était hyper riche j'ai adoré
d'y discuter de ça avec toi
c'était hyper riche pour moi aussi je t'en remercie
ça va me donner de quoi sérieusement améliorer mon article
puisqu'on revient au point de départ
ça me donnerait presque envie d'écrire un autre article
si t'es chaud on peut se le faire à quatre mains
bah pourquoi pas
et quelque chose de complémentaire
sur ça
et puis bah merci beaucoup
si les auditeurs veulent te suivre un peu
voir un peu ce que tu cries, ce que tu fais ils peuvent te suivre
ou ?
je suis beaucoup sur twitter
oui je suis beaucoup sur twitter et vous pouvez me retrouver
donc c'est adrienmp
donc adrien avec un h au début et mp comme message privé
et avec ce petit nom là
en fait vous allez trouver
pas tout, il y aura mon twitter, mon site web etc
je m'appelle comme ça partout
ok c'est cool
bah écoute on mettra tous les liens qu'il faut dans la description
merci, un immense merci encore adrien d'être venu aujourd'hui
merci beaucoup de m'avoir reçu
c'était vraiment un énorme plaisir
bah plaisir plus que partager, tu l'as compris
quand t'as toi cher auditeur bah comme d'hab j'espère que t'as aimé
j'espère que tu auras
il faudra que tu me dise aussi parce que là on a
je pense atteint un record sur le podcast
je vois mon timer
à 1h22 alors avec le montage on va peut-être
tomber à un 18 ou un 2 comme ça
mais je pense que c'est le plus long
l'épisode le plus long mais franchement
je crois que ça le méritait, c'est à toi de me dire cher auditeur
tu m'envoies un petit feedback à Benoît Robasartisan
développeur.fr ou sur mon profil LinkedIn
tu as assez facile à trouver
et je te mets le lien vers
la description
non, je te mets le lien vers l'épisode
non plus, vers l'article
sur le père programming que j'ai fait
et j'espère que ça t'aidera à avancer et à réfléchir
je te remercie et je te dis à bientôt

Episode suivant:


Les infos glanées

Je suis une fonctionnalité encore en dévelopement

Signaler une erreur

ArtisanDéveloppeur

Artisan Développeur est un podcast destiné aux développeurs qui veulent bâtir une carrière épanouissante. Hébergé par Ausha. Visitez ausha.co/fr/politique-de-confidentialite pour plus d'informations.
Tags
Card title

Lien du podcast

[{'term': 'Technology', 'label': None, 'scheme': None}, {'term': 'Technology', 'label': None, 'scheme': 'http://www.itunes.com/'}]

Go somewhere