Slide 1

Slide 1 text

esaͷWIPͷ࿩ 2019 by @ken_c_lo at esa LLC June 29, 2019 ͱͪ͗Rubyձٞ 08 WIP

Slide 2

Slide 2 text

!2 • ੺௩ ົࢠ • @ken_c_lo (@taea) • esa LLC • ૑ۀऀɾσβΠφʔ • ΤϯδχΞ2ਓ + σβΠφʔ1ਓ • ࠷ॳ͸झຯͰαʔϏεΛ࡞͍ͬͯͨ • 5೥લ͔Β๏ਓԽ

Slide 3

Slide 3 text

https://esa.io

Slide 4

Slide 4 text

• MarkdownͰॻ͚Δ৘ใڞ༗αʔϏε • Wikiతͳ࢖͍ํ͕Ͱ͖Δ esaΛ͝ଘ஌ͷํʁ ůŢ

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

esaͷWIPͷ࿩ 2019 by @ken_c_lo at esa LLC June 29, 2019 ͱͪ͗Rubyձٞ 08 WIP

Slide 7

Slide 7 text

WIP ͱ͸ʁ

Slide 8

Slide 8 text

WIP ʹ Work in Progress ਐߦதɾ࡞ۀதɾॲཧதɾະ׬੒ ෆ׬શͰ͋Δ͜ͱΛप஌͢Δه߸ͱͯ͠࢖ΘΕΔ řŎŕŲƅ

Slide 9

Slide 9 text

ͱΓ͋͑ͣɺڞ༗ ࡶʹڞ༗ ·ͩશ෦Ͱ͖ͯͳ͍͚Ͳڞ༗

Slide 10

Slide 10 text

͜Μͳײ͡ͷ͜ͱΛਐΊͯ͸͍Δ͚Ͳɺ ·ͩ׬੒͡Όͳͯ͘ɺ ͜Ε͔Β΋ͬͱྑ͘ͳΔΜͰ… [WIP] Λ͚ͭͯԿ͔Λڞ༗͢Δͱ͖ͷ͖΋ͪ • ͳͷͰݫ͗͢͠Δποίϛ͸·ͩצหͯ͠Ͷ • ͚Ͳɺؒ͘͢͝ҧͬͯͨΒڭ͑ͯͶ • ࠔͬͯͨΒॿ͚ͯͶ • ΍Δؾ͸͋ͬͯ͜Ε͔Β΍Δͭ΋ΓͰ͸͋ΔΜͩΑ • ͬ͘͟Γ͜͏͍͏͜ͱ΍ͬͯΔ͔ΒͳΜͱͳ͘஌ͬͯͯͶ • ͞Γؾͳ͘΄Ίͯ͘ΕͨΒ΍Δؾग़Δ͔΋ • ·ͣ͸ࣗ෼ͷϝϞతʹॻ͍ͯΔ͚ͩͳΜͩ …ׂͱɺݴ͍༁͕·͍͔͠΋͠Εͳ͍ʂ

Slide 11

Slide 11 text

ͭ·ΓɺWIPͱ͸ ΤΫεΩϡʔζͷҰछ ʢݴ͍༁ɾหղɾݐલʣ Excuse me

Slide 12

Slide 12 text

ਓ͸ɺ ݴ͍༁ɾݐલ͕ඞཁ • ஏ͔͍ͣ͜͠ͱ • ݴ͍ͮΒ͍͜ͱ • ͩ͘Βͳ͍͜ͱ • ෆ׬શͳ͜ͱ/ࣗ৴ͳ͍͜ͱ • ࣄ຿తͰͳ͍͜ͱ …ͳͲΛݴ͏࣌ʹ

Slide 13

Slide 13 text

ͪͳΈʹ…ʮϙΤϜʯ΋ҰछͷΤΫεΩϡʔζ • pplog.net • ࠷৽ͷهࣄ͔͠ެ։Ͱ͖ ͳ͍ϒϩάͷΑ͏ͳ΋ͷ • ʮϙΤϜʯΛॻ͘৔ॴ • ϙΤϜ͔ͩΒ • Web্ʹ࢒Βͳ͍͔Β ݴ͍ʹ͍͘͜ͱɺஏͣ ͔͍͜͠ͱ΋ɺϙΤϜ ͳΒݴ͑Δοʂ

