JohoKaigi 情報会議 #2 で発表させていただきました http://johokaigi.org/
Work in Progressby @ken_c_lo at esa LLCNov 13, 2015JohoKaigi - ใձٞ @ Increments Inc.WIP
View Slide
Helloˡશࣾһ໊ɹσβΠφʔͷํ
https://esa.io
ϚʔΫμϯͰॻ͚ΔɺνʔϜͷͨΊͷυΩϡϝϯτڞ༗αʔϏε…͋ͬʂ
åesa inspiredbyQiita:Teamɺ͖͗ͯ͢࡞ͬͨ
Compare with Qiita:teamࢥͷҧ͍ɺख๏ͷҧׂ͍ͱdiff͕͋Δ
ࠓͦͷதͷ1ͭWIPͷΛ͠·͢
WIPͱʁ
WIPʹ Work in Progressਐߦதɾ࡞ۀதɾॲཧதɾະෆશͰ͋Δ͜ͱΛप͢Δه߸ͱͯ͠ΘΕΔřŎŕŲƅ
ͱΓ͋͑ͣɺڞ༗ࡶʹڞ༗·ͩͰ͖ͯͳ͍͚Ͳڞ༗
͜Μͳײ͡ͷ͜ͱΛߟ͍͑ͯΔ͚Ͳɺ·ͩFIX͡Όͳ͍ΜͰɻ͜Ε͔Βͬͱྑ͘ͳΔΜͰɻWIPΛ͚ͭΔͱ͖ͷ͖ͪ• ͳͷͰࡉ͔͗͢Δποίϛ·ͩצหͯ͠Ͷ• ͚ͲɺؒҧͬͯͨΒڭ͑ͯͶ• ࠔͬͯͨΒॿ͚ͯͶ• Δؾ͋ͬͯ͜Ε͔ΒΔͭΓͰ͋ΔΜͩΑ• ͬ͘͟Γ͜͏͍͏͜ͱߟ͑ͯΔ͔ΒͳΜͱͳͬͯͯ͘Ͷ• େମ߹ͬͯͨΒ͞Γؾͳ͘΄Ίͯ͘ΕͨΒΔؾग़Δ͔• ·ͣࣗͷϝϞతʹॻ͍ͯΔ͚ͩͳΜͩ
ͭ·ΓɺWIPͱΤΫεΩϡʔζͷҰछʢݴ͍༁ɾหղʣͪΐͬͱݴ͍ํѱ͍͚ͲExcuse me
ʮϙΤϜʯΤΫεΩϡʔζͷҰछ• ϙΤϜ͔ͩΒଟগΏΔ;ΘͰࠜڌബऑͳࣄॻ͍ͯͯڐͯ͠• ϙΤϜ͔ͩΒଟগײతʹͳͬͯͯڐͯ͠• ϙΤϜ͔ͩΒΦν݁ͳ͍͚Ͳڐͯ͠• ϙΤϜ͔ͩΒओ؍ͨͬΓͰಥͬͬͯΔ͚Ͳڐͯͦ͠͏͍͑( ˘ω˘)ϙΤϜ͔ͩΒ·͋͠ΐ͏͕ͳ͍ͳ
ਓɺݴ͍༁͕ඞཁ• ஏ͔͍ͣ͜͠ͱ• ݴ͍ͮΒ͍͜ͱ• ͩ͘Βͳ͍͜ͱ• ෆશͳ͜ͱ/ࣗ৴ͳ͍͜ͱ• ࣄతͰͳ͍͜ͱ…ͳͲΛݴ͏࣌ʹ
͑ͯͷΤΫεΩϡʔζҙਤతͳ੍ݶΛՃ͠ɺΈʹ͋ΔछͷʮϢϧ͞ʯΛ༩͑Δ͜ͱͰɺʮΏΔ͠ͷσβΠϯʯͱউखʹݺΜͰ͓Γ• ࠓ·Ͱݴ͑ͳ͔ͬͨ͜ͱ͕ݴ͑Δ• ॻ͚ͳ͔ͬͨਓ͕ॻ͚Δ• Ͱ͖ͳ͔ͬͨ͜ͱ͕Ͱ͖ΔݸਓతʹڵຯΛ࣋ͬͯΔ
WIPesa.ioͷWIPػೳʹ͍ͭͯ
อଘϘλϯ͕2ͭʁʁ
࡞ۀதͷͱ͖ɺWIPͰอଘQiita:TeamͰ͍͏ͱ͜ΖͷԼॻ͖ʹ͋ͨΔײ͡Լॻ͖ஈ֊͔Βଞਓʹݟ͑ΔΑ͏ʹͳͬͯΔ
WIPͰอଘ͢ΔͱɺλΠτϧ͕άϨʔΞτ• WIPͰߋ৽ͯ͠WebhookͰSlackͱ͔ʹ௨͕ඈͳ͍• ߋ৽ҰཡʹάϨʔΞτͯ͠ग़ΔʢHomeը໘Ͱͳ͍ʣ• Կߋ৽͢Δ͜ͱ͕Ͱ͖Δʢ㵰+Sʣ• ϩʔΧϧͷΤσΟλʹॻ࣌͘Έ͍ͨͳײ͡Ͱॻ͚Δ• ΈΜͳʹੵۃతʹΒͤ͠ͳ͍͚Ͳɺڵຯ͋ΔਓΘ͟Θ͟ݟʹདྷΕݟΔ͜ͱ͕Ͱ͖Δঢ়ଶ
͍͍ͩͨͰ͖ͨΒɺShip It!
Ship It! ͢ΔͱWebhook ͷ௨͕ඈͿ ƻΈΜͳ͕ݟʹདྷΔ
Almost done? ≠ Done!ʮ͍͍ͩͨͰ͖ͨʯ͕ϙΠϯτ• 70 - 80%͘Β͍ͱ͔Ͱ͍͍ͷ͔ʁ• ·ͱ·͖͔ͬͯͨΒҰ୴प͍ͨ͠ͳʔͱࢥͬͨλΠϛϯάͰShip it• ͬͱϒϥογϡΞοϓ͍ͨ͠ͳʔͱࢥͬͨλΠϛϯάͰɺWIPʹ͢͜ͱͰ͖Δʢ݁ߏΑ͘Δʣ
Done is better than perfectΛମݱͨ͠ػೳ
WIPWIPesaͷൃ໌͡Όͳ͍
WIPͰڞ༗͢Δ͜ͱͷޮՌɾޮೳΛզʑطʹ։ൃͷݱͰ͍ͬͯͨ
GitHubͷPull Requestͷ [WIP] ӡ༻• Pull Request ͷλΠτϧʹ [WIP] ͱ͚ͭΔ• 2013͘Β͍͔Β·ͬͨʁ• GitHub FlowͳνʔϜ։ൃͰී௨ͳײ͡ʹͳͬͨ
Qiita:Teamͷใͷ[WIP]ӡ༻ग़యΛݟ͚ͭΔ͜ͱ͕Ͱ͖ͳ͔ͬͨΜͰ͕͢ɺͲ͔͜ͰಡΜͩهԱ / 2014य़͘Β͍ʢesaΛ࡞Γ͡ΊΔલޙʣ• ேग़ࣾͨ͠ΒɺQiita:TeamͷใΛ·্ཱͣͪ͛ͯ• λΠτϧͷϓϨϑΟΫεʹ [WIP] ͱ͚ͭΔ• ࠓͷλεΫΛใʹՕॻ͖ʹ͢Δ• λεΫΛ͜ͳ͢͝ͱʹͦͷઆ໌ͳͲه͍ͯ͘͠• ୀࣾ࣌ʹ [WIP] Λ֎ͯ͠ߋ৽࣮ࡍਅࣅͯͬͯ͠ΈͨΒ͘͢͝ྑ͍ࣗͷͨΊʹॻ͍ͨTODOϦετ͕ؼΔͱ͖ʹใʹͳͬͯΔʂ
ʮWIPͰڞ༗ɺ͍͍ΑͶʯͱ͍͏ίϯηϯαε͕ɺ͢Ͱʹपғͷ։ൃݱʹ͋ͬͨ• ͦͷͨΊͷΑ͍Έ͕ͳ͍ͷͰӡ༻ͰΧόʔ• λΠτϧͷϓϨϑΟΫεʹ [WIP] ͱ͚ͭͨΓͶ• ͳΜͱ͔͏·͍ܗʹUIʹམͱ͍ͨ͠
WIPWIPਓͷͨΊͳΒͣ
ࣗͷͨΊʹͬͨ͜ͱ͕ɺ୭͔ͷͨΊʹͳΔ͜ͱ͕͋ΔࣗͷͨΊʹॻ͍ͨTODOϦετ͕ؼΔͱ͖ʹใʹͳͬͯΔʂͱ͍͏ঢ়ଶ͕ඒ͍͠ɻʢͳΒͳ͍͜ͱ͋Δʣ
ࣗͷͨΊʹͬͨ͜ͱ͕ɺ୭͔ͷͨΊʹͳΔ• OSS։ൃ• ϒϩά࡞ͷΞτϓοτͱ͔ʢಉਓ׆ಈͱ͔ʁʣ• WebαʔϏεͷυοάϑʔσΟϯάͱ͔• esa͕ࣾେʹ͍ͯ͠ΔߦಈࢦͷͻͱͭͰ͋Δ• αʔϏεάοζ͕ࣗͨͪཉͯ͘͠࡞ͬͯΔʬ͜ͷݪཧͰ͏·͘ճͬͯΔͷͨͪʭ
ࣗͷͨΊʹͬͨ͜ͱ͕ɺ୭͔ͷͨΊʹͳΔߦҝͦͷͷ͕ใुͰ͋Δঢ়ଶϞνϕʔγϣϯ͕ߴ͍
motivated teams=Α͍νʔϜ
• ϩʔΧϧͷςΩετΤσΟλ• ݸਓ༻ͷEvernote• ࣗѼͯͷϝʔϧࣗͷͨΊʹॻ͘ʮυΩϡϝϯτʯඋɾϝϞɾTODOϦετɾاըΞΠσΞɾઃܭΞΠσΞ༩݅ͷཧɾվળҊɾࠒࢥ͍ͬͯΔ͜ͱɾॻ్͖தͷΖΖ…ྫ͑͜Μͳͱ͜Ζʹ
ࣗͷϩʔΧϧ (͋Δ͍) ʹ͋ΔࣗͷͨΊͷͷΛͳΔ͘ૣ͍ஈ֊ͰΠϯλʔωοτʹɺଞਓʹݟ͑ΔॴʹɻͦΕΛΓ͘͢͢ΔΈ͕WIPʮॻ͔ͤΔʯͷͰͳͯ͘ɺطʹ͋ͳ͕ͨࠒॻ͍͍ͯΔ͜ͱΛૣΊʹڞ༗ͯ͘͠ΕΔͱͬͱΑ͍͜ͱ͕͋Δ͔ͱ͍͏ελϯε
WIPͲΜͳΑ͍͜ͱ͕͋Δͷʁ
Case:1• ࠷ॳʹࡶʹWIPͰͬ͘͟Γॻ͍ͯڞ༗͢ΔͱɺपғͷϑΟʔυόοΫΛड͚ͳ͕ΒɺਐతʹυΩϡϝϯτΞΠσΞΛྑ͍ͯ͘͘͜͠ͱ͕Ͱ͖Δ• ࠷ॳͷҰา͕౿Έग़͍͢͠• λΠτϧͷΈɺࢥ͍͖ͭΛՕॻ͖ʹ͢Δ͚ͩͰΑ͍• ୈ3ऀͷϦΞΫγϣϯΛΒ͑Δ͜ͱͰɺϞνϕʔγϣϯ্͕͕Δ• ݫ͗͢͠Δ & ࡉ͔͗͢ΔϑΟʔυόοΫΛ͛ΔҰؾʹ͕ߴ͍ͷΛॻ͘ͷϋʔυϧߴ͍͚ͲɺWIPͩͱॻ͖ग़͍͢͠ɻ
Case:2• ʮͳΔ΄Ͳɺ͜͏͍͏ϓϩδΣΫτ͕ࠓಈ͘༧ఆͳͷ͔ʯͱ͍͏प͕Ͱ͖Δ• ࣄΛҰาਐΊͨײ͕ग़Δ• WIPʹ˒͕͑ΔͱɺʮͦͷௐࢠͰOKʯʮ͍͍ͶʂʯʮݟͯΔΑʂʯͷαΠϯ• ΔΑʂΖ͏Αʂ ΛपғʹॊΒ͔͘Ξϐʔϧ → पΓ৺ͷ४උ͕Ͱ͖Δ• اը͕ॊΒ͔͍͏͔ͪΒΈΜͳ͕ࣄऀʹͳΕΔ༨͕Ͱ͖Δ• ʮͬͱૣ͘ݴͬͯ͘ΕΕΑ͔ͬͨͷʹʯʮͦΜͳٸʹݴΘΕͯࠔΔ…ʯࢀߟʣϝυϨʔ͞ΜͷΠϯλϏϡʔ : https://docs.esa.io/posts/153͋Δاը্ཱ͕͕ͪͬͨͱ͖ʹɺৄࡉ͕ܾ·ͬͯͳͯ͘ɺ·ͣλΠτϧ͚ͩͰWIPͷυΩϡϝϯτΛ࡞͓ͬͯ͘ɻ
Case:3• ใͷTODOʹॻ͍ͯ͋ΕɺΘ͟Θ্͕࢘͟ਐḿ֬ೝΛ͠ͳͯ͘͢Ή• WIPͰڞ༗͢Δ͜ͱʹΑͬͯɺ୭͕ԿΛΔͭΓͳͷ͔ɺ͍ͬͯΔͷ͔ΛΜΘΓѲͰ͖Δ• ·ͩͬͯͳ͍͚ͲΔͭΓͰ͋ΔΜͩΑɺͱ͍͏͞Γ͛ͳ͍ΞϐʔϧʹͳΔ• Θ͟Θ͑͟ʹ͍͘·ͰͰͳ͍Μ͚ͩͲɺͪΐͬͱΜͰΔͱ͜Ζ͍͍᪴ͯΔͱ͜ΖͳͲॻ͖͍͢XXX͞Μ·ͩΞΫγϣϯͳ͍͚ͲɺWIPͷใͷTODOϦετΛݟΔͱɺ͜ͷ݅TODOͱͯͪ͠ΌΜͱೝࣝͯ͘͠ΕͯΔΜͩͳɻ
Case:4• WIPͱॻ͍ͯ͋Δͱɺॻ͖खͷߟ͑Λ಄͔Β൱ఆ͠ͳ͘ͳΔ• ͜Ε͔Βࡉ͔͍ͱ͜ΖΑ͍ͯͭ͘͘͠ΓͳͷͩΖ͏ͱ͍͏͜ͱΛલఏʹ͢Δ͜ͱ͕Ͱ͖Δ• ʮ·ͩॻ͍ͯͳ͍͚͔ͩ͠Εͳ͍͚Ͳɺ͕̋̋Γͯͳ͍͔ʙʯˠ ࢦఠࣗવʹؾΛͬͨײ͡ʹͳΔ• ͕େ͖͍ਓɾϋʔτ͕ڧ͍ਓҎ֎ൃ৴͘͢͠ͳΔ• WIPͩͱ૬खʹ༏͘͠ͳΕΔ → ॏཁπϝ͕͍ΞΠσΞ͚ͩͲɺ·͋WIP͔ͩΒࡉ͔͍ποίϛΛೖΕΔͷͳʔ
WIP·ͱΊ: શ͕ͯWIPʹͳΔ
͜ΕFIXͰ͔͢ʁ֬ఆࣄ߲Ͱ͔͢ʁݱͰΑ͋͘Δ࣭
͔֬ʹࣄΛ͢Δ্Ͱɺʮ͜ΕͰ֬ఆ(FIX)ʯݐલ্ඞཁɻͳ͍ͱ্ख͘ճΒͳ͍ɻ͚ΕͲຊདྷɺશͯͷͷ͝ͱෆશͰɺൃల్্ͰɺͲͷ͔࣌ΒͰมΘ͍͚ͬͯΔ͠ɺͬͱྑ͘͢Δ͜ͱ͕Ͱ͖ΔͷͰͳ͍͔ʁ
WIP͜Ε͔Βͬͱͬͱྑ͘ͳΔՄೳੑ͕͋Δͱ͍͏͜ͱ
શ͕ͯWIPͱͯ͠ίϛϡχέʔγϣϯͰ͖ΔΑ͏ʹͳΔͱɺΑΓࣗతͰ͍͖͍͖ͱͨ͠Α͍ͷ͕࡞ΕΔνʔϜʹͳΕΔͷ͔
Team in ProgressThank you (\( ⁰⊖⁰)/)