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
70
Cell-Based Architecture Design in AWS
hgsgtk
1
180
インフラコストとセキュリティ課題解決のためのリアーキテクチャリング / srekaigi2025
hgsgtk
3
7.3k
Design of a Stateful system for Robust Deployment and Observability
hgsgtk
0
1.4k
A guide to joining operational work in your new DevOps team
hgsgtk
1
1.5k
HTTP Tunneling in Go
hgsgtk
0
1.5k
ブラウザ自動操作技術の深層へ、直接触れて学ぶ WebDriver と Chrome DevTools Protocol
hgsgtk
3
6.8k
HTTP Server on random available port in Go
hgsgtk
0
1.1k
Agile Testingを夢見たテスト自動化 〜ATDDへの挑戦から始まる 1年間の試行錯誤〜 / dreaming agile testing at basebank
hgsgtk
13
8.2k
Other Decks in Technology
See All in Technology
.NET 10のEntity Framework Coreの新機能
htkym
0
120
信頼性が求められる業務のAIAgentのアーキテクチャ設計の勘所と課題
miyatakoji
0
150
社内外から"使ってもらえる"データ基盤を支えるアーキテクチャの秘訣/登壇資料(飯塚 大地・高橋 一貴)
hacobu
PRO
0
6.5k
未回答質問の回答一覧 / 開発をリードする品質保証 QAエンジニアと開発者の未来を考える-Findy Online Conference -
findy_eventslides
0
410
Building AI Applications with Java, LLMs, and Spring AI
thomasvitale
1
230
LINEスキマニ/LINEバイトにおけるバックエンド開発
lycorptech_jp
PRO
0
370
How We Built a Secure Sandbox Platform for AI
flatt_security
1
110
変わるもの、変わらないもの :OSSアーキテクチャで実現する持続可能なシステム
gree_tech
PRO
0
480
レガシーシステム刷新における TypeSpec スキーマ駆動開発のすゝめ
tsukuha
3
680
PostgreSQL で列データ”ファイル”を利用する ~Arrow/Parquet を統合したデータベースの作成~
kaigai
0
160
AIと自動化がもたらす業務効率化の実例: 反社チェック等の調査・業務プロセス自動化
enpipi
0
780
プロダクト負債と歩む持続可能なサービスを育てるための挑戦
sansantech
PRO
1
900
Featured
See All Featured
Designing for humans not robots
tammielis
254
26k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.6k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Making Projects Easy
brettharned
120
6.5k
Visualization
eitanlees
150
16k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
118
20k
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ʣ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