Slide 14

Slide 14 text

ΤΫεΩϡʔζ΍ҙਤతͳ੍ݶΛ෇Ճ͠ɺ ࢓૊Έʹ͋ΔछͷʮϢϧ͞ʯΛ༩͑Δ͜ͱͰɺ ʮΏΔ͠ͷσβΠϯʯͱউखʹݺΜͰ͓Γ • ࠓ·Ͱݴ͑ͳ͔ͬͨ͜ͱ͕ݴ͑Δ • ॻ͚ͳ͔ͬͨਓ͕ॻ͚Δ • Ͱ͖ͳ͔ͬͨ͜ͱ͕Ͱ͖Δ ݸਓతʹڵຯΛ࣋ͬͯΔ

Slide 15

Slide 15 text

WIP esa.ioͷWIPػೳʹ͍ͭͯ

Slide 16

Slide 16 text

อଘϘλϯ͕ 2ͭʁʁ

Slide 17

Slide 17 text

࡞ۀதͷͱ͖͸ɺWIPͰอଘ ϒϩάͳͲͰ͍͏ͱ͜ΖͷԼॻ͖ʹ͋ͨΔײ͡ Լॻ͖ஈ֊͔Βଞਓʹݟ͑ΔΑ͏ʹͳͬͯΔ

Slide 18

Slide 18 text

WIPͰอଘ͢Δͱɺ λΠτϧ͕άϨʔΞ΢τ • WIPͰߋ৽ͯ͠΋WebhookͰSlackͱ͔ʹ௨஌͕ඈ͹ͳ͍ • ߋ৽Ұཡʹ͸άϨʔΞ΢τͯ͠ग़ΔʢHomeը໘Ͱ͸ͳ͍ʣ • Կ౓΋ߋ৽͢Δ͜ͱ͕Ͱ͖Δʢ㵰+Sʣ • ΈΜͳʹੵۃతʹ஌Βͤ͸͠ͳ͍͚Ͳɺڵຯ͋Δਓ͸Θ͟Θ͟ݟʹདྷΕ ͹ݟΔ͜ͱ͕Ͱ͖Δঢ়ଶ

Slide 19

Slide 19 text

͍͍ͩͨͰ͖ͨΒɺShip It!

Slide 20

Slide 20 text

Ship It! ͢Δͱ Webhook ͷ௨஌͕ඈͿ ƻ ΈΜͳ͕ݟʹདྷΔ

Slide 21

Slide 21 text

Almost done? ≠ Done! ʮ͍͍ͩͨͰ͖ͨʯ͕ϙΠϯτ • ׬੒౓ 70 - 80%͘Β͍ͱ͔Ͱ͍͍ͷ͔΋ʁ • ·ͱ·͖͔ͬͯͨΒҰ୴प஌͍ͨ͠ͳʔͱࢥͬͨλΠϛϯάͰShip it • ΋ͬͱϒϥογϡΞοϓ͍ͨ͠ͳʔͱࢥͬͨλΠϛϯάͰɺWIPʹ໭ ͢͜ͱ΋Ͱ͖Δʢ݁ߏΑ͘΍Δʣ

Slide 22

Slide 22 text

WIP Ͱ೔ใΛॻ͍ͯΈΔ Case Study

Slide 23

Slide 23 text

ग़ࣾͨ͠Β…WIPͰ೔ใΛॻ͘ śŰżŖ લ೔ͷ೔ใΛίϐʔͯ͠ฤू ೔෇ͬΆ͍਺ࣈ͕λΠτϧʹೖͬͯΔهࣄΛί ϐʔ͢Δͱɺউखʹࠓ೔ͷ೔෇ʹͯ͘͠ΕΔ TODOϦετΛॻ͘ w <>ˠͰνΣοΫϘοΫεॻ͚Δ w ࠓ೔΍Δ༧ఆͷ͜ͱ͕ࣗ෼Ͱ΋၆ᛌͰ͖Δ w Ϧετʹॻ͍͓ͯ͘ͱɺ๨ΕͯΔΘ͚͡Όͳ͘ ͯɺ΍Δͭ΋Γ͸͋ΔΜͩͳͬͯ͜ͱ΋఻ΘΔ

