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
再発防止策を考える技術 #phpconfuk_rej
Search
Sota Sugiura
June 15, 2018
Technology
1
1.3k
再発防止策を考える技術 #phpconfuk_rej
2018/6/15 【非公式】PHPカンファレンス福岡2018前夜祭リジェクトコンにて発表しました
Sota Sugiura
June 15, 2018
Tweet
Share
More Decks by Sota Sugiura
See All by Sota Sugiura
内製したSlack Appで頑張るIncident Response@Waroom Meetup #1 / Incident Response with Slack App in 10X
sota1235
0
1.8k
20220926_セキュリティチームの今_for_Drs._Prime_公開用.pdf
sota1235
0
170
再発防止策を考える技術 / #phpconsen
sota1235
10
4k
How to choose the best npm module for your team?
sota1235
9
630
Realtime Database for high traffic production application
sota1235
7
4.2k
Road to migrate JP Web as a microservice
sota1235
4
1.7k
インターフェース再入門 / Think Interface again
sota1235
6
11k
Update around Firebase #io18
sota1235
3
4.4k
Introduction for sonarwhal
sota1235
0
620
Other Decks in Technology
See All in Technology
Claude_CodeでSEOを最適化する_AI_Ops_Community_Vol.2__マーケティングx_AIはここまで進化した.pdf
riku_423
2
610
Webhook best practices for rock solid and resilient deployments
glaforge
2
310
生成AIを活用した音声文字起こしシステムの2つの構築パターンについて
miu_crescent
PRO
3
230
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
150
Codex 5.3 と Opus 4.6 にコーポレートサイトを作らせてみた / Codex 5.3 vs Opus 4.6
ama_ch
0
220
AI駆動開発を事業のコアに置く
tasukuonizawa
1
400
インフラエンジニア必見!Kubernetesを用いたクラウドネイティブ設計ポイント大全
daitak
1
390
usermode linux without MMU - fosdem2026 kernel devroom
thehajime
0
240
20260204_Midosuji_Tech
takuyay0ne
1
160
Context Engineeringの取り組み
nutslove
0
380
AIエージェントを開発しよう!-AgentCore活用の勘所-
yukiogawa
0
200
外部キー制約の知っておいて欲しいこと - RDBMSを正しく使うために必要なこと / FOREIGN KEY Night
soudai
PRO
12
5.6k
Featured
See All Featured
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
60
42k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.7k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
290
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
70
Into the Great Unknown - MozCon
thekraken
40
2.3k
Context Engineering - Making Every Token Count
addyosmani
9
670
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
130
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
WENDY [Excerpt]
tessaabrams
9
36k
So, you think you're a good person
axbom
PRO
2
1.9k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.7k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Transcript
࠶ൃࢭࡦΛߟ͑Δٕज़ @sota1235 PHPΧϯϑΝϨϯεԬ2018લࡇϦδΣΫτίϯ 2018/6/15
ͪͳڈ
https://twitter.com/hasegawayosuke/status/873390578678996992
ຯΛΊͨCfP • ࠶ൃࢭࡦΛߟ͑Δٕज़
ຯΛΊͨCfP • ࠶ൃࢭࡦΛߟ͑Δٕज़ • PHP͡Όͳͯ͘…
ຯΛΊͨCfP • ࠶ൃࢭࡦΛߟ͑Δٕज़ • PHP͡Όͳͯ͘… • JavaScriptϢχοτςετͷཧͱݱ࣮
ຯΛΊͨCfP • ࠶ൃࢭࡦΛߟ͑Δٕज़ • PHP͡Όͳͯ͘… • JavaScriptϢχοτςετͷཧͱݱ࣮ • JavaScriptPHPͩͬͨͷ͔
͍͢·ͤΜͰͨ͠ ྑ͍ൃද͢Δͧ
var_dump($me); • Sota Sugiura(͖ΓΜ) • @sota1235 • Mercari, Inc. •
কདྷͷເJavaScriptʹ ͳΔ͜ͱͰ͢
ձɺΓ্͕ͬͯ·͔͢ʁ
։ൃɺͯ͠·͔͢ʁ
γεςϜোɺى͖ͯ·͔͢ʁ
None
ςʔϚ γεςϜো
ςʔϚ γεςϜোʹཱ͔ͪ͏
ΞδΣϯμ • 1ষ ࠶ߟ γεςϜোͱ • 2ষ γεςϜোʹཱ͔ͪ͏ • 3ষ
࣮ફʂ࠶ൃࢭࡦ
1ষ ࠶ߟ γεςϜোͱ
ఆٛ “γεςϜোͱɺใγεςϜ͕ԿΒ͔ͷෆ ۩߹ʹΑͬͯͦͷػೳʹࢧোΛདྷͨ͠ɺຊདྷͷ ػೳ͕ར༻Ͱ͖ͳ͍ঢ়ଶͷ͜ͱͰ͋Δɻ” Ҿ༻: https://www.weblio.jp/content/γεςϜো
ఆٛ “γεςϜোͱɺใγεςϜ͕ԿΒ͔ͷෆ ۩߹ʹΑͬͯͦͷػೳʹࢧোΛདྷͨ͠ɺຊདྷͷ ػೳ͕ར༻Ͱ͖ͳ͍ঢ়ଶͷ͜ͱͰ͋Δɻ” Ҿ༻: https://www.weblio.jp/content/γεςϜো
୭͕ར༻͢Δػೳʁ • to CͳΒΞϓϦΛμϯϩʔυ͓ͨ͠٬͞· • to BαʔϏεͳΒܖઌͷࣾһ͞Μ • ࣾγεςϜͳΒࣗࣾࣾһ
ҙਤ͠ͳ͍ڍಈ
͓٬͞·ʹӨڹͷग़Δ ҙਤ͠ͳ͍ڍಈ
͜Εʁ • ΦϖϨʔγϣϯϛε • ༷௨Γ͕͓ͩ٬͞·ʹӨڹͷग़Δػೳ
γεςϜোͱɺ݁Ռ ݪҼ ɾγεςϜόά ɾΦϖϨʔγϣϯϛε ɾӡ༻ϛε ݁Ռ ɾը໘ʹΤϥʔ͕දࣔ ɾϨΠςϯγ͕̎ഒʹ ɾςετPush௨
͡Ό͋͜Εʁ • όά͚ͩͲӨڹൣғ֎ • ͓٬͞·ʹΤϥʔදࣔ͞Εͳ͍͕ϩά͕ߥ ΒͿΔ • ෆཁͳใ͕Ϩεϙϯεʹࠞͬͯ͟Δ
ηʔϑʁ https://giphy.com/gifs/wmwhitecaps-umpire-ump-david-gonzalez-3o6Zt4OIZEm5KE0DTi
Ξτ • Өڹ͕ͰΔՄೳੑ͕͋Δɺ͋ͬͨ͘͠ • જࡏతͳγεςϜো • ͨ·ͨ·ηʔϑ͚ͩͬͨͩ
ͳͥ݁ՌηʔϑͰ γεςϜোʁ
োऩଋͯ͠ αʔϏεଓ͔͘Β
1ষ·ͱΊ • γεςϜোͱ݁Ռͱͯ͠ • ͓٬͞·ʹӨڹ͕ͰΔͷ • Өڹ͕Ͱ͔ͨ͠Εͳ͍ͷ • ݪҼγεςϜతͳͷʹݶΒͳ͍
2ষ γεςϜোʹཱ͔ͪ͏
Ͳ͏ཱ͔ͪ͏ʁ • ͓٬͞·ʹӨڹΛग़͞ͳ͍ͨΊʹোΛग़ ͞ͳ͚Ε͍͍ • ͭ·ΓɺোΛग़͞ͳ͍։ൃΛ͢Ε͍͍ • ࠷ߴͰʁʁʁʁ
োग़ͣ͞ʹ։ൃͰ͖Δਓ
ݱ࣮ݫ͍͠+
ड͚ೖΕΔ͖ͨͬͨ1ͭͷࣄ࣮ ͲΜͳʹ༏लͳਓͰϛεΛ͢Δ
োʮى͖Δʯ • ਓ͕αʔϏεΛ࡞ΔݶΓɺ ϛεى͖Δ • ͭ·Γোແ͘ͳΒͳ͍ • োΛແ͘͢ํ๏։ൃΛ ΊΔ͜ͱ͚ͩ ը૾Ҿ༻:
http://cartoontester.blogspot.com/2013/10/field-of-dreams-rip-off.html
Ͳ͏͖͔͢ • ো͕ى͖Δ֬ΛݮΒ͢
Automation & Karakuri
Automation ਓ͕͠ͳ͍͍ͯ͘͜ͱΛ͠ͳ͍ Karakuri ਓ͕ϛε͍͍ͯ͠ΈΛͭ͘Δ
Automation • ੩తղੳʹΑΔࣗಈϨϏϡʔ • ࠶ൃࢭͷࣗಈςετ
Karakuri • PushπʔϧͷValidationڧԽ • ϓϩάϥϜ্ͷϩδοΫͰཧతʹى͖ͳ͍ Α͏վम͢Δ
Ҿ༻: https://qiita.com/hirokidaichi/items/f9f4549c88aaf8b38bda ਓؒͱ͍͏ίϯϙʔωϯτΛ ࠶ൃࢭʹೖΕͳ͍
2ষ·ͱΊ • ਓϛεΛ͢Δ • ࣦഊΛೝΊɺࣦഊ͔ΒֶͿ • ֶͼΛAutomation & KarakuriΛ࣠ʹ࣮ફͱ ঢ՚͢Δ
3ষ ࣮ફʂ࠶ൃࢭࡦ
ݱͷΛ͠·͢
ϝϧΧϦͷোରԠϑϩʔ োൃੜ ऩଋ ৼΓฦΓ ରԠ
ϝϧΧϦͷোରԠϑϩʔ োൃੜ ऩଋ ৼΓฦΓ ରԠ
ৼΓฦΓͰ͠ͳ͍͜ͱ • ͷٻ • লจͷಡΈ߹Θͤ
ৼΓฦΓͰ͢Δ͜ͱ • Automation & KarakuriΛ࣮ݱ͢Δ࠶ൃࢭ ͷݕ౼ • ͷਂ۷Γ
Who? োऩଋ • ऩଋޙɺରԠؔऀ ͰใࠂॻΛॻ͘ • ৼΓฦΓΛ͢ΔͨΊ ͷใΛॻ͘
Who? োऩଋ ࣄऀɺνʔϜͰߟ͑Δ • ·ͣࣄऀɺνʔ ϜͰ࠶ൃࢭࡦΛߟ ͑Δ
Who? োऩଋ ࣄऀɺνʔϜͰߟ͑Δ ΈΜͳͰߟ͑Δ • ߟ͑ͨͷΛΈΜͳ ͰϨϏϡʔ͢Δ • νʔϜͰग़ͯ͜ͳ͍ ΞΠσΟΞ͕ग़ͯ͘
Δ͜ͱ͋Δ
How? • िʹ1ɺSlack্ͰΦϯϥΠϯͰ࣮ࢪ • ୭ͰࢀՃͰ͖Δ • [ݕࡧ][ϝϧΧϦͷ3ͭͷValueͰऔΓΉΠϯ γσϯτରԠ] http://tech.mercari.com/entry/2018/04/10/090453
ΈΜͳͰݟΔඞཁ͋Δʁ • ࣾͷྺઓͷऀ͔Βݟ͕Β͑Δ • ผ৬छͷࢹ͕ಘΒΕΔ • OKͳΒOKͰ͓ർΕ༷Ͱͨ͠ͱͳΔ
࠶ൃࢭͷࢦඪ • ৽ਓ͕ಉ͜͡ͱΛͯ͠࠶ൃ͠ͳ͍͔ʁ • ਓ͕࡞ۀ͠ͳ͍Α͏ʹͰ͖Δ͔ʁ • ೋͱى͖ͳ͍Α͏ʹͰ͖Δ͔ʁ Karakuri Automation Karakuri
Backendͷྫ • ࣗಈςετͷՃ • ಠࣗνΣοΫεΫϦϓτΛCIͰ࣮ߦ • ϝϯςφϯεϞʔυͷ࣮
ࣾπʔϧͷྫ • ࣮ࡍͷোʹج͍ͮͨݖݶ੍ޚValidationॲ ཧͷՃ • खӡ༻Ͱ͍ͬͯͨ࡞ۀΛࣗಈԽ
ͦͷଞ • ϑΣʔϧιϑτͷࣗಈҠߦͷΈ࣮ • ΫϥυαʔϏεͷࡉ͔͍ϞχλϦϯά
શ෦࠶ൃࢭͰ͖Δͷʁ • ෆՄೳͰͳ͍(ͱ৴ͯ͡Δ) • ݱ࣮ɺίεύ͕ѱ͍ͷ͋Δ • ࠷খݶͷྗͷ݁Ռɺ࠷େݶʹਓؒͱ͍͏ί ϯϙʔωϯτ͕ؔΘΔՕॴΛڱ͘͢Δ
3ষ·ͱΊ • ϝϧΧϦͰ࠶ൃࢭʹՁΛݟग़ͯ͠Δ • Automation&KarakuriΛ࣠ʹि1ճɺΈΜͳͰ ৼΓฦΓΛ͢Δ
·ͱΊ
োใࠂॻࢿ࢈ • োαʔϏε͕ΔݶΓى͖ଓ͚Δ • ى͖ͨো͖ͪΜͱৼΓฦΓɺ࠶ൃࢭࡦ Λߟ͑ͯࢿ࢈ͱঢ՚ͤ͞Δ • େࣄͳͷະདྷͷ͓٬͞·ͷӨڹΛͲΕͩ ͚ݮΒͤΔ͔
࠶ൃࢭࡦਐԽ͕ඞཁ • Λଓ͚ΔαʔϏεͦͷɺো૿͑ ͍͢ • Microservicesٕज़ͷଟ༷Խ͕ਐΉͱ࠶ൃ ࢭͷқ্͕͍ͬͯ͘ • ࠶ൃࢭͷΈৗʹਐԽ͍ͯ͘͠ඞཁ͕ ͋Δ
Thank you