Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
レビューの仕方
Search
Yosuke Furukawa
PRO
October 25, 2021
Programming
84
56k
レビューの仕方
Open8 勉強会で発表したレビューの仕方と心理的安全性の話しです。
Yosuke Furukawa
PRO
October 25, 2021
Tweet
Share
More Decks by Yosuke Furukawa
See All by Yosuke Furukawa
デザインシステムが必須の時代に
yosuke_furukawa
PRO
2
160
Node.js, Deno, Bun 最新動向とその所感について
yosuke_furukawa
PRO
10
4.5k
Welcome JSConf.jp 2024
yosuke_furukawa
PRO
1
4.3k
tc39 x jsconf.jp Panel Discussion 2024
yosuke_furukawa
PRO
0
270
Removing Corepack
yosuke_furukawa
PRO
9
1.7k
JavaScript Runtime とはなにか
yosuke_furukawa
PRO
15
2.9k
Strip Types と Storage
yosuke_furukawa
PRO
4
430
Module Harmony について
yosuke_furukawa
PRO
3
1.8k
LTのやり方
yosuke_furukawa
PRO
16
2.7k
Other Decks in Programming
See All in Programming
CSC509 Lecture 07
javiergs
PRO
0
250
Catch Up: Go Style Guide Update
andpad
0
250
AI駆動で0→1をやって見えた光と伸びしろ
passion0102
1
850
CSC305 Lecture 09
javiergs
PRO
0
310
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
650
Building, Deploying, and Monitoring Ruby Web Applications with Falcon (Kaigi on Rails 2025)
ioquatix
4
2.5k
NIKKEI Tech Talk#38
cipepser
0
250
When Dependencies Fail: Building Antifragile Applications in a Fragile World
selcukusta
0
110
monorepo の Go テストをはやくした〜い!~最小の依存解決への道のり~ / faster-testing-of-monorepos
convto
2
560
Amazon Verified Permissions実践入門 〜Cedar活用とAppSync導入事例/Practical Introduction to Amazon Verified Permissions
fossamagna
2
100
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
280
開発組織の戦略的な役割と 設計スキル向上の効果
masuda220
PRO
9
1.6k
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Building an army of robots
kneath
305
46k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Balancing Empowerment & Direction
lara
5
700
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
It's Worth the Effort
3n
187
28k
Rails Girls Zürich Keynote
gr2m
95
14k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Designing for Performance
lara
610
69k
The Cult of Friendly URLs
andyhume
79
6.6k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6k
Transcript
ϨϏϡʔͷํ 2021/10/25 @ Open8 ษڧձ
Twitter: @yosuke_furukawa Github: yosuke-furukawa ࠷ۙͷ׆ಈ $ISPNF"EWJTPSZ#PBSE +4$POG+1PSHBOJ[FSFUD
ίʔυϨϏϡʔʹ͍ͭͯͷ
ίʔυϨϏϡʔࢀߟจݙɹ https://google.github.io/eng-practices/
ίʔυϨϏϡʔͷલʹ
ίʔυϨϏϡʔͷલʹؾʹͯ͠ ͓͘͜ͱ • ίʔυͷঢ়ଶʹ͓͍ͯʮBestʯଘࡏ͠ͳ͍ • ʮBetterʯ͕͋Δ͚ͩ • ݪཧओٛతͳࢥͰʮBestʯΛ͍ٻΊͯ αʔϏεͱͯ͠ಈ͔ͳ͔ͬͨΒແՁ
ίʔυϨϏϡʔͷલʹؾʹͯ͠ ͓͘͜ͱ • ίʔυͷঢ়ଶʹ͓͍ͯʮBestʯଘࡏ͠ͳ͍ • ʮBetterʯ͕͋Δ͚ͩ • ݪཧओٛతͳࢥͰʮBestʯΛ͍ٻΊͯ αʔϏεͱͯ͠ಈ͔ͳ͔ͬͨΒແՁ ͜͜Λצҧ͍ͪ͠Ό͍͚ͳ͍ɻ
͋Δ͖࢟Λ͍ٻΊͭͭɺՁΛ࢈Έͩ͢ඞཁ͕͋Δɻ
ίʔυϨϏϡʔͷత
ίʔυϨϏϡʔͷత • ͦͷίʔυ͕Ճ͞ΕΔ͜ͱͰɺίʔυશମ ͷ݈શੑ্͕͞Ε͍ͯΔ͜ͱ • ͏গ͠ࡅ͍ͯݴ͏ͱɺࠓΑΓίʔυ͕ Better ͳঢ়ଶʹͳΔ͜ͱ 1VMM3FRVFTU͕࡞ۀରͷίʔυશମͷ݈શੑΛ্͍ͤͯ͞Δ #FUUFSʹͳΔ
ͱ͍͏ج४ΛຬͨͤɺϚʔδ͠ͳ͚Ε͍͚ͳ͍ɻ
ίʔυϨϏϡʔͷత • ίʔυ͕ Best ͳঢ়ଶͰ͋Δඞཁͳ͘ɺ Better ͳঢ়ଶͰ͋Εྑ͍ɻ • Ϛʔδ͢Δલʹ͋ΒΏΔࡉ͔͍෦ͷચ࿅Λ ٻΊΔ͖Ͱͳ͍ɻ
• ϨϏϡΞ͕ٻΊΔͷᘳ͞Ͱͳ͘ɺܧଓ తͳվળͰ͋Δ͖ɻ
ίʔυϨϏϡʔͷత • ᘳͳͷͰͳͯ͘Ϛʔδ͠ͳ͚ΕͳΒ ͳ͍ɻ • ҰํͰɺίʔυͷ݈શੑ͕ଛͳΘΕ͍͍ͯ ͱ͍͏༁Ͱͳ͍ɻ • ݈શੑ͕ࣦΘΕΔίʔυΛϚʔδͯ͠ྑ͍ͷ ʮۓٸࣄଶʯͷͱ͖͚ͩɻ
ݪଇ • ٕज़తͳࣄ࣮σʔλʹΑͬͯͷमਖ਼ݸਓͷΈΑΓ ॏࢹ͢Δ͖ • ελΠϧͷελΠϧΨΠυΛࣄલʹܾΊ͓͖ͯ͘ • ෳͷબ͕͋Γ͑ͯɺͲͪΒಉ༷ʹ݈શੑ͕୲อ͞ ΕΔͷͰ͋Εɺίʔυ࡞ऀͷҙݟ͕ଚॏ͞ΕΔ͖ •
্هͷͲͷϧʔϧͯ·Βͳ͍߹ϨϏϡϫʔʹΑ ΔҰ؏ੑ͕ࢦఠ͞ΕΔ͖
࣮ྫ1: ςετίʔυͳ͠ίϛο τ • ίʔυͷػೳతͳՃ͞Ε͍ͯΔ͕ɺςετίʔ υ͕શ͘ଘࡏ͠ͳ͍ • ίʔυͷ݈શੑͱ͍͏ҙຯͰςετίʔυ͕ଘ ࡏ͠ͳ͍ίʔυϚʔδ͞ΕΔ͖Ͱͳ͍ •
ͨͩ͠ɺςετίʔυ͕ͦͦଘࡏ͠ͳ͍ͱ͜ Ζʹରͯ͠ػೳͷՃΛ͍ͯ͠ΔͷͰ͋ΕɺࠓΑ Γ͔ྑ͘ͳ͍ͬͯΔͨΊɺϚʔδ͞ΕΔ͖ɻ
࣮ྫ2: ΞϧΰϦζϜ͕͍ • ػೳՃ͞Ε͍ͯΔ͕ɺΞϧΰϦζϜ͕͘ɺͬ ͱ៉ྷʹߴͳͷ͕ॻ͚Δ࣌ • ͦΕ͕݈શ͔Ͳ͏͔ͰܾΊΔɻଞͷؔશͯߴԽ ϦʔμϏϦςΟʹྀ͞Ε͍ͯΔͷͰ͋Εɺ݈શ ͡Όͳ͘ͳΔ͔ΒɺΞϧΰϦζϜΛ͖͢ •
ҰํͰผʹଞͦΜͳʹ៉ྷ͡Όͳ͍ͳΒɺҰ୴ίϝ ϯτʹ TODO Λॻ͍͓͍ͯͯϚʔδ͢Δͷ͋Γɻ
ϨϏϡʔͰݟΔ͖ॴ
ϨϏϡʔͰݟΔ͖ॴ • ίʔυ͕ͪΌΜͱઃܭ͞Ε͍ͯΔ͔Ͳ͏͔ • ػೳ͕ͪΌΜͱՃ͞Ε͍ͯΔ͔Ͳ͏͔ • ಈ࡞֬ೝͯ͠νΣοΫ͍͍ͯ͠ʢUIͷ࣌ඞ ਢʣ • ฒྻॲཧͱ͔ਖ਼نදݱͱ͔҆શੑʹؔΘΔॴ
దͳϨϏϡϫʔ͕ͪΌΜͱݟΔ
ϨϏϡʔͰݟΔ͖ॴ • ίʔυ͕ඞཁҎ্ʹෳࡶ͡Όͳ͍ • কདྷඞཁʹͳΔ͔ɾɾɾΈ͍ͨͳͷ࣮ ͠ͳ͍΄͏͕͍͍ • ςετ͕ଘࡏ͢Δ͔ • ςετ͕దʹઃܭ͞Ε͍ͯΔ͔
ϨϏϡʔͰݟΔ͖ॴ • มɾؔɾΫϥε໊ͳͲ͕ͪΌΜͱ໋໊͞ Ε͍ͯΔ͔ • ίϝϯτʹ Why ͕ॻ͔Ε͍ͯΔ͔ • What
Λॻ͍͍͚ͯͳ͍
ϨϏϡʔͰݟΔ͖ॴ • υΩϡϝϯτ͕ॻ͔Ε͍ͯΔ͔ • ελΠϧελΠϧΨΠυʹै͍ͬͯΔ͔ • ελΠϧΨΠυ͕ͳ͍ͳΒ͔ͦ͜ΒΔ ͖
ϨϏϡʔͰݟΔ͖ॴ • ͯ͢ͷߦΛͪΌΜͱݟ͍ͯΔ͜ͱ • ίϯςΩετΛଊ͍͑ͯΔ͔Ͳ͏͔ • ྑ͍ॴ͕͋ͬͨΒͪΌΜͱ๙ΊΔ
ίʔυϨϏϡʔͷεϐʔυ
ίʔυϨϏϡʔͷεϐʔυ • ίʔυϨϏϡʔͷεϐʔυ͕νʔϜͷεϐʔυͱ ੜ࢈ੑʹ݁͢Δ • ͕͔͔࣌ؒΕ͔͔Δ΄ͲίʔυϨϏϡʔͷϓϩ ηε͕໘ʹײ͡ΒΕΔ • ϨϏϡʔ͕͍ͱίʔυΛϦϑΝΫλϦϯάͨ͠ Γςετॻ͍ͨΓͱݴͬͨॲཧΛΓͨ͘ͳ͘ͳ
Δ
ίʔυϨϏϡʔ͍ͭΔ͔ʁ
དྷͨΒ͙͢Δɻ ͯ͘ཌ·ͰʹΔɻ
ͱΓ͋͑ͣ࠷ॳͷฦࣄΛฦͦ͏ • Ϛʔδ͞ΕΔ·Ͱ͕͘ͳ͖Ό͍͚ͳ͍Θ͚ ͡Όͳ͍ɻ • શ෦ݟΔͷΛҰͰΒͳ͖Ό͍͚ͳ͍Θ͚ ͡Όͳ͍ɻ • ͱΓ͋͑ͣ࠷ॳͷฦࣄΛฦ͢·Ͱ͕ҰҎ ͱ͍͏ɻ
ଚܟͱײँ • ͕࣌ؒऔΕͳ͍ͳΒऔΕͳ͍ͳΓʹฦ͠ํ͕ ͋Δ • PR ͷઆ໌ΛಡΉ͚ͩͰ͋ΔఔฦͤΔ͕࣌͋ Δ • ଚܟͱײँͷҙΛ͑Δ͚ͩͰྑ͔ͬͨΓ
͢Δ
͍PRͩͳʔͱࢥͬͨΒׂ͠ ͯΒ͏ • PR͕ͯ͘ɺಡΈΔ·Ͱʹ͕͔͔࣌ؒΔͳΒ ׂͯ͠Β͏ख͋Δ • ϝΠϯ෦͚ͩՃͯ͠ΒͬͯɺΓͷPR ผύʔτʹ͚ΔͳͲ • খ͞ͳPRΛ࡞Δ͜ͱϨϏϡϫʔΛॿ͚Δࣄ͕
ଟ͍
ྫ֎
ۓٸࣄଶ
ۓٸࣄଶ • ϢʔβʔʹӨڹͷ͋Δόά͕ग़ͯΔ • ηΩϡϦςΟϗʔϧ͕͋ͬͯσʔλྲྀग़͕ى ͖ͦ͏ • ͳͲͳͲ • ͜͏͍͏࣌ίʔυͷ݈શੑΛΕ͍͍ͯɻ
ίʔυϨϏϡʔͷ͏Ұͭͷ త
ίʔυϨϏϡʔʹϝϯλϦϯ άͷଆ໘͕͋Δ • ίʔυϨϏϡʔڭҭͷͰ͋Δ • ͦ͏͍͏࣌ʹ͑ͯݫ͘͠ڭ͑Δͷྑ͍ • ͕ࣗࠓ݈શੑ୲อͷࢠΛ͔Ϳ͍ͬͯͯ͠Δͷ ͔ɺϝϯλʔͱͯ͠ͷҭͷࢠΛ͔Ϳ͍ͬͯͯ͠Δ ͷ͔Λೝࣝ͢Δ
• ͦͷ্ͰͷίϝϯτͰ͋ΕBestΛٻΊΔ͜ͱ͋Γɻ
ίʔυϨϏϡʔͰҙݟ͕ରཱ ͨ͠ͱ͖
ҙݟ͕ରཱͨ͠ͱ͖ • จ໘͚ͩͰΓऔΓ͠ͳ͍ɻ • ର໘/ΦϯϥΠϯͰϛʔςΟϯά͢Δɻ • ϛʔςΟϯάͷࡍʹPRͷίϝϯτཝʹٞࣄΛ͢ • ͦΕͰมΘΒͳ͍࣌ר͖ࠐΉਓΛ૿͢ •
νʔϜϦʔμʔʹೖͬͯΒ͏ • ٕज़ސʹॿྗΛٻΊΔ˒˒˒ • ॏཁͳ͜ͱ: ҙݟ͕ରཱͯ͠Δ͔ΒͱݴͬͯPRΛ์ஔ͍͚ͯ͠ͳ͍
͜͜·Ͱݟ͔ͯΔ௨Γ
ίʔυϨϏϡʔͱ୯ͳΔ։ ൃ࡞ۀͰͳ͘ɺνʔϜϏϧ υͰ͋Δ
ͪΐͬͱໟ৭ͷҧ͏ • THE CULTURE CODE ࠷ڧνʔϜΛ࡞Δํ๏ https://www.amazon.co.jp/dp/4761273828/
࠷ڧͷνʔϜΛ࡞Δʹ • ҆શͳڥΛ࡞Δ͜ͱ͕Ұ൪ • ͍ΘΏΔʮ৺ཧత҆શੑʯͱݺΕΔͷ • ҆શͳڥ͕ͳ͍߹ɺͲΜͳʹྑ͍ϨϏϡʔ Λ͍ͯ͠Δͱͯ͠νʔϜͷੜ࢈ੑམͪΔ • ࠷ऴతʹίʔυͷ݈શੑʹͭͳ͕Βͳ͍ɺ
Ώͬ͘ΓͱഇΕ͍ͯ͘
ͱ͋Δ࣮ݧ • ৽͍͠ϚʔέςΟϯάઓུΛߟ͑ΔձٞΛ3ͭ࡞ͬͨ • χοΫͱ͍͏ֻ͚ਓΛૹΓࠐΉ • χοΫʮ߈ܸతͳଶΛऔΔʯʮଵଦͳʯ ʮԿ͔ͱ۪ஒΛݴ͏ʯͷ̏ͭΛͦͷͦΕͧΕͷ ձٞͰߦͬͨɻ •
Ͳ͏ͳ͔ͬͨɾɾɾʁ
શͯͷձٞͰ30-40%ੜ࢈ੑ ͕Լͨ͠
͜͏͍͏ਓ͕͍Δ߹ • ͔ʹͦͷਓΛഉআ͠ͳ͍ͱ͍͚ͳ͍ • ͨͩ͠ɺඞͣͦ͠ͷਓΛഉআͰ͖ͳ͍͕࣌ ͋Δ • ͦ͏͍͏ͱ͖ʹத׆ಈΛऔΔ͕Ͱ͖Δͱ ྑ͍ɻ
த׆ಈ • ʮͦͷΞΠσΞ͍͍ͱࢥ͏ʯͳͲͷͪΐͬͱͨ͠ঝ ೝ • ʮ͜ΕΓ͖ͬͨΒձࣾͷʹܨ͕Γ·͢ͶʯͳͲ ͷΔؾΛग़͢ൃݴ • ʮ૬खͷҙݟΛ૬ṀΛଧͪͳ͕Β৺ʹฉ͘ʯͱ͍ͬ ͨฉ͖ग़࢟͢
• ͳͲͳͲ
த׆ಈ • ʮͦͷΞΠσΞ͍͍ͱࢥ͏ʯͳͲͷͪΐͬͱͨ͠ঝ ೝ • ʮ͜ΕΓ͖ͬͨΒձࣾͷʹܨ͕Γ·͢ͶʯͳͲ ͷΔؾΛग़͢ൃݴ • ʮ૬खͷҙݟΛ૬ṀΛଧͪͳ͕Β৺ʹฉ͘ʯͱ͍ͬ ͨฉ͖ग़࢟͢
• ͳͲͳͲ ͜ΕΒͷத׆ಈʹΑͬͯपΓͷϝϯόʔͷ৺ཧత҆શੑͷؾ͕Δ
࠷ڧͷνʔϜʹ৺ཧత҆શ ੑ͕ඞཁͳ͜ͱΘ͔ͬͨɻ Ͱ৺ཧత҆શੑͱͳʹ ͔ʁ
৺ཧత҆શੑͱ • ͜ͷάϧʔϓʹؼଐͯ҆͠શͩͱ͍͏ҙࣝͷ͜ͱ • ͦͷҙࣝҎԼͷ͕୲อ͞Ε͍ͯΔͱಘΒΕΔ • ϝϯόʔಉ࢜ͷަྲྀΛେʹ͍ͯ͠Δʢίϛϡχέʔγϣϯʣ • ϝϯόʔΛݸͱͯ͠ೝΊɺଚܟ͍ͯ͠ΔʢϦεϖΫτʣ •
͜ͷ͕ؔ͜Ε͔Βଓ͘ͱ͍͏ະདྷࢦʢϑϡʔνϟʔʣ • ৺ཧత҆શੑަྲྀͱଚܟͱະདྷࢦʹΑͬͯಘΒΕΔ
νʔϜͷύϑΥʔϚϯε5ͭ ͷܭଌՄೳͳཁૉΛ࣋ͭ • νʔϜશһ͕͠ɺ͢ྔಉ͡ɺͦΕͰ͍ͯɺҰճͷൃݴ͍ • ϝϯόʔؒͷΞΠίϯλΫτ͕Μɺձ͑ํʹϦεϖΫτ͕ ײ͡ΒΕΔ • Ϧʔμʔ͚ͩʹ͢ͷͰͳ͘ɺϝϯόʔಉ࢜Ͱίϛϡχέʔγϣ ϯ͕Μ
• ϝϯόʔؒͷݸਓతͳࡶஊ͕͋Δ • ϝϯόʔ͕ఆظతʹνʔϜΛΕͯɺ֎ͷڥʹ৮Εͯͬͯ͘ Δɻͦͷ࣌ʹ৽͍͠ใΛϝϯόʔͱڞ༗͍ͯ͠Δɻ
Ұݟ͢Δͱʮ͑ͬͦΕ͕େࣄ ͳͷʁʯ͍ͬͯ͏ॴ͔Γ
զʑͷνʔϜͷύϑΥʔϚϯ εΛܾΊΔͷʮ҆͜͜શ ͳॴͩɺࢲୡͭͳ͕ͬͯ ͍Δʯͱ͍͏ϝοηʔδΛ ͑Δଶ
·ͱΊ
ίʔυϨϏϡʔͷํͱνʔϜ Ϗϧυ • ίʔυϨϏϡʔࠓΑΓྑ͘ͳΔ͜ͱΛड͚ೖΕΔͨΊʹ࣮ࢪ͢Δߦҝɺϕετ͕͋ΔΘ͚ ͡Όͳ͍͜ͱΛཧղ͢Δ • ίʔυϨϏϡʔʹઃܭɺػೳʹՃ͑ͯςετυΩϡϝϯτɺͯ͢ͷߦΛݟΔඞཁ͕͋Δ • ͳΔ͘ૉૣ͘ϨεϙϯεΛฦ͢ •
ᎍΊΔ͜ͱ͕͋Δͱࢥ͏͕ɺᎍΊͯݐઃతʹͳΔΑ͏ʹΊΔ • ͜ΕνʔϜϏϧυͱҰॹɺͳΔ͘ੜ࢈ੑΛԼ͛Δ͔Βԕ͚͟Δඞཁ͕͋Δ • த׆ಈΛ͢Δ͜ͱͰੜ࢈ੑͷݮୀΛதͰ͖Δ • ৺ཧత҆શੑͱʮ͜͜ʹ͍ͯ҆৺ͩʯͱ͍͏ؼଐҙࣝ • νʔϜશମͰʮ҆͜͜શͳॴͩɺࢲୡͭͳ͕͍ͬͯΔʯͱ͍͏ϝοηʔδΛ͑Δඞཁ͕ ͋Δ