Slide 24

Slide 24 text

࢓ࣄத… ೔ใΛԿ౓΋ߋ৽ ŹŞŹŞʜ λεΫΛ͜ͳͨ͢ͼɺ೔ใΛߋ৽ w 50%0ϦετʹνΣοΫΛೖΕΔ w ෇ਵ͢Δղઆ΍උ๨࿥ɺϋϚͬͨͱ͜Ζ΍ݒ೦ɺ ͦͷ࣌ͷؾ࣋ͪͳͲ΋௥ه͠ͱ͘ͱศར w ಥൃతͳλεΫ΋௥Ճͯ͠ߋ৽ w ೔ͷऴΘΓʹʮࠓ೔Կ΍͚ͬͨͬʜʯͬͯͳΒ ͣʹࡁΉ

Slide 25

Slide 25 text

ୀࣾ࣌ʹ…೔ใΛShip It! śŨŜƀŖ SlackͳͲʹ௨஌͕ඈΜͰɺΈΜͳ͕ݟʹདྷΔ ࠓ೔ͷॴײ΍૯ׅΛॻ͍ͯɺShip It!

Slide 26

Slide 26 text

ͦͷଞͷ೔ใTIPS • ೔ใλΠτϧʹࠓ೔΍ͬͨ͜ͱ΍ɺࠓ೔ͷؾ࣋ ͪΛॻ͘ਓ΋͍Δ • ࠓ೔ͷϥϯν΍ɺࠓ೔ͷςʔϚۂΛॻ͘ਓ΋ • ͋ͱͰͲΜͳ೔͔ͩͬͨࢥ͍ग़ͤͯศར • ୀࣾ࣌ʹ໌೔ͷ೔ใΛWIPͰॻ͍͓ͯ͘έʔε ΋͋Δ • ໌೔ͷݟ௨ཱ͕ͯ͠ΒΕͯศར • ேձͳͲͰɺࡢ೔ͱࠓ೔ͷ೔ใΛڞ༗ͯ͠ɺͦ ΕΛݟͳ͕Β৘ใڞ༗΍૬ஊΛͨ͠Γ΋͢Δ • ʮॴײʯίʔφʔʢϑϦʔςΩετͷ෦෼ʣͰ ࣌ં੝Γ্͕ͬͨΓ͢Δ

Slide 27

Slide 27 text

WIPͰ೔ใΛॻ͘ͱ… ŬŕŴƅŖ ேɺࣗ෼ͷͨΊʹॻ͍ͨTODOϦετ͕ɺ
 ؼΔͱ͖ʹ͸ΈΜͳʹڞ༗Ͱ͖Δ೔ใʹʂ w ʮใࠂɾڞ༗ͷͨΊͷυΩϡϝϯτʯΛॻ͔ͳͯ͘ྑ͘ͳΔΜͰ͢Ͷ w ಉ͡Α͏ͳײ͡ͰɺʮΞδΣϯμʯ͕ձٞऴΘΔࠒʹʮٞࣄ࿥ʯʹͳͬͨΓ͠·͢

Slide 28

Slide 28 text

WIP ೔ใ͚ͩ͡Όͳ͍ɺ͍ΖΜͳΑ͍͜ͱ

Slide 29

Slide 29 text

Case 1: WIPͰॻ͘ͱɺணख͠΍͍͢ • ࣄલʹෆ࣮֬ͳཁૉͷଟ͍࢓ࣄ΄ͲɺखΛ͚ͭΔͷ͕ԯ߷ʢεϥΠυͱ͔΋ʂʣ • WIPͳΒ࠷ॳͷҰา͕౿Έग़͠΍͍͢ • ࠷ॳ͸λΠτϧͷΈɺࢥ͍͖ͭΛՕ৚ॻ͖ʹ͢Δ͚ͩͰ΋Α͍ • ࠷ॳʹࡶʹWIPͰͬ͘͟Γॻ͍ͯڞ༗͢ΔͱɺपғͷϑΟʔυόοΫΛड͚ͳ͕ ΒɺঃʑʹυΩϡϝϯτ΍ΞΠσΞΛྑ͍ͯ͘͘͜͠ͱ͕Ͱ͖Δ • ్தͰୈࡾऀͷϦΞΫγϣϯΛ΋Β͑ΔͱɺϞνϕʔγϣϯ΋্͕Δ Ұؾʹ׬੒౓͕ߴ͍΋ͷΛॻ͘ͷ͸ ϋʔυϧߴ͍͚ͲɺWIPͩͱղ૾౓͕ ௿͍ঢ়ଶ͔Βॻ͖ग़͠΍͍͢ɻ

Slide 30

Slide 30 text

Case 2: WIPͰެ։͢ΔͱɺपΓͷཧղΛಘ΍͍͢ • ʮͳΔ΄Ͳɺ͜͏͍͏ϓϩδΣΫτ͕ࠓ౓ಈ͘༧ఆͳͷ͔ʯͱ͍͏प஌͕Ͱ͖Δ • ΍ΔΑʂ΍Ζ͏Αʂ ΛपғʹॊΒ͔͘Ξϐʔϧ → पΓ΋৺ͷ४උ͕Ͱ͖Δ • اը͕ॊΒ͔͍͏͔ͪΒΈΜͳ͕౰ࣄऀʹͳΕΔ༨஍͕Ͱ͖Δ • ݻ·͔ͬͯΒݴ͏ͱˠʮ΋ͬͱૣ͘ݴͬͯ͘ΕΕ͹…ʯʮͦΜͳٸʹݴΘΕͯ ΋ࠔΔ…ʯ ࢀߟʣϝυϨʔ͞ΜͷΠϯλϏϡʔ : https://docs.esa.io/posts/153 اը্ཱ͕͕ͪͬͨͱ͖ʹɺৄࡉ͕ܾ ·ͬͯͳͯ͘΋ɺ·ͣ͸λΠτϧ͚ͩ ͷWIPͷυΩϡϝϯτΛ࡞͓ͬͯ͘ɻ

Slide 31

Slide 31 text

• WIPͱॻ͍ͯ͋Δͱɺॻ͖खͷߟ͑Λ಄͔Β൱ఆ͠ͳ͘ͳΔ • ͜Ε͔Βࡉ͔͍ͱ͜ΖΛྑ͍ͯͭ͘͘͠΋ΓͳͷͩΖ͏ɺͱ͍͏͜ͱ Λલఏʹ઀͢Δ͜ͱ͕Ͱ͖Δ • ʮ·ͩॻ͍ͯͳ͍͚͔ͩ΋͠Εͳ͍͚Ͳɺ͕̋̋଍Γͯͳ͍͔΋ʙʯ ˠ ࢦఠ΋ࣗવʹؾΛ࢖ͬͨײ͡ʹͳΔ • ੠͕େ͖͍ਓɾϋʔτ͕ڧ͍ਓҎ֎΋ൃ৴͠΍͘͢ͳΔ ☺ Case 3: WIPͩͱɺಡΈख͕༏͘͠ͳΕΔ ͪΐͬͱπϝ͕؁͍ΞΠσΞ͚ͩͲɺ
 ·͋WIP͔ͩΒ͋Μ·ΓποίϛΛೖ ΕΔͷ΋ͳ͊…

Slide 32

Slide 32 text

WIP WIP͸ਓͷͨΊͳΒͣ

Slide 33

Slide 33 text

• ϩʔΧϧͷςΩετΤσΟλ • ݸਓ༻ͷEvernote • ࣗ෼Ѽͯͷϝʔϧ ࣗ෼ͷͨΊʹॻ͘ʮυΩϡϝϯτʯ උ๨࿥ɾϝϞɾTODOϦετɾاըΞΠσΞɾઃܭΞΠσΞ ༩݅ͷ੔ཧɾվળҊɾ೔ࠒࢥ͍ͬͯΔ͜ͱɾ ॻ్͖தͷ΋Ζ΋Ζ… ྫ͑͹͜Μͳͱ͜Ζʹ

Slide 34

Slide 34 text

ࣗ෼ͷϩʔΧϧ (͋Δ͍͸೴಺) ʹ͋Δ ࣗ෼ͷͨΊͷ΋ͷΛɺ
 ૣ͍ஈ֊ͰνʔϜϝΠτʹݟ͑Δ৔ॴʹɻ ͦΕΛ΍Γ΍͘͢͢Δ࢓૊Έ͕WIP ΈΜͳॻ͍ͯͳ͍Θ͚͡Όͳ͍ɻ ਓʹݟͤͯͳ͍͚ͩͳΜͩʂ

Slide 35

Slide 35 text

ࣗ෼ͷͨΊʹ΍ͬͨ͜ͱ͕ɺ ୭͔ͷͨΊʹͳΔ͜ͱ͕͋Δ ࣗ෼ͷͨΊʹॻ͍ͨTODOϦετ͕ؼΔͱ͖ʹ͸೔ใʹͳͬͯΔʂ ʢͳΒͳ͍͜ͱ΋͋Δʣ

Slide 36

Slide 36 text

ࣗ෼ͷͨΊʹ΍ͬͨ͜ͱ͕ɺ ୭͔ͷͨΊʹͳΔ • OSSͷϓϩδΣΫτɺݸਓ։ൃ • ϒϩά΍࡞඼ͷΞ΢τϓοτɺಉਓ׆ಈͱ͔΋ʁ • WebαʔϏεͷυοάϑʔσΟϯάͱ͔΋ • esa͕ࣾେ੾ʹ͍ͯ͠Δߦಈࢦ਑ͷͻͱͭ • ʮࣗ෼ͨͪࣗ਎͕ཉ͍͠΋ͷɾ࢖͏΋ͷΛͭ͘Δʯ • αʔϏε΋άοζ΋ࣗ෼͕ͨͪཉͯ͘͠࡞ͬͯΔ ʬ͜ͷݪཧͰճ͍ͬͯͦ͏ͳ΋ͷͨͪʭ

Slide 37

Slide 37 text

ࣗ෼ͷͨΊʹ΍ͬͨ͜ͱ͕ɺ ୭͔ͷͨΊʹͳΔ ߦҝͦͷ΋ͷ͕ใुͰ͋Δঢ়ଶ Ϟνϕʔγϣϯ͕ߴ͍ ͦΕͧΕ͕ࣗ཯తʹಈ͚ΔνʔϜ

Slide 38

Slide 38 text

ࣗ཯తͳνʔϜ = Α͍νʔϜ …ͩͱesa͸ߟ͑ͯΔ

Slide 39

Slide 39 text

WIP ·ͱΊ: શ͕ͯWIPʹͳΔ

Slide 40

Slide 40 text

͜Ε͸FIXͰ͔͢ʁ ֬ఆࣄ߲Ͱ͔͢ʁ ݱ৔ͰΑ͋͘Δ࣭໰

Slide 41

Slide 41 text

͔֬ʹ࢓ࣄΛ͢Δ্Ͱɺ ʮ͜ΕͰ֬ఆ(FIX)ʯ͸ݐલ্ඞཁɻ ͳ͍ͱ্ख͘ճΒͳ͍ɻ ͚ΕͲຊདྷɺ શͯͷ΋ͷ͝ͱ͸ෆ׬શͰɺ ൃల్্Ͱɺ Ͳͷ࣌఺͔ΒͰ΋มΘ͍͚ͬͯΔ͠ɺ ΋ͬͱྑ͘͢Δ͜ͱ͕ Ͱ͖ΔͷͰ͸ͳ͍͔ʁ

Slide 42

Slide 42 text

WIP ͜Ε͔Β΋ͬͱ΋ͬͱྑ͘ͳΔՄೳੑ͕ ͋Δͱ͍͏͜ͱ ͋Εʁ࣮͸ੈͷதͷ৭Μͳ΋ͷɺ͍͍ͩͨ8*1ʹͰ͖ΔͷͰ͸ʁ

Slide 43

Slide 43 text

શ͕ͯWIPͱͯ͠ ίϛϡχέʔγϣϯͰ͖ΔΑ͏ʹͳΔͱɺ ΑΓࣗ཯తͰ͍͖͍͖ͱͨ͠ Α͍΋ͷ͕࡞ΕΔνʔϜʹͳΕΔͷ͔΋

Slide 44

Slide 44 text

Everything is in Progress Thank you (\( ⁰⊖⁰)/)