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
レビューをもらいやすい細かい プルリクの切り分け方 at PHPerKaigi 2018
Search
Kazuki Higashiguchi
March 10, 2018
Technology
5
12k
レビューをもらいやすい細かい プルリクの切り分け方 at PHPerKaigi 2018
PHPerKaigi 2018での発表資料です。
http://khigashigashi.hatenablog.com/entry/2018/03/09/020359
Kazuki Higashiguchi
March 10, 2018
Tweet
Share
More Decks by Kazuki Higashiguchi
See All by Kazuki Higashiguchi
Practical Monitoring for Knative Serving / KubeCon + CloudNativeCon Japan 2025
hgsgtk
0
94
Cell-Based Architecture Design in AWS
hgsgtk
1
210
インフラコストとセキュリティ課題解決のためのリアーキテクチャリング / srekaigi2025
hgsgtk
3
8.1k
Design of a Stateful system for Robust Deployment and Observability
hgsgtk
0
1.5k
A guide to joining operational work in your new DevOps team
hgsgtk
1
1.6k
HTTP Tunneling in Go
hgsgtk
0
1.6k
ブラウザ自動操作技術の深層へ、直接触れて学ぶ WebDriver と Chrome DevTools Protocol
hgsgtk
3
6.9k
HTTP Server on random available port in Go
hgsgtk
0
1.2k
Agile Testingを夢見たテスト自動化 〜ATDDへの挑戦から始まる 1年間の試行錯誤〜 / dreaming agile testing at basebank
hgsgtk
13
8.4k
Other Decks in Technology
See All in Technology
モブプログラミング再入門 ー 基本から見直す、AI時代のチーム開発の選択肢 ー / A Re-introduction of Mob Programming
takaking22
5
1.6k
OSC仙台プレ勉強会 AlmaLinuxとは
koedoyoshida
0
180
2026年もソフトウェアサプライチェーンのリスクに立ち向かうために / Product Security Square #3
flatt_security
1
530
Agent ServerはWeb Serverではない。ADKで考えるAgentOps
akiratameto
0
110
最強のAIエージェントを諦めたら品質が上がった話 / how quality improved after giving up on the strongest AI agent
kt2mikan
0
190
Go標準パッケージのI/O処理をながめる
matumoto
0
220
JAWS DAYS 2026 ExaWizards_20260307
exawizards
0
440
非情報系研究者へ送る Transformer入門
rishiyama
11
7.6k
S3はフラットである –AWS公式SDKにも存在した、 署名付きURLにおけるパストラバーサル脆弱性– / JAWS DAYS 2026
flatt_security
0
1.8k
OCHaCafe S11 #2 コンテナ時代の次の一手:Wasm 最前線
oracle4engineer
PRO
2
140
身体を持ったパーソナルAIエージェントの 可能性を探る開発
yokomachi
1
120
JAWS Days 2026 楽しく学ぼう! 認証認可 入門/20260307-jaws-days-novice-lane-auth
opelab
11
2.3k
Featured
See All Featured
A better future with KSS
kneath
240
18k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
120
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
74
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.3k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
470
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
450
Chasing Engaging Ingredients in Design
codingconduct
0
140
Transcript
1)1FS,BJHJ #"4&גࣜձࣾ ౦ޱᏻʢ!,IJHBTIJHVDIJʣ ϨϏϡʔΛΒ͍͍͢ࡉ͔͍ ϓϧϦΫͷΓ͚ํ
ࣗݾհ !,IJHBTIJHVDIJ౦ޱᏻ w ॴଐɿ#"4&גࣜձࣾ #"4&1SPEVDU%JWJTJPO αʔόαΠυΤϯδχΞ 1)1FSઈࢍେืूதͰ͢ʂʂʂ ڵຯͷ͋Δํ࠙ձʹͯ w ࣄɿ
w ܾࡁ։ൃ w 1)1ɾ$BLF1)1ͷόʔδϣϯΞοϓ
ίʔυϨϏϡʔͰɺ ͜Μͳ͜ͱݴ͏ݴΘΕͨ ͜ͱ͋Γ·ͤΜ͔ʁ
ϓϧϦΫͰ͔͗͢Δ"
͜ͷ࣌ɺ ʮͱʹ͔͘খ͍ͯ͘͜͞͠ʯ ͱ͍͏ࢦఠͰऴΘΓ͕ͪ͡Ό ͳ͍Ͱ͔͢ʁ
ͳͷͰΓํΛཧͯ͠Έ ·ͨ͠#
࣍ w େ͖͍ϓϧϦΫͱ w େ͖͍ϓϧϦΫ͕ͳͥѱ͍ͷ͔ w ͳͥେ͖͍ϓϧϦΫ͕ੜ·ΕΔͷ͔ w Ͳ͏ͬͯϓϧϦΫΛখ͍͔ͯ͘͘͞͠ w
খ͖͘͞͠Εͳ͍ϓϧϦΫΛͲ͏͢Ε͍͍͔
େ͖͍ϓϧϦΫͬͯͲΜͳ ͷʁ
ྫ͑ 'JMFT$IBOHFE %J⒎ ɾྫʢʣ !ϨϏϡʔ͔͔࣌ؒΔɾɾɾ
ྫ͑ ɾྫʢʣ 'JMFT$IBOHFE %J⒎ !ਓྨʹϨϏϡʔͰ͖ͳ͍"
Ͳ͏͍͏ಛ͕͋Δͷ͔
େ͖͍ϓϧϦΫΛղͯ͠ΈΔ !ྫʢ1ʣΛ͚۠ͯ͠ΈΔͱ
େ͖͍ϓϧϦΫΛղͯ͠ΈΔ !͍Ζ͍Ζͳཁૉ͕ҰͭͷϓϧϦΫʹؚ·Ε͍ͯΔ ɾ৽ػೳ ɾόάमਖ਼ ɾϦϑΝΫλϦϯά …etc
ʮେ͖͍ʯϓϧϦΫͷͭͷ ಛ
ʮେ͖͍ʯϓϧϦΫͷͭͷಛ ෳػೳؚ͕·Ε͍ͯΔ ͍ͭͰͷ࣮͕ࠞͬͯ͟Δ Ұػೳͷ࣮ίʔυ͕େ
ಛ̍ɿෳػೳؚ͕·Ε͍ͯΔ ୯ಠͰϦϦʔεͰ͖Δػೳ͕ෳؚ·ΕͯΔ ৽ػೳҰؾʹग़͢ҙຯ͋Δʁ
ಛɿ͍ͭͰͷ࣮͕ࠞͬͯ͟Δ ͍ͭͰͷϦϑΝΫλϦϯάɾόάमਖ਼͕ࠞͬͯ͟Δ ͬͯΒ͑Δͷ͋Γ͕ͨ ͍͕ɾɾɾ
ಛɿҰػೳͷ࣮ίʔυ͕େ ҰػೳͰ݁ߏͳߦͷ࣮Λ͍ͯ͠Δ ͋ͷػೳͰ͔͍ͳɾɾɾ %JGG
ͳͥʮେ͖͍ʯϓϧϦΫ ྑ͘ͳ͍ͷ͔
ͳͥʮେ͖͍ʯϓϧϦΫྑ͘ͳ͍ͷ͔ Өڹൣғ͕େ͖͘ͳΔ ͕ൃੜ͢ΔՄೳੑ͕ߴ·Δ ϨϏϡϫʔͷෛ୲͕େ͖͍
ཧ༝̍ɿӨڹൣғ͕େ͖͘ͳΔ No code is the best way to write secure
and reliable applications. IUUQTHJUIVCDPNLFMTFZIJHIUPXFSOPDPEF ίʔυߦ͕ଟ͚Εଟ͍΄Ͳɺ αʔϏεͷӨڹൣғେ͖͘ͳΔ
ཧ༝ɿ͕ൃੜ͢ΔՄೳੑ͕ߴ·Δ Өڹൣғ͕େ͖͚Ε͕ൃੜ͢ΔՄೳੑߴ·Δ
ཧ༝ɿϨϏϡϫʔͷෛ୲͕େ͖͍ w ϨϏϡʔ͢Δྔ͕ଟ͍ͱͦΕ͚͕ͩ࣌ؒऔΒΕΔ w ʮϦϦʔεͯ͠ͳ͍ʯͱஅΛ͢ΔΈͦͷෛՙ Θ͔ΒΜ
ͳͥେ͖͘ͳΔͷ͔
ҰؾʹΖ͏ͱ͢Δ͔Β"
͡Ό͋Ͳ͏͢Ε͍͍ͷ͔
খ͍͞ཁૉʹͬͯࡉ͔ ͘ϦϦʔε͢Δ#
খ͍͞ཁૉʹͬͯࡉ͔͘ϦϦʔε͢Δ #FGPSFશཁૉΛҰؾʹϨϏϡʔɾϦϦʔε "GUFSখ͍͞ཁૉʹͬͯࡉ͔͘ϨϏϡʔɾϦϦʔε
Ͳ͏ͬͯΓ͚͍ͯ͘ ͔⚔
Ͳ͏ͬͯখ͘͞Γ͚͍͔ͯ͘ w 45&1είʔϓΛఆٛ͢Δ w 45&1είʔϓ֎ΛΓग़͢ w 45&1είʔϓΛࡉԽ͢Δ w 45&1είʔϓ͔ΒΓग़͢
45&1είʔϓΛఆٛ͢Δ ʮͲ͜·ͰΛΒͳ͚Ε͍͚ͳ͍ͷ͔ʯ .VTUͳ෦Λఆٛ͢Δ #FGPSF "GUFS
45&1είʔϓ֎Γग़͢ είʔϓ֎ϓϧϦΫ͔ΒΓग़͢ ϦϦʔεՄೳ୯Ґʹͯ͠ࣄલϦϦʔε
45&1είʔϓΛࡉԽ͢Δ ࣄલϦϦʔεͰ͖Δ୯ҐʹࡉԽ͍ͯ͘͠ طଘͷৼΔ͍Λม͑ͳ͍ൣғ
45&1είʔϓΛࡉԽ͢Δ ͦΕͧΕͷػೳ͝ͱʹෳͷΫϥεʹରͯ͠ɺ मਖ਼ΛՃ͍͑ͯΔέʔε͕ଟ͍
45&1είʔϓΛࡉԽ͢Δ طଘͷৼΔ͍ʹӨڹ͕ͳ͍ൣғΛɺ Γग़͠ରͱ͢Δɻ ྫʣ ɾ৽نΫϥε ɾ*/065͕มΘΒͳ͍طଘϝιουͷ मਖ਼ ʜFUD
45&1είʔϓΛࡉԽ͢Δ ྫʣ৽نΫϥεɾطଘϝιουͷमਖ਼ w ৽نΫϥεͷ࡞ طଘͷৼΔ͍ͷӨڹൣғগ ͳ͍ ˠΓ͚ର ɾطଘΫϥεͷमਖ਼ طଘͷৼΔ͍ͷӨڹൣғ͕͋ Γɻ
ϝιουΛमਖ਼͍ͯ͠ΔΑ͏ͳ ߹ɺطʹϝιουΛࢀর͍ͯ͠ ΔՕॴͷಈ࡞อূ͕ඞཁɻ
45&1είʔϓ͔ΒΓग़͢ #FGPSF "GUFS
45&1ऴྃޙ #FGPSF "GUFS
ͱ͍͑
ͦΕͰͰ͔͍ͷͰ͔ ͍
খ͖͘͞͠Εͳ͍ϓϧϦΫ Ͳ͏͢Ε͍͍͔
ࡉ͔͍୯ҐͰͷϨϏϡʔ#
ࡉ͔͍୯ҐͰͷϨϏϡʔ #FGPSF·ͱΊͯ࠷ޙʹϨϏϡʔɾϦϦʔε "GUFS͋Δఔͷ·ͱ·Γ͝ͱʹϨϏϡʔ
͋Δఔͷ·ͱ·Γ͝ͱʹϦϦʔε w Γํ w τϐοΫϒϥϯνʢҊ݅ઐ༻ϒϥϯνʣΛ׆༻͢Δ w ɺੜϒϥϯνΛͬͯ։ൃ͢Δ w خ͍͜͠ͱ w
ϨϏϡʔ୯Ґ͕Θ͔Γ͘͢ͳΔ w ʢHJUIVCʣϨϏϡϫʔͷίϝϯτΛ͍͍͢ w Ͳ͜·ͰϨϏϡʔࡁΈ͔͕Ұྎવ
·ͱΊ w ෳͷཁૉΛҰؾʹΔ͔ΒϓϧϦΫେ͖͘ͳΔ w খͬͯ͘͞ࡉ͔͘ϦϦʔε͍ͯ͘͠ w খ͘͞Γ͚Δʹͭͷ45&1Λ౿Ή w 45&1είʔϓΛఆٛ͢Δ w
45&1είʔϓ֎ΛΓग़͢ w 45&1είʔϓΛࡉԽ͢Δ w 45&1είʔϓ͔ΒΓग़͢ w খ͖͘͞͠Εͳ͍߹͜·ΊͳϨϏϡʔΛ͢Δ
ͦͷଞৄ͘͠ϒϩάʹͯ# ϨϏϡʔΛΒ͍͍͢ࡉ͔͍ϓϧϦΫͷΓ͚ํ
#"4&גࣜձࣾ ౦ޱᏻʢ!,IJHBTIJHVDIJʣ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