SlideShare una empresa de Scribd logo
1 de 21
Coding Dojo : un retour d’expérience  Emmanuel  Hugonnet Architecture J2EE [email_address] +33-(0)476248658 Rémy  Sanlaville Expert Senior en Ingénierie Logicielle   [email_address] Avec l'aide des membres du Coding Dojo de Grenoble
Historique Si je veux apprendre le Judo, je vais m'inscrire au dojo du coin et y passer une heure par semaine pendant deux ans, au bout de quoi j'aurai peut-être envie de pratiquer plus assidument. Si je veux apprendre la programmation objet, mon employeur va me trouver une formation de trois jours à Java dans le catalogue 2004.  Cherchez l'erreur.  --  Laurent  Bossavit
Objectifs ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Chacun doit pouvoir s'améliorer à son rythme Le but n'est pas de terminer l'exercice mais bien d'apprendre
Randori co-pilote pilote On tourne (5 – 7 mn) Binôme Participants from Dojo@SP (São Paulo)
Kata from Dojo@SP (São Paulo)  co-pilote pilote Binôme Participants
Retour d'expérience Tests et Expérimentations Questions Ouvertes Difficultés rencontrées Chartes Organisation Logistique Déroulement
Logistique (matériel)
Logistique (logiciel) Outils de développement Communication Site web  du Cara Liste de diffusion  cara-dojo scrumy   dojocara IDE : Eclipse, Netbeans, Visual Studio… Build : maven 2… Langage : Java, Ruby, .NET… SCM : Mercurial… …
Déroulement Annonce  : lieu, date, objectif(s), doodle pour l'inscription… discussion(s) sur la  liste de diffusion 11h45-12h00 arrivée,   préparation salle… Avant Pendant Après [Idéalement] CR sur le  site web  du CARA discussion(s) sur la  liste de diffusion Séance tous les 15 jours entre 12h00 et 14h00 12h00-12h10 introduction, rappel de l'objectif 12h10-13h30 kata, randori… 13h30-14h00 rétrospective
Charte Coding Dojo Randori Objectifs Implanter une solution de façon collaborative pour un défi Le but est d'apprendre  et d'avancer ensemble Acteurs ,[object Object],[object Object],[object Object],[object Object],Les participants collaborent à la séance en suivant ce qui est fait, en proposant des questions/améliorations et en faisant partie du binôme de développement. Le binôme de développement est composé d'un pilote qui a le clavier et d'un co-pilote qui implantent une solution pour le défi en respectant la démarche TDD ( Test-Driven Development ). Le secrétaire prend des notes lors de la séance. Il n'intervient pas pendant la phase de développement.
Charte Coding Dojo Randori Règles Restructuration du code Le test est au rouge Le test est au vert ,[object Object],[object Object],[object Object],Toute restructuration doit être discuté et avoir l'accord de la majorité des participants Les participants peuvent intervenir pour proposer des améliorations, faire des remarques, poser des questions… L'animateur peut souligner de bonnes ou de mauvaises pratiques
Charte Coding Dojo Kata Objectifs Présentation d'une solution pour un défi Le but n'est pas de trouver la meilleure solution mais de comprendre la solution proposée par l'animateur. Un présentateur (un seul programmeur ou un binôme) présente sa solution du défi. Le défi est réalisé en entier en TDD ( Test-Driven Development ). Il explique continuellement son cheminement et il affiche sa progression en déroulant continuellement les tests. L'assistance doit comprendre en tout temps la présentation. Un participant peut interrompre le présentateur dans le seul cas où il ne comprend plus le déroulement de la solution. Le facilitateur (animateur) s'assure du bon déroulement de la séance. Il veille à ce que personne ne soit perdu. Le secrétaire prend des notes lors de la séance. Il n'intervient pas pendant la phase de développement. Acteurs
Charte Coding Dojo Kata Règles Restructuration du code Le test est au rouge Le test est au vert Si le test ne passe pas, le présentateur doit expliquer aux participants la raison de l'échec. Toute restructuration doit être expliqué La salle peut interrompre le présentateur dans le seul cas où il ne comprend plus le déroulement de la solution.… Le présentateur peut souligner de bonnes ou de mauvaises pratiques
Difficultés rencontrées Organisation Cela prend du temps ! préparation des séances  résoudre les difficultés (logistique…) animer un groupe (liste de diffusion, site web…) Logistique Salle équipée et facile d'accès vidéo projecteur, tableau blanc, tables et chaises, prises électriques… taille, bonne luminosité…
Difficultés rencontrées Séance Ne pas oublier l'objectif premier qui est d'apprendre ! souvent envie de terminer l'exercice, bon équilibre entre développement et échanges… Etre un bon facilitateur (animateur) élément important pour le bon déroulement de la séance 2 heures c'est très court ! souhait de plus coder, de faire participer tout le monde… Travail collaboratif faire des choix dans un temps restreint, réflexions communes (autour d'un tableau)  Compte-rendu long, pas très motivant…
Tests et Expérimentations Format de la session Kata  25/03/2009, 08/04/2009 Randori  01/14/2009, 28/01/2009, 11/02/2009, 25/02/2009,11/03/2009 Pas de codage mais discussions autour d'un thème. Possibilité de le faire autour d'un verre… Plusieurs sessions en parallèles et les personnes peuvent changer de groupe quand ils veulent Barcamp Open-space Randori-Veille  20/05/2009 Kata-TD Une personne présente et les participants (par binôme) refont ce qui a été fait au fur et à mesure Kata-Veille  06/05/2009 Randori-TD Faire le tour d'un sujet où une personne présente la problématique, les solutions et outils existants Tester différents outils en parallèle pour un même défi et faire une restitution pour confronter les résultats Développement en binôme/n-uplet en parallèle avec les mêmes outils et pour un même défi
Tests et Expérimentations Kata-Veille du 06/05/2009
Tests et Expérimentations Randori-Veille 20/05/2009 Jeu du pendu : iteration 1 (au plus simple) Pas de taille maximum et minimum (>= 1) ; pas de gestion d'accents, pas de caractères spéciaux, pasde chiffre, pas case-sensitive, pas de nom-composé. Lettre accepté = [a..z] et [A..Z] Dans un premier temps le mot secret est fixé. On prend le mot SANGLIER pour ne pas gérer les doublons Given le mot secret SANGLIER et CR=6 When le joueur tape le caractère A Then afficher le résultat CR=6 Given le mot secret SANGLIER et la lettre A trouvée et CR=5 When le joueur tape le caractère S Then afficher le résultat SA****** Given le mot secret SANGLIER et la lettre A trouvée et CR=5 When le joueur tape le caractère S Then afficher le résultat CR=5  Given le mot secret SANGLIER et CR=6 When le joueur tape le caractère Z Then afficher le résultat ******** Given le mot secret SANGLIER et CR=6 When le joueur tape le caractère Z Then afficher le résultat CR=5 Given le mot secret SANGLIER et CR=6 When le joueur tape le caractère A Then afficher le résultat *A******
Tests et Expérimentations Randori-Veille 20/05/2009 .Net/NBehave Java/JUnit Ruby/Cucumber Java/JUnit
Questions Ouvertes
Remerciements ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

Más contenido relacionado

Similar a Coding Dojo in the Alps - Retour d'expérience

Coding Dojo - Kata sur le pilotage par les tests d'acceptances (ATDD)
Coding Dojo - Kata sur le pilotage par les tests d'acceptances (ATDD)Coding Dojo - Kata sur le pilotage par les tests d'acceptances (ATDD)
Coding Dojo - Kata sur le pilotage par les tests d'acceptances (ATDD)Agile Tour Genève
 
Bonnes et mauvaises pratiques du daily meeting
Bonnes et mauvaises pratiques du daily meetingBonnes et mauvaises pratiques du daily meeting
Bonnes et mauvaises pratiques du daily meetingCéline Stauder
 
XebiCon'17 : Mes 11 secrets pour réussir tous les ateliers... agiles ou pas -...
XebiCon'17 : Mes 11 secrets pour réussir tous les ateliers... agiles ou pas -...XebiCon'17 : Mes 11 secrets pour réussir tous les ateliers... agiles ou pas -...
XebiCon'17 : Mes 11 secrets pour réussir tous les ateliers... agiles ou pas -...Publicis Sapient Engineering
 
Collaborons à distance - Simon JAILLAIS
Collaborons à distance - Simon JAILLAISCollaborons à distance - Simon JAILLAIS
Collaborons à distance - Simon JAILLAISSimon JAILLAIS
 
Design Challenge - workshop UX DAYS 2019 - Nicolas CATHERIN
Design Challenge - workshop UX DAYS 2019 - Nicolas CATHERINDesign Challenge - workshop UX DAYS 2019 - Nicolas CATHERIN
Design Challenge - workshop UX DAYS 2019 - Nicolas CATHERINncatherin
 
UX Days 2019 by Flupa - Atelier : Nicolas Catherin
UX Days 2019 by Flupa - Atelier : Nicolas CatherinUX Days 2019 by Flupa - Atelier : Nicolas Catherin
UX Days 2019 by Flupa - Atelier : Nicolas CatherinFlupa
 
#OpenSeriousGame CookMyRetro : Cuisinez votre rétrospective Agile
#OpenSeriousGame CookMyRetro : Cuisinez votre rétrospective Agile#OpenSeriousGame CookMyRetro : Cuisinez votre rétrospective Agile
#OpenSeriousGame CookMyRetro : Cuisinez votre rétrospective AgileAlexandre Quach
 
Soutenance de stage : comment la réussir ? ( www.ramzi-orientation.blogspot.c...
Soutenance de stage : comment la réussir ? ( www.ramzi-orientation.blogspot.c...Soutenance de stage : comment la réussir ? ( www.ramzi-orientation.blogspot.c...
Soutenance de stage : comment la réussir ? ( www.ramzi-orientation.blogspot.c...RAMZI EL IDRISSI
 
Ameliorez vous qu ils disaient 2019
Ameliorez vous qu ils disaient 2019Ameliorez vous qu ils disaient 2019
Ameliorez vous qu ils disaient 2019Nicolas Thibert
 
Développer en mode kick-ass à Devoxx France
Développer en mode kick-ass à Devoxx FranceDévelopper en mode kick-ass à Devoxx France
Développer en mode kick-ass à Devoxx FranceSamuel Le Berrigaud
 
Développer en mode kick-ass à Scrum Day
Développer en mode kick-ass à Scrum DayDévelopper en mode kick-ass à Scrum Day
Développer en mode kick-ass à Scrum DaySamuel Le Berrigaud
 
Les Bases des Méthodes Lean/Agile
Les Bases des Méthodes Lean/AgileLes Bases des Méthodes Lean/Agile
Les Bases des Méthodes Lean/AgileAgileCoach.net
 
Kick off de projet - Fiches pratiques en français
Kick off de projet - Fiches pratiques en françaisKick off de projet - Fiches pratiques en français
Kick off de projet - Fiches pratiques en françaisSylvain Loubradou
 
Un format dynamique de rétrospective, Jean-Charles Meyrignac
Un format dynamique de rétrospective, Jean-Charles Meyrignac Un format dynamique de rétrospective, Jean-Charles Meyrignac
Un format dynamique de rétrospective, Jean-Charles Meyrignac Xavier Warzee
 
02 diaporama introduction_au_projet_robotique
02 diaporama introduction_au_projet_robotique02 diaporama introduction_au_projet_robotique
02 diaporama introduction_au_projet_robotiquedamira47
 
Outils Collaboratifs Pourquoi Comment
Outils Collaboratifs Pourquoi CommentOutils Collaboratifs Pourquoi Comment
Outils Collaboratifs Pourquoi Commentanne.wiener
 
Story Board Formation en mode projet Agile
Story Board Formation en mode projet AgileStory Board Formation en mode projet Agile
Story Board Formation en mode projet AgileLaurent Morisseau
 
Human Talks Grenoble - 11/12/2012 - TDD
Human Talks Grenoble - 11/12/2012 - TDDHuman Talks Grenoble - 11/12/2012 - TDD
Human Talks Grenoble - 11/12/2012 - TDDXavier NOPRE
 

Similar a Coding Dojo in the Alps - Retour d'expérience (20)

Coding Dojo - Kata sur le pilotage par les tests d'acceptances (ATDD)
Coding Dojo - Kata sur le pilotage par les tests d'acceptances (ATDD)Coding Dojo - Kata sur le pilotage par les tests d'acceptances (ATDD)
Coding Dojo - Kata sur le pilotage par les tests d'acceptances (ATDD)
 
Bonnes et mauvaises pratiques du daily meeting
Bonnes et mauvaises pratiques du daily meetingBonnes et mauvaises pratiques du daily meeting
Bonnes et mauvaises pratiques du daily meeting
 
XebiCon'17 : Mes 11 secrets pour réussir tous les ateliers... agiles ou pas -...
XebiCon'17 : Mes 11 secrets pour réussir tous les ateliers... agiles ou pas -...XebiCon'17 : Mes 11 secrets pour réussir tous les ateliers... agiles ou pas -...
XebiCon'17 : Mes 11 secrets pour réussir tous les ateliers... agiles ou pas -...
 
Collaborons à distance - Simon JAILLAIS
Collaborons à distance - Simon JAILLAISCollaborons à distance - Simon JAILLAIS
Collaborons à distance - Simon JAILLAIS
 
Design Challenge - workshop UX DAYS 2019 - Nicolas CATHERIN
Design Challenge - workshop UX DAYS 2019 - Nicolas CATHERINDesign Challenge - workshop UX DAYS 2019 - Nicolas CATHERIN
Design Challenge - workshop UX DAYS 2019 - Nicolas CATHERIN
 
UX Days 2019 by Flupa - Atelier : Nicolas Catherin
UX Days 2019 by Flupa - Atelier : Nicolas CatherinUX Days 2019 by Flupa - Atelier : Nicolas Catherin
UX Days 2019 by Flupa - Atelier : Nicolas Catherin
 
#OpenSeriousGame CookMyRetro : Cuisinez votre rétrospective Agile
#OpenSeriousGame CookMyRetro : Cuisinez votre rétrospective Agile#OpenSeriousGame CookMyRetro : Cuisinez votre rétrospective Agile
#OpenSeriousGame CookMyRetro : Cuisinez votre rétrospective Agile
 
AT2010 Dojo TDD
AT2010 Dojo TDDAT2010 Dojo TDD
AT2010 Dojo TDD
 
Soutenance de stage : comment la réussir ? ( www.ramzi-orientation.blogspot.c...
Soutenance de stage : comment la réussir ? ( www.ramzi-orientation.blogspot.c...Soutenance de stage : comment la réussir ? ( www.ramzi-orientation.blogspot.c...
Soutenance de stage : comment la réussir ? ( www.ramzi-orientation.blogspot.c...
 
Ameliorez vous qu ils disaient 2019
Ameliorez vous qu ils disaient 2019Ameliorez vous qu ils disaient 2019
Ameliorez vous qu ils disaient 2019
 
Développer en mode kick-ass à Devoxx France
Développer en mode kick-ass à Devoxx FranceDévelopper en mode kick-ass à Devoxx France
Développer en mode kick-ass à Devoxx France
 
Développer en mode kick-ass à Scrum Day
Développer en mode kick-ass à Scrum DayDévelopper en mode kick-ass à Scrum Day
Développer en mode kick-ass à Scrum Day
 
Les Bases des Méthodes Lean/Agile
Les Bases des Méthodes Lean/AgileLes Bases des Méthodes Lean/Agile
Les Bases des Méthodes Lean/Agile
 
Levez vous les managers !
Levez vous les managers !Levez vous les managers !
Levez vous les managers !
 
Kick off de projet - Fiches pratiques en français
Kick off de projet - Fiches pratiques en françaisKick off de projet - Fiches pratiques en français
Kick off de projet - Fiches pratiques en français
 
Un format dynamique de rétrospective, Jean-Charles Meyrignac
Un format dynamique de rétrospective, Jean-Charles Meyrignac Un format dynamique de rétrospective, Jean-Charles Meyrignac
Un format dynamique de rétrospective, Jean-Charles Meyrignac
 
02 diaporama introduction_au_projet_robotique
02 diaporama introduction_au_projet_robotique02 diaporama introduction_au_projet_robotique
02 diaporama introduction_au_projet_robotique
 
Outils Collaboratifs Pourquoi Comment
Outils Collaboratifs Pourquoi CommentOutils Collaboratifs Pourquoi Comment
Outils Collaboratifs Pourquoi Comment
 
Story Board Formation en mode projet Agile
Story Board Formation en mode projet AgileStory Board Formation en mode projet Agile
Story Board Formation en mode projet Agile
 
Human Talks Grenoble - 11/12/2012 - TDD
Human Talks Grenoble - 11/12/2012 - TDDHuman Talks Grenoble - 11/12/2012 - TDD
Human Talks Grenoble - 11/12/2012 - TDD
 

Más de Emmanuel Hugonnet

You're a pretty fly for a WildFly
You're a pretty fly for a WildFlyYou're a pretty fly for a WildFly
You're a pretty fly for a WildFlyEmmanuel Hugonnet
 
At2009 Soigner Sa Schizophrenie 1.2
At2009 Soigner Sa Schizophrenie 1.2At2009 Soigner Sa Schizophrenie 1.2
At2009 Soigner Sa Schizophrenie 1.2Emmanuel Hugonnet
 
Innovations Techniques Au Service Du Test De Recette Automatisé
Innovations Techniques Au Service Du Test De Recette AutomatiséInnovations Techniques Au Service Du Test De Recette Automatisé
Innovations Techniques Au Service Du Test De Recette AutomatiséEmmanuel Hugonnet
 
Usine logicielle à Orange Labs
Usine logicielle à Orange LabsUsine logicielle à Orange Labs
Usine logicielle à Orange LabsEmmanuel Hugonnet
 
Java Content Repository avec Jackrabbit
Java Content Repository avec JackrabbitJava Content Repository avec Jackrabbit
Java Content Repository avec JackrabbitEmmanuel Hugonnet
 
Le modèle d’acquisition de compétences de Dreyfus
Le modèle d’acquisition de compétences de DreyfusLe modèle d’acquisition de compétences de Dreyfus
Le modèle d’acquisition de compétences de DreyfusEmmanuel Hugonnet
 
Ddj Architecture & Design The Distributed Agile Team
Ddj   Architecture &  Design   The Distributed Agile TeamDdj   Architecture &  Design   The Distributed Agile Team
Ddj Architecture & Design The Distributed Agile TeamEmmanuel Hugonnet
 
Industrialisation Du Logiciel Introduction Et Bonnes Pratiques V1.4
Industrialisation Du Logiciel   Introduction Et Bonnes Pratiques   V1.4Industrialisation Du Logiciel   Introduction Et Bonnes Pratiques   V1.4
Industrialisation Du Logiciel Introduction Et Bonnes Pratiques V1.4Emmanuel Hugonnet
 
At2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville PublicAt2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville PublicEmmanuel Hugonnet
 
At2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville PublicAt2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville PublicEmmanuel Hugonnet
 
Ddj Architecture & Design Beyond Functional Requirements On Agile Projects
Ddj   Architecture & Design   Beyond Functional Requirements On Agile ProjectsDdj   Architecture & Design   Beyond Functional Requirements On Agile Projects
Ddj Architecture & Design Beyond Functional Requirements On Agile ProjectsEmmanuel Hugonnet
 
Industrialisation Du Logiciel - Introduction Et Bonnes Pratiques
Industrialisation Du Logiciel  - Introduction Et Bonnes PratiquesIndustrialisation Du Logiciel  - Introduction Et Bonnes Pratiques
Industrialisation Du Logiciel - Introduction Et Bonnes PratiquesEmmanuel Hugonnet
 

Más de Emmanuel Hugonnet (14)

You're a pretty fly for a WildFly
You're a pretty fly for a WildFlyYou're a pretty fly for a WildFly
You're a pretty fly for a WildFly
 
J2EE m’a tuer
J2EE m’a tuerJ2EE m’a tuer
J2EE m’a tuer
 
At2009 Soigner Sa Schizophrenie 1.2
At2009 Soigner Sa Schizophrenie 1.2At2009 Soigner Sa Schizophrenie 1.2
At2009 Soigner Sa Schizophrenie 1.2
 
Innovations Techniques Au Service Du Test De Recette Automatisé
Innovations Techniques Au Service Du Test De Recette AutomatiséInnovations Techniques Au Service Du Test De Recette Automatisé
Innovations Techniques Au Service Du Test De Recette Automatisé
 
Usine logicielle à Orange Labs
Usine logicielle à Orange LabsUsine logicielle à Orange Labs
Usine logicielle à Orange Labs
 
Soigner Sa Schizophrénie
Soigner Sa SchizophrénieSoigner Sa Schizophrénie
Soigner Sa Schizophrénie
 
Java Content Repository avec Jackrabbit
Java Content Repository avec JackrabbitJava Content Repository avec Jackrabbit
Java Content Repository avec Jackrabbit
 
Le modèle d’acquisition de compétences de Dreyfus
Le modèle d’acquisition de compétences de DreyfusLe modèle d’acquisition de compétences de Dreyfus
Le modèle d’acquisition de compétences de Dreyfus
 
Ddj Architecture & Design The Distributed Agile Team
Ddj   Architecture &  Design   The Distributed Agile TeamDdj   Architecture &  Design   The Distributed Agile Team
Ddj Architecture & Design The Distributed Agile Team
 
Industrialisation Du Logiciel Introduction Et Bonnes Pratiques V1.4
Industrialisation Du Logiciel   Introduction Et Bonnes Pratiques   V1.4Industrialisation Du Logiciel   Introduction Et Bonnes Pratiques   V1.4
Industrialisation Du Logiciel Introduction Et Bonnes Pratiques V1.4
 
At2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville PublicAt2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville Public
 
At2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville PublicAt2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville Public
 
Ddj Architecture & Design Beyond Functional Requirements On Agile Projects
Ddj   Architecture & Design   Beyond Functional Requirements On Agile ProjectsDdj   Architecture & Design   Beyond Functional Requirements On Agile Projects
Ddj Architecture & Design Beyond Functional Requirements On Agile Projects
 
Industrialisation Du Logiciel - Introduction Et Bonnes Pratiques
Industrialisation Du Logiciel  - Introduction Et Bonnes PratiquesIndustrialisation Du Logiciel  - Introduction Et Bonnes Pratiques
Industrialisation Du Logiciel - Introduction Et Bonnes Pratiques
 

Coding Dojo in the Alps - Retour d'expérience

  • 1. Coding Dojo : un retour d’expérience Emmanuel Hugonnet Architecture J2EE [email_address] +33-(0)476248658 Rémy Sanlaville Expert Senior en Ingénierie Logicielle   [email_address] Avec l'aide des membres du Coding Dojo de Grenoble
  • 2. Historique Si je veux apprendre le Judo, je vais m'inscrire au dojo du coin et y passer une heure par semaine pendant deux ans, au bout de quoi j'aurai peut-être envie de pratiquer plus assidument. Si je veux apprendre la programmation objet, mon employeur va me trouver une formation de trois jours à Java dans le catalogue 2004. Cherchez l'erreur. -- Laurent Bossavit
  • 3.
  • 4. Randori co-pilote pilote On tourne (5 – 7 mn) Binôme Participants from Dojo@SP (São Paulo)
  • 5. Kata from Dojo@SP (São Paulo) co-pilote pilote Binôme Participants
  • 6. Retour d'expérience Tests et Expérimentations Questions Ouvertes Difficultés rencontrées Chartes Organisation Logistique Déroulement
  • 8. Logistique (logiciel) Outils de développement Communication Site web du Cara Liste de diffusion cara-dojo scrumy dojocara IDE : Eclipse, Netbeans, Visual Studio… Build : maven 2… Langage : Java, Ruby, .NET… SCM : Mercurial… …
  • 9. Déroulement Annonce : lieu, date, objectif(s), doodle pour l'inscription… discussion(s) sur la liste de diffusion 11h45-12h00 arrivée, préparation salle… Avant Pendant Après [Idéalement] CR sur le site web du CARA discussion(s) sur la liste de diffusion Séance tous les 15 jours entre 12h00 et 14h00 12h00-12h10 introduction, rappel de l'objectif 12h10-13h30 kata, randori… 13h30-14h00 rétrospective
  • 10.
  • 11.
  • 12. Charte Coding Dojo Kata Objectifs Présentation d'une solution pour un défi Le but n'est pas de trouver la meilleure solution mais de comprendre la solution proposée par l'animateur. Un présentateur (un seul programmeur ou un binôme) présente sa solution du défi. Le défi est réalisé en entier en TDD ( Test-Driven Development ). Il explique continuellement son cheminement et il affiche sa progression en déroulant continuellement les tests. L'assistance doit comprendre en tout temps la présentation. Un participant peut interrompre le présentateur dans le seul cas où il ne comprend plus le déroulement de la solution. Le facilitateur (animateur) s'assure du bon déroulement de la séance. Il veille à ce que personne ne soit perdu. Le secrétaire prend des notes lors de la séance. Il n'intervient pas pendant la phase de développement. Acteurs
  • 13. Charte Coding Dojo Kata Règles Restructuration du code Le test est au rouge Le test est au vert Si le test ne passe pas, le présentateur doit expliquer aux participants la raison de l'échec. Toute restructuration doit être expliqué La salle peut interrompre le présentateur dans le seul cas où il ne comprend plus le déroulement de la solution.… Le présentateur peut souligner de bonnes ou de mauvaises pratiques
  • 14. Difficultés rencontrées Organisation Cela prend du temps ! préparation des séances résoudre les difficultés (logistique…) animer un groupe (liste de diffusion, site web…) Logistique Salle équipée et facile d'accès vidéo projecteur, tableau blanc, tables et chaises, prises électriques… taille, bonne luminosité…
  • 15. Difficultés rencontrées Séance Ne pas oublier l'objectif premier qui est d'apprendre ! souvent envie de terminer l'exercice, bon équilibre entre développement et échanges… Etre un bon facilitateur (animateur) élément important pour le bon déroulement de la séance 2 heures c'est très court ! souhait de plus coder, de faire participer tout le monde… Travail collaboratif faire des choix dans un temps restreint, réflexions communes (autour d'un tableau) Compte-rendu long, pas très motivant…
  • 16. Tests et Expérimentations Format de la session Kata 25/03/2009, 08/04/2009 Randori 01/14/2009, 28/01/2009, 11/02/2009, 25/02/2009,11/03/2009 Pas de codage mais discussions autour d'un thème. Possibilité de le faire autour d'un verre… Plusieurs sessions en parallèles et les personnes peuvent changer de groupe quand ils veulent Barcamp Open-space Randori-Veille 20/05/2009 Kata-TD Une personne présente et les participants (par binôme) refont ce qui a été fait au fur et à mesure Kata-Veille 06/05/2009 Randori-TD Faire le tour d'un sujet où une personne présente la problématique, les solutions et outils existants Tester différents outils en parallèle pour un même défi et faire une restitution pour confronter les résultats Développement en binôme/n-uplet en parallèle avec les mêmes outils et pour un même défi
  • 17. Tests et Expérimentations Kata-Veille du 06/05/2009
  • 18. Tests et Expérimentations Randori-Veille 20/05/2009 Jeu du pendu : iteration 1 (au plus simple) Pas de taille maximum et minimum (>= 1) ; pas de gestion d'accents, pas de caractères spéciaux, pasde chiffre, pas case-sensitive, pas de nom-composé. Lettre accepté = [a..z] et [A..Z] Dans un premier temps le mot secret est fixé. On prend le mot SANGLIER pour ne pas gérer les doublons Given le mot secret SANGLIER et CR=6 When le joueur tape le caractère A Then afficher le résultat CR=6 Given le mot secret SANGLIER et la lettre A trouvée et CR=5 When le joueur tape le caractère S Then afficher le résultat SA****** Given le mot secret SANGLIER et la lettre A trouvée et CR=5 When le joueur tape le caractère S Then afficher le résultat CR=5 Given le mot secret SANGLIER et CR=6 When le joueur tape le caractère Z Then afficher le résultat ******** Given le mot secret SANGLIER et CR=6 When le joueur tape le caractère Z Then afficher le résultat CR=5 Given le mot secret SANGLIER et CR=6 When le joueur tape le caractère A Then afficher le résultat *A******
  • 19. Tests et Expérimentations Randori-Veille 20/05/2009 .Net/NBehave Java/JUnit Ruby/Cucumber Java/JUnit
  • 21.