Frontend_Developers_Experience__Why_What_How_.pdf
by
Yosuke Furukawa
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Frontend Developers Experience (Why/ What/How) 2021/04/10 @ Developer eXperience Day 2021
Slide 2
Slide 2 text
Twitter: @yosuke_furukawa Github: yosuke-furukawa
Slide 3
Slide 3 text
ϑϩϯτΤϯυͱDX • UX (Ϣʔβʔମݧ) Λ࡞Δͷ͕ϑϩϯτΤϯυΤϯδχ ΞͰ͋Δ͕ɺ࠷ߴͷUXΛ࡞ΔͨΊʹඞཁͳͷ͕ DX (։ ൃऀମݧ) • UX ͱ DX ରཱߏͰͳ͘ɺཱ྆͢Δ͖ͷɻ • ͕ͨͩ࣌ؒ͠ݶΒΕͨதͰཱ྆ͤ͞ΔͷҰͭͷٕज़ɻ
Slide 4
Slide 4 text
ϑϩϯτΤϯυͱDX • UX (Ϣʔβʔମݧ) Λ࡞Δͷ͕ϑϩϯτΤϯυΤϯδχ ΞͰ͋Δ͕ɺ࠷ߴͷUXΛ࡞ΔͨΊʹඞཁͳͷ͕ DX (։ ൃऀମݧ) • UX ͱ DX ରཱߏͰͳ͘ɺཱ྆͢Δ͖ͷɻ • ͕ͨͩ࣌ؒ͠ݶΒΕͨதͰཱ྆ͤ͞ΔͷҰͭͷٕज़ɻ ࠓճ69ͱ%9ͷཱ྆Λͤ͞ΔͨΊɺత 8IZ8IBU Λ໌ Β͔ʹ͠ɺͲ͏͔ͬͯ͏ )PX ͔Λ͠·͢ɻ
Slide 5
Slide 5 text
Why/What
Slide 6
Slide 6 text
Why/What • ։ൃऀମݧੜ࢈ੑʹ݁͠ɺҾ͍ͯϞν ϕʔγϣϯʹؔ࿈͢Δɻ ੜ࢈ੑΞοϓ ੜ࢈ੑμϯ Ϟνϕʔγϣϯμϯ ϞνϕʔγϣϯΞοϓ
Slide 7
Slide 7 text
Why/What • ։ൃऀମݧͱҰޱʹݴ࣮͍ͬͯΖΜͳཁૉ͕བྷ ·Δɻ • ͜ͷηΫγϣϯͰ ʮ։ൃऀମݧͷ্ ≒ ੜ࢈ੑͷ্ͷͨΊͷࢪࡦʯ ͱͯ͢͠ɻ
Slide 8
Slide 8 text
ੜ࢈ੑΛѱ͘͢ΔϒϩοΧʔୡ • ʮ։ൃऴ൫ͷखΓʯ • ʮݹ͘ͳͬͨ··์ஔ͞ΕͨϥΠϒϥϦ܈ʯ • ʮܗ֚Խͨ͠։ൃϫʔΫϑϩʔʯ • ʮIEରԠʯ • ͳͲͳͲ
Slide 9
Slide 9 text
։ൃऴ൫ͷखΓ • ʮಈ͍͍ͯΔը໘ΛݟͨΒͳΜ͔ҧͬͨɻม ͍͑ͨʯ • ʮ࠷ޙʹAPIͱϑϩϯτΛͭͳ͍ͰΈͨΒશવ ಈ͔ͳ͍Μ͚ͩͲɺɺɺʯ • खΓ͕ൃੜ͢Δ͜ͱࣗମ͕ѱ͍Θ͚Ͱͳ͘ɺదͳλΠϛϯ άͰϑΟʔυόοΫΛΒ͑ͯͳ͍͜ͱ͕ѱ͔ͬͨΓ͢Δɻɻɻ
Slide 10
Slide 10 text
ݹ͘ͳͬͨ··์ஔ͞ΕͨϥΠ ϒϥϦ • ʮϥΠϒϥϦͷxxxͬͯػೳ͕͑ͳͯ͘ݟͯ ΈͨΒόʔδϣϯ͕3ੈݹ͔ͬͨʯ • ʮϥΠϒϥϦͷόʔδϣϯΞοϓස͕ૣ͗͢ ͯഁյతมߋଟ͘ɺোൃੜ͕ාͯ͘όʔ δϣϯΞοϓͰ͖ͳ͍ʯ • ์ஔ͞Εͯ͠·͏ͱཷ·ͬͨચ͍ͷΑ͏ʹͲΜͲΜ໘ʹͳΔ
Slide 11
Slide 11 text
ܗ֚Խ͞ΕͨϫʔΫϑϩʔ • ʮίϯϙʔωϯτΧλϩάҰཡ (Storybook) ࡞͚ͬͨͲ୭ݟͯͳ͔͔ͬͨΒ͜ͷલݟͨ ΒյΕͯͨʯ • ʮςετͷՃͷํ͕Θ͔Βͣɺ୭ςετ ॻ͍ͯͳ͔ͬͨʯ • ։ൃऀͷπʔϧͰղܾͰ͖Δ෦͋Δ͕ςετͷॻ͖ํΛΒ ͳ͔ͬͨΓͱͦͦ։ൃϫʔΫϑϩʔͷఆணෆ͋Δɻ
Slide 12
Slide 12 text
IEରԠ • ϊʔίϝϯτ • ࠷ۙʮΒͳ͍ʯͱ͖ͬͺΓݴͬͯΔ • ֮͑ͯؼͬͯ΄͍͠: IEͰىಈͨ͠߹Ͱ͋ͬͯ Edge ʹڧ੍ϦμΠϨΫτ͢ΔΈ https://docs.microsoft.com/en-us/microsoft-edge/ web-platform/ie-to-microsoft-edge-redirection
Slide 13
Slide 13 text
։ൃऀମݧΛԼ͛ͯ͠·͏ཁҼ • ৭ʑ͋Δ͕ɺखΓɾݹ͍··์ஔ͞Εͨϥ ΠϒϥϦɾܗ֚Խ͞ΕͨϫʔΫϑϩʔͳͲ͕ ճΓճͬͯମݧΛଛͶͯ͠·͏ • ݁Ռͱͯ͠ϞνϕʔγϣϯͷԼϓϩμΫ τ࣭ͷԼʹܨ͕ΔՄೳੑ͕͋Δ
Slide 14
Slide 14 text
How
Slide 15
Slide 15 text
How • ͜ͷखͷϒϩοΧʔΛഉআ͢Δํ๏࣮ͨ͘ ͞Μ͋Δɺ͜͜Ͱओʹզʑ͕Ͳ͏औΓΜͰ ͖͔ͨʹ͍ͭͯղઆ͢Δɻ • ʮखΓʯ • ʮϥΠϒϥϦߋ৽ʯ • ʮܗ֚Խ͞ΕͨϫʔΫϑϩʔʯ
Slide 16
Slide 16 text
खΓ
Slide 17
Slide 17 text
खΓ • ϑϩϯτΤϯυΤϯδχΞ৫ͷ߹෦ ʹ͍Δ͜ͱ͕ଟ͍ɻؔΘΔਓ͕૿͑Δʹ ͋Δ όοΫΤϯυ ϑϩϯτΤϯυ ϓϥϯφʔ σβΠφʔ
Slide 18
Slide 18 text
खΓ • ؔΘΔਓ͕ଟ͘ͳΕͳΔ΄Ͳࣄ͕ਐΉʹ ͭΕͯมߋՕॴ͕ൃੜ͕ͪ͠ • ϓϥϯφʔɾσβΠφʔʮಈ͍͍ͯΔը໘Λ ݟͨΒͳΜ͔ҧͬͨɻม͍͑ͨʯ • όοΫΤϯυʮ࠷ޙʹAPIͭͳ͍ͩΒͳΜ͔ಈ ͔ͳ͍Μ͚ͩͲɻɻɻʯ
Slide 19
Slide 19 text
खΓ • ͜͜Ͱͷྫͱͯ͠ڍ͛ͨ̎ͭͷखΓൃੜʹ ͍ͭͯͲ͏զʑ͕औΓΜͰ͖͔ͨΛհ͢ Δɻ • ϑϩϯτΤϯυ ϓϥϯφʔ σβΠφʔ όοΫΤϯυ खΓൃੜͦͷᶃ ಈ͍ͯΔϖʔδݟͨΒͳΜ͔ ҧͬͨ खΓൃੜͦͷᶄ ࠷ޙʹ͕ͬ͠ΌΜ͜
Slide 20
Slide 20 text
ಈ͍ͯΔͷΛΈͨΒͳΜ͔ҧͬ ͨ • ࠷ॳʹ಄ͷதͰΠϝʔδͯͨ͠ͷ͕͋Δఔ ਐΜͰ۩ମԽ͍ͯ͘͠ʹͭΕͯဃ͍ͯ͠ ͘ (BQ
Slide 21
Slide 21 text
ಈ͍ͯΔͷΛΈͨΒͳΜ͔ҧͬ ͨ • Gap͕খ͍͞͏ͪͳΒ࣮มߋमਖ਼ޮ͖͍͢ɻ ։ൃ్தͰ͍͍ͷͰϑΟʔυόοΫΛૹͬͯΒ ͑Δͱྑ͍ɻ • ์ஔͯ͠େ͖͘ͳ͔ͬͯΒͩͱमਖ਼͢Δͷ͕େมʹ ͳΔ • ϖʔδΛߏங ߋ৽ ߋ৽ ߋ৽ ߋ৽ FB FB FB FB
Slide 22
Slide 22 text
ಈ͍ͯΔͷΛΈͨΒͳΜ͔ҧͬ ͨ • զʑͷΓํ: σϞͰݟͤΒΕΔ୯ҐͰ։ൃΛਐΊͯ ͓͖ɺϑΟʔυόοΫΛಘΒΕΔΑ͏ʹ͢Δɻ OKR(ΦʔέʔΞʔϧ) γϦίϯόϨʔࣜͰେͳඪΛୡ͢Δํ๏ ΫϦεςΟʔφɾΥυΩʔஶ / ܦBP 2018 ຖि༵ۚʹσϞσΠͱ͍͏ ܗͰՌΛݟͤͯॕ͏ɻ
Slide 23
Slide 23 text
ಈ͍ͯΔͷΛΈͨΒͳΜ͔ҧͬ ͨ • ۩ମతʹ։ൃ༻ͷαʔόΛৗʹPull Request͕ߋ৽ ͞ΕΔͨͼʹ࠷৽Խ͓͖ͯ͠ɺ͍ͭͰϓϥϯ φʔɾσβΠφʔ͕৮ΕͯݟΒΕΔΑ͏ʹ͓ͯ͠ ͘ɻΠϝʔδͱ͢Γ߹ΘͤΛߦ͑ΔΑ͏ʹ͢ Δɻ
Slide 24
Slide 24 text
࠷ޙʹͭͳ͍ͩΒಈ͔ͳ͔ͬͨ • ͜ΕجຊదͳλΠϛϯάͰϑΟʔυ όοΫΛΒ͍͍ͨ • APIεΩʔϚͷมߋUIͷมߋʹ݁͢Δ • ։ൃऴ൫ͰݴΘΕͯݫ͍͠
Slide 25
Slide 25 text
࠷ޙʹͭͳ͍ͩΒಈ͔ͳ͔ͬͨ • ॳظʹߏஙͨ͠ API ఆٛΛࢀߟʹϑϩϯτΤϯυͱόοΫΤ ϯυ͕ͣͬͱͯ͠αʔϏεΛ࡞ͬͨͱͯ͠ɺͦΕΒΛ࠷ ޙʹͭͳ͍Ͱجຊಈ͔ͳ͍ɻϏοάόϯΈ͍ͨʹͳΔɻ • ఆ͍ͯ͠ͳ͍ϦΫΤετ͕ඞͣͲ͔͜ʹଘࡏ͢Δɻ •
Slide 26
Slide 26 text
࠷ޙʹͭͳ͍ͩΒಈ͔ͳ͔ͬͨ • զʑͷΓํ: APIఆٛΛ྆ऀʢओʹϑϩϯτ ΤϯυओಋʣͰܾΊ্ͨͰɺ͓ޓ͍ʹఆظత ʹಉظΛऔΓͳ͕Β։ൃ͢Δ • Agreed ͱ͍͏πʔϧͰΧόʔ͍ͯ͠Δ
Slide 27
Slide 27 text
࠷ޙʹͭͳ͍ͩΒಈ͔ͳ͔ͬͨ • API ͷཁٻΛॻ͘ͱͦΕ͕ϑϩϯτΤϯυͰ ϞοΫαʔόʹͳΔ • όοΫΤϯυͰͦͷཁٻ͕ϦΫΤετΛ ͛ΔͨΊͷςετʹͳΔ
Slide 28
Slide 28 text
࠷ޙʹͭͳ͍ͩΒಈ͔ͳ͔ͬͨ • ϦΫϧʔτͷ։ൃͰ Agreed Λ͍ͬͯΔͷͷ ผʹ͓ޓ͍ͷೝࣝᴥᴪΛదͳλΠϛϯάͰमਖ਼Ͱ ͖ΔͳΒԿͰྑ͍ɻ • grpc ͳͲͷεΩʔϚΛڞ༗Ͱ͖ΔΈ૿͑ͯ Δɻ • ͓ޓ͍ͷೝ͕ࣝᴥᴪΒͳ͍Α͏ʹ։ൃ͓͚ͯ͠࠷ ऴஈ֊ͰͷϏοάόϯΛ͛Δɻ
Slide 29
Slide 29 text
ϥΠϒϥϦͷߋ৽
Slide 30
Slide 30 text
ϥΠϒϥϦͷߋ৽ • ϑϩϯτΤϯυಛʹϥΠϒϥϦߋ৽ͷස͕ૣ͍ • ·ͨߋ৽ͨ͠λΠϛϯάͰޓੑ͕͋Δ͔ո͍͠ͷ͋ Δ • ͱ͍ͬͯ์ஔ͓ͯ͘͠ͱͲΜͲΜཷ·Δɺચ͍ͱ͔ચ୕ Έ͍ͨͳଘࡏ • ఆظతʹߋ৽ʢআʣ͠ͳ͍ͱͻͲ͘ͳΔɻ • ࠷ऴతʹյΕͯऔΓฦ͔ͭ͠ͳ͘ͳΔ͜ͱ͋Δɻ
Slide 31
Slide 31 text
ϥΠϒϥϦͷߋ৽ • ͦͦϥΠϒϥϦΛཧ͍ͯ͠ͳ͍ͱ͜͏ ͍͏͜ͱ͕ى͜Γ͍͢ͷͰɺ·ͣϥΠϒ ϥϦΛཧ͢Δͱ͜Ζ͔Β࢝Ί͍ͯͩ͘͞ɻ • Node.js / npm ͕ೖ͍ͬͯͳ͍ϑϩϯτΤϯυ ͷݱͦΕΛೖΕͯͲͷόʔδϣϯΛͬ ͍ͯΔ͔ಛఆͰ͖ΔΑ͏ʹ͢Δͱ͜Ζ͔Βɻ
Slide 32
Slide 32 text
ϥΠϒϥϦͷߋ৽ • ϥΠϒϥϦߋ৽ΛࣗಈԽ͢Δπʔϧ • renovate • ͜Ε͏φϨοδ͡Όͳͯ͘ඪ४πʔϧɺ ֮͑ͯؼ͍ͬͯͩ͘͞ɻ
Slide 33
Slide 33 text
ϥΠϒϥϦͷߋ৽ • ͨͩϥΠϒϥϦΛߋ৽ΛࣗಈԽͰ͖ͨͱͯ͠ͳ͍͔Ͳ ͏͔Λ֬ೝ͢Δਓඞཁɺݟͳ͍Ͱߋ৽͢Δࣄނʹܨ͕Δɻ • զʑຖεϓϦϯτͰ ϥΠϒϥϦߋ৽୲େਉΛ࡞Γɺఆ ظతʹߋ৽͕Βͳ͍Α͏ʹ͍ͯ͠Δɻ • renovate ΛೖΕͯࣗಈͰͯ͢ߋ৽͢ΔΑ͏ͳઃఆʹͯ͠ ͍ΔͱةݥͳͷͰɺࢹ͠ͳ͕Β͍ͬͯΔ • ͨͩ͜͏͢ΔͱͲ͏ͯͦ͠ΕͳΓʹ֬ೝίετ͕͔͔Δ
Slide 34
Slide 34 text
ϥΠϒϥϦͷߋ৽ͷ֬ೝ࡞ۀΛ ݮΒ͍ͨ͠ • جຊతʹςετΛॻ͘ • Unit Test ͳͲͷϩδοΫͷ֬ೝ͢Δ • ͨͩͦΕ͚ͩͩͱϑϩϯτΤϯυͰΓͳ͍ɻ • StoryBook ͰίϯϙʔωϯτΧλϩάΛ࡞͓͖ͬͯɺݟͨ ͷมߋ͕ಛఆ͞Ε͍͢Α͏ʹ͢ΔɻVisual Regression Test Λߦ͏ɻ • ͜ΕͰΓͳ͍͜ͱ͋Δ E2E ςετͰࣗಈԽͨ͠Γ͢Δ
Slide 35
Slide 35 text
ϥΠϒϥϦͷߋ৽ͷ֬ೝ࡞ۀΛ ݮΒ͍ͨ͠ • Visual Regression Test • ݟͨͷมߋ͕ى͖ͨ࣌ʹͦΕΛಛఆͯ֬͠ ೝΛଅ͢ͷ • Visual্ͰΤϥʔ͕ൃੜͨ͜͠ͱ͕ݟͨͰΘ ͔Δ • ϐΫηϧಉ࢜ͷมߋ͕ݟ͑Δ
Slide 36
Slide 36 text
ϥΠϒϥϦͷߋ৽ͷ֬ೝ࡞ۀΛ ݮΒ͍ͨ͠ • ༰͕ҧ͏͜ͱ͕Ѳ͘͢͠ͳΔɻ • Visual Regression Test Λߦ͏ͷ StoryBook ͱ reg-suitͷΈ߹Θͤɻ • ͜Ε΄΅σϑΝΫτͳπʔϧɺ֮͑ͯؼͬ ͯ΄͍͠ɻ
Slide 37
Slide 37 text
ϥΠϒϥϦͷߋ৽ͷ֬ೝ࡞ۀΛ ݮΒ͍ͨ͠ • ͜ΕͰΓͳ͍࣌ E2E ςετΛॻ͍ͯΔ • ࠷ۙ Autify ΛͬͯޮԽͯ͠ΔνʔϜ ଟ͍ɻ • ༗ঈͷπʔϧ͕ͩɺςετͷهड़ָ͕Ͱɺߋ ৽֬ೝ͕Γ͍͢ɻ
Slide 38
Slide 38 text
ϥΠϒϥϦͷߋ৽ • ͪΖΜ͜ΕͰΓͳ͍࣌͋Δ • ͨͩͦͷ࣌͏πʔϧͰಛఆͰ͖ͳ͍ͷ • ٯʹݴ͑ͦ͏͍ͬͨϥΠϒϥϦͷߋ৽ͷͱ ͖͚ͩ৻ॏʹΕΑ͍ɻ
Slide 39
Slide 39 text
ϫʔΫϑϩʔͷܗ֚Խ
Slide 40
Slide 40 text
ϫʔΫϑϩʔͷܗ֚Խ • ͜͜·Ͱ͖ͬͯͨΑ͏ͳ͜ͱΛͬͯͨͱͯ͠ ɺܗ֚Խͯ͠ҙຯ͕ͳ͍ɻ • ςετΛॻ͔ͳ͔ͬͨΒҙຯ͕ͳ͍͠ɺక͕ഭΔ தͰػೳ࣮Λ͠ͳ͕ΒςετΛॻ͘ʹҰఆͷε Ωϧ͕ඞཁ • StoryBook ʹهड़Λ͠ͳ͔ͬͨΒͦͦ Visual Regression Testing ҙຯ͕ͳ͍ɻ
Slide 41
Slide 41 text
ϫʔΫϑϩʔͷܗ֚Խ • ͦͦϑϩϯτΤϯυͱݴ͍ͬͯΖΜͳ ΤϯδχΞ͕͍Δɻ • CSS ͷಘҙͳਓ͍ΕɺJavaScript ͕ۤख ͳਓ͍Δɻ CSS Experts JavaScript Beginners Server Side Engineer Frontend Ops
Slide 42
Slide 42 text
ϫʔΫϑϩʔͷܗ֚Խ • πʔϧͰҰؾʹղܾͰ͖ΔΑ͏ͳͷͰͳ ͍ɻ • ΤϯδχΞؒͷεΩϧΛڞ༗͓ͯ͠ޓ͍ʹ ࣝͷϨϕϧΛ্͍͛ͯ͘ඞཁ͕͋Δɻ
Slide 43
Slide 43 text
ϫʔΫϑϩʔͷܗ֚Խ • զʑͲ͏ͬͯདྷ͔ͨɿ • ։ൃऀಉ࢜Ͱ࣌ʹڭ͑߹͍ɺ࣌ʹϖΞϓϩ ϞϒϓϩΛߦ͏͜ͱͰશମͰϨϕϧΛߴΊ ͋ͬͯରॲ͖ͯͨ͠ɻ
Slide 44
Slide 44 text
ϫʔΫϑϩʔͷܗ֚Խ • ࠷ॳͲ͏͕͔͔ͯ࣌ؒ͠Δ͕ɺશମͰޮ Խ͍ͯ͘͜͠ͱ͕Ͱ͖Δɺ࠷ऴతʹ վળͰ͖ΔΑ͏ʹͳΔɻ • ੍ཧʹߟ͑ํ͍ۙɻ βɾΰʔϧ ― اۀͷڀۃͷతͱԿ͔ ΤϦϠϑɾΰʔϧυϥοτ ஶ/ μΠϠϞϯυࣾ 2019 ͋Δ෦͚ͩʹணͯ͠࠷దԽΛͯ͠ ܾ ͯ͠શମͷ࠷దԽʹͭͳ͕Βͳ͍ ϘτϧωοΫΛݟ͚ͭͯ શମͷதͷҰ෦ ΛඞཁʹԠͯ͡࠷దԽ͖͢
Slide 45
Slide 45 text
ৼΓฦͬͯ
Slide 46
Slide 46 text
ৼΓฦͬͯ • ։ൃऀମݧੜ࢈ੑʹ݁͠ɺҾ͍ͯϞν ϕʔγϣϯʹؔ࿈͢Δɻ ੜ࢈ੑΞοϓ ੜ࢈ੑμϯ Ϟνϕʔγϣϯμϯ ϞνϕʔγϣϯΞοϓ ݁ہҰ൪ॏཁͳͷϞνϕʔγϣϯ
Slide 47
Slide 47 text
ৼΓฦͬͯ • ʮଞͷਓͷʹཱ͍ͪͨʯͱ͍͏ࢥ͍͕ࠜఈʹ͋Δɻ • ͍͘Β͍ΖΜͳ։ൃΛςΫχοΫΛͬͯͬͨͱͯ͠ ͦΕ͕ଞͷਓୡͷʹཱͬͯΔͱ͍͏࣮ײ͕ͳ͍ͱ݁ہϞ νϕʔγϣϯམͪΔɻ • όοΫΤϯυ ϑϩϯτΤϯυ σβΠφʔ
Slide 48
Slide 48 text
ৼΓฦͬͯ • ։ൃऀମݧͷ্ੜ࢈ੑͷ্ • ੜ࢈ੑ্ʹΑΓɺ։ൃͷվળʹؔΘΔ͕ɺҰ൪େࣄ ͳͷϞνϕʔγϣϯͷ্ • ։ൃऀͷϞνϕʔγϣϯʮ୭͔ͷʹཱ͍ͬͯΔʯͱ͍͏ ࣮ײ͕ݩʹͳ͍ͬͯΔɻ • ࣄۀʹؐݩͰ͖Δॴ·ͰΒͳ͍ͱ͍͚ͳ͍ɻࣄۀʹؐݩͰ ͖ΔͱϙδςΟϒͳϑΟʔυόοΫ૿͑ͯΑΓΑ͍αΠΫ ϧ͕ճΔΑ͏ʹͳΔɻ
Slide 49
Slide 49 text
·ͱΊ
Slide 50
Slide 50 text
·ͱΊ • ϑϩϯτΤϯυΤϯδχΞUXΛ࠷େԽ͢Δͨ ΊͷΤϯδχΞͰ͋ΓɺDXඞཁɻ • DXੜ࢈ੑ্ͷͨΊͷࢪࡦ • ੜ࢈ੑΛԼ͛ΔͨΊͷͷͱ͍͔ͯͭ͋͘͠Δ ͕ɺओʹखΓɺϥΠϒϥϦߋ৽ɺϫʔΫϑ ϩʔܗ֚ԽΛڍ͛ͨ
Slide 51
Slide 51 text
·ͱΊ • ͦΕͧΕରॲ͢ΔπʔϧɾφϨοδʹ͍ͭͯ հͨ͠ɻ • ͨͩΤϯδχΞ݁ہʮʹཱ͍ͬͯΔʯͱ ͍͏࣮ײ͕΄͍͠ਓͨͪ • ࣄۀʹؐݩ͍ͤͯ͘͜͞ͱ͕Ұ൪ Developer Experience ʹޮՌత