ペアプログラミングの5W1HとFAQ / 5W1H and FAQ of Pair Programming

ペアプログラミングの5W1HとFAQ / 5W1H and FAQ of Pair Programming

at Productivity Engineering − Forkwell Meetup #4

9f3a83db74bee75a64b5e6ed106a775c?s=128

Takuto Wada

March 18, 2017
Tweet

Transcript

  1. ϖΞϓϩάϥϛϯάͷ 8)ͱ'"2 ࿨ా୎ਓ !U@XBEB  .BS !'PSLXFMM.FFUVQ

  2. ࿨ా୎ਓ JEUXBEB !U@XBEB HJUIVCUXBEB

  3. ひとり歩きするスタンド ελϯυ໊ϫΠϧυɾαόϯφ

  4. “流しのペアプロ業”

  5. Agenda 8) '"2 ͓ΘΓʹ

  6. 8IBU

  7. ϖΞϓϩͨ͜͠ ͱ͕͋Δਓ͸ձ৔ ʹԿਓ͍·͔͢ʁ

  8. υϥΠόʔ φϏήʔλʔ 2人で1つのマシン、1つのキーボード

  9. )PX

  10. ࡞ۀΛܾΊΔ ࠷ॳͷ໨ඪΛܾΊΔ ύʔτφʔΛཔΓʹ͠ɺࢧ͑ͯ΍Δ ஻Δ ͓ޓ͍ԿΛ΍͍ͬͯΔ͔೺Ѳ͢Δ تͿ ަ୅͢Δ ペアプログラミングのやりかた IUUQXXXIZVLJDPNZVLJXJLJXJLJDHJ "%""""%"&%"#"&"%'"'"#"$&"&"&"""#"#'

  11. 大きいディスプレイ(指差し重要) ドライバーの前にキーボード

  12. Thinking out loud: 考えを声に出す

  13. 8IFO 8IFSF 8IP

  14. やりすぎ危険 IUUQTUXJUUFSDPNNJ[DIJTUBUVT

  15. wνʔϜʹ৽ϝϯόʔ͕ೖ͖ͬͯͨ ͱ͖ wෆ۩߹मਖ਼ w৽ػೳ࡞੒ w೔PSिʹҰճܾ·ͬͨ࣌ؒʹ いつ、だれとやるか

  16. 新規/既存 × 短時間/長時間 IUUQJUQSPOJLLFJCQDPKQBSUJDMF$0-6./

  17. 8IZ

  18. Քಇ཰ΑΓ εϧʔϓοτ

  19. lλεΫ͸׬ྃͤͯ͞Ϣʔβʔʹಧ͍ͯͦ͜Ձ஋͕͋Δ ͷͰɺਓͰฒߦͯ͠࡞ۀ͠࢓ֻΓΛ૿΍͢ΑΓ΋ɺ ͭͣͭͷλεΫΛ࣮֬ʹ׬ྃͤͯ͞εϧʔϓοτΛ্͛ ͍ͯ͘΂͖Ͱ͢ɻ ͜ͷͨΊʹɺͻͱ·ͱ·ΓͷίʔυΛॻ͖ऴ͔͑ͯΒ ίʔυϨϏϡʔʹਐΉͷͰ͸ͳ͘ɺॻ͔ΕͨίʔυΛ ยͬ୺͔ΒίʔυϨϏϡʔ͍ͯ͘͜͠ͱͰɺίʔυϨ ϏϡʔͰͷίϛϡχέʔγϣϯίετ΍ख໭ΓΛݮΒ͢ ͨΊͷϓϥΫςΟε͕ϖΞϓϩͩɺͱ͍͏͜ͱͰ͢z Šٕज़ϑΣϩʔ໊͕ݹ԰Λྲྀ͍ͯͨ͠ͷͰϖΞϓϩͷख΄Ͳ͖Λड͚ͨΒḿͬͨ

    IUUQUFDINJTPDBKQFOUSZ
  20. lϖΞϓϩͷྑ͞ͷ̍ͭ͸ɺϑΟʔυόο ΫͷλΠϛϯά͕ΊͬͪΌΊͪΌ଎͍఺ ʹ͋Γ·͢ɻ8*1ϓϧϦΫͷϑΟʔυόο ΫΑΓ΋ѹ౗తʹ଎͍Ͱ͢ɻ ର࿩Λ͢Δ͜ͱͰɺઃܭҊʹ͕ܽؕ͋Δ ͜ͱΛૣظൃݟͯ͠Ϝμͳ࣌ؒΛա͢͝ ͜ͱΛ๷͗ɺ๲େͳϨϏϡʔίϝϯτͷ ཛྷͰ్ํʹ฻Εͯ͘Εͯ͠·͏͜ͱΛආ͚ Δ͜ͱ͕Ͱ͖·͢z Š$PPMͳιϩͱ)PUͳϖΞϓϩͷ͍͋ͩ

    IUUQTUXPQBHJMFFTNDPKQMFUTDIPPTFQSPHSBNNJOHTUZMFJOZPVSDPOUFYUCCBD
  21. lίʔυϨϏϡʔͷ໰୊఺Λղܾ͢Δํ ๏ͷ̍ͭ͸ϖΞϓϩάϥϛϯάͩͱࢥ͍ ·͢ɻ ෆࢥٞͳ΋ͷͰɺॻ͖ऴ͑ͨίʔυͷࢦ ఠΛ͞Εमਖ਼͢Δ͜ͱ͸ؾ෼͕Α͘ͳ͍ ͷͰ͕͢ɺॻ͖ऴ͑Δલʹࢦఠ͞ΕΑΓ ྑ͍ίʔυͱ͍ͯ͘͠ͳΒ͹Ή͠Ζؾ෼ ͕ྑ͍΋ͷͰ͢z ŠίʔυϨϏϡʔ IUUQEIBUFOBOFKQTIVKJ@XF

  22. εΩϧ఻तʹ͸ ϖΞϓϩ͕࠷଎͔ͩΒ

  23. None
  24. None
  25. None
  26. lʮίʔυΛॻ͘ॠؒͷࢥߟʯ ʹΞυόΠεΛ໯͑Δ͔Βz lଞͷํ๏Ͱ୅ସͰ͖ͳ͍͔Βz スキル伝授にペアプロが最速なのは何故か IUUQBUHSBOEQBIBUFOBCMPHKQFOUSZ

  27. Agenda 8) '"2 ͓ΘΓʹ

  28. lίετ͕ഒʹͳΔ ͷͰ͸ z

  29. ࢥ͍ग़ͦ͏ lՔಇ཰ΑΓ εϧʔϓοτz

  30. lϖΞϓϩάϥϛϯάΛ͢ΔՁ஋͸ɺ࠷ॳͷ৔ॴͰΤ ϥʔ͕ى͖ΔͷΛ๷͙ͱͯ΋খ͞ͳيಓमਖ਼ͱ͍͏ܗ Ͱ΍͖ͬͯ·͢ɻيಓमਖ਼͸খ͞ͳൣғͰߦΘΕɺϖΞ Ͱߦ͏࡞ۀͷྲྀΕͷதͰڥ໨ͳ͘ى͜ΔͷͰɺ௨ৗ·ͬ ͨ͘ؾ෇͔Ε·ͤΜz lͭ·ΓɺϖΞϓϩάϥϛϯάͷՁ஋͸ɺকདྷͷ͕࣌ؒ ল͔ΕͨܗͰ΍ͬͯ͘Δɻ݁ہ͸ɺ࣌͸ۚͳΓͩz ŠϖΞϓϩάϥϛϯάͷυϧͷՁ஋ IUUQTXXXJOGPRDPNKQOFXTEPMMBSWBMVFPGQBJSQSPHSBNNJOH

  31. l։ൃ؀ڥ͕όϥό ϥͳΜ͚ͩͲz

  32. 本来のペアプロとしては IUUQTUXJUUFSDPNLBLVUBOJTUBUVT

  33. でもこだわらず、好みの環境でやろう 2つキーボードがあっていい

  34. lشൃੑ͕ߴ͍z

  35. l࣮ࡍʹϖΞϓϩΛऴ͑ͯײͨ͜͡ͱͷதʹɺ ϖΞϓϩͰֶΜͩ͜ͱΛڞ༗ͮ͠Β͍ ϖΞϓϩͰֶΜͩ͜ͱΛه࿥ͮ͠Β͍ ͱ͍͏΋ͷ͕͋Γ·ͨ͠ɻͦͷ৔ͦͷ৔Ͱٞ࿦Λه࿥ ͢Δ͜ͱ͸೉͍͠Ͱ͢ɻϝϞΛऔΔͳͲͷํ๏΋͋Γ· ͕͢ɺ࣮ࡍʹϖΞϓϩΛߦͬͯΈΔͱɺͦΜͳ༨༟͸ ͳ͍͜ͱ͕Θ͔Γ·ͨ͠ɻ·ͨɺ౰࣌ͷίϛοτϩά ΍मਖ਼ͨ͠ίʔυΛݟͯ΋ɺ౰࣌ͷٞ࿦͸ͳ͔ͳ͔Θ ͔Γ·ͤΜɻ݁Ռ͔͠࢒͍ͬͯͳ͍ͷͰ͢z IUUQBUHSBOEQBIBUFOBCMPHKQFOUSZ

  36. そこでモブプログラミングですよ IUUQNPCQSPHSBNNJOHPSHNPCQSPHSBNNJOHCBTJDT

  37. l্ڃऀʹ͸ϝϦο τ͋Δͷ z

  38. ͖ͷ͜ਓΑΓਓ if ( 自分の知識 < 相手の知識 ) { 相手から多くのことを学べる }

    else if ( 自分の知識 >= 相手の知識 ) { 教えることで知識が整理される } => 必ず両者がお互いから何かを学べる
  39. 教えることが最大の学び ベテランにはアンラーニングのチャンス

  40. lϓϨογϟʔ͕ڧ ͍͔Βۤखz

  41. 心理的安全性が一番大事

  42. 個人を尊重する IUUQTUXJUUFSDPNU@XBEBTUBUVT

  43. lʮ͜͜͸Զ͕ॻ͍ ͨʯײ͕΄͍͠z

  44. $PMMFDUJWFDPEFPXOFSTIJQ ίʔυͷڞಉॴ༗  ͷผͷଆ໘

  45. ソロの時間を作る IUUQJUQSPOJLLFJCQDPKQBSUJDMF$0-6./

  46. ソロプロ欲はOSS活動に向ける手も

  47. Agenda 8) '"2 ͓ΘΓʹ

  48. lϖΞϓϩάϥϛϯάʹڧߗʹ൓ର͢Δ ։ൃऀͷڻ͘΄Ͳͷଟ͘͸ɺ࣮ࡍʹ͸ࢼ Έͨ͜ͱ͕ແ͘ɺҰ୴ࢼͤ͹ଈ࠲ʹؾʹ ೖͬͯ਎ʹண͚ͯ͠·͏z ŠʰᆠߺΑΓ4DSVNͱ91ʱΑΓ 食わず嫌いは勿体ない IUUQTXXXJOGPRDPNKQNJOJCPPLTTDSVNYQGSPNUIFUSFODIFT

  49. 事実、ペアプロは楽しい。 ご清聴ありがとうございました