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
非正規化おじさんを殴るためのPrinciple of explosion
Search
Sota Sugiura
February 19, 2016
Technology
3
2.7k
非正規化おじさんを殴るためのPrinciple of explosion
正規化って大事だよねって話です。
雑兵Meetup #3にて発表
Sota Sugiura
February 19, 2016
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.7k
20220926_セキュリティチームの今_for_Drs._Prime_公開用.pdf
sota1235
0
150
再発防止策を考える技術 / #phpconsen
sota1235
10
3.9k
How to choose the best npm module for your team?
sota1235
9
610
Realtime Database for high traffic production application
sota1235
7
4.1k
Road to migrate JP Web as a microservice
sota1235
4
1.6k
インターフェース再入門 / Think Interface again
sota1235
6
11k
再発防止策を考える技術 #phpconfuk_rej
sota1235
1
1.2k
Update around Firebase #io18
sota1235
3
4.4k
Other Decks in Technology
See All in Technology
RSCの時代にReactとフレームワークの境界を探る
uhyo
10
3.5k
AIエージェント開発用SDKとローカルLLMをLINE Botと組み合わせてみた / LINEを使ったLT大会 #14
you
PRO
0
130
AWSで始める実践Dagster入門
kitagawaz
1
680
ハードウェアとソフトウェアをつなぐ全てを内製している企業の E2E テストの作り方 / How to create E2E tests for a company that builds everything connecting hardware and software in-house
bitkey
PRO
1
160
【NoMapsTECH 2025】AI Edge Computing Workshop
akit37
0
220
株式会社ログラス - 会社説明資料【エンジニア】/ Loglass Engineer
loglass2019
4
65k
AIエージェントで90秒の広告動画を制作!台本・音声・映像・編集をつなぐAWS最新アーキテクチャの実践
nasuvitz
3
300
テストを軸にした生き残り術
kworkdev
PRO
0
210
Unlocking the Power of AI Agents with LINE Bot MCP Server
linedevth
0
110
人工衛星のファームウェアをRustで書く理由
koba789
15
8.2k
Snowflake Intelligenceにはこうやって立ち向かう!クラシルが考えるAI Readyなデータ基盤と活用のためのDataOps
gappy50
0
270
Automating Web Accessibility Testing with AI Agents
maminami373
0
1.3k
Featured
See All Featured
How GitHub (no longer) Works
holman
315
140k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.7k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.1k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
The Invisible Side of Design
smashingmag
301
51k
Optimizing for Happiness
mojombo
379
70k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
How to train your dragon (web standard)
notwaldorf
96
6.2k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Transcript
/6--͓͡͞ΜΛԥΔͨΊͷ 1SJODJQMFPGFYQMPTJPO !TPUB
ँࡑ
Զʮ/6--શવؔͳ͔ͬͨʜʯ
ඇਖ਼نԽ/6--͓͡͞ΜΛԥΔͨΊͷ 1SJODJQMFPGFYQMPTJPO !TPUB
ࣗݾհ w ˏTPUB w JTUZMF *OD w 1)1+BWB4DSJQU
'PMMPXNF
%#ͷ͓͠·͢ ϚαΧϦίϫΠσε
Έͳ͞Μඇਖ਼نԽ͓͡͞ΜΛ ͝ଘͰ͔͢ʁ
ඇਖ਼نԽ͓͡͞Μͱ w ʮ+0*/͢Δͱ͘ͳΔ͔Βਖ਼نԽΊΕʯ w ʮσʔλ͕ࢄΒΔ͔Βਖ਼نԽΊΕʯ
ࡶฌʮ͙͵͵ʜʯ w ਖ਼͘͠3%#Λཧղͯ͠ͳ͍ͱඇਖ਼نԽ͓͡͞Μ Λ͢ͷ͍͠ w ᐆດͳཧͩͱzܦݧzΛثʹෛ͚ͯ͠· ͏͜ͱ͕ଟ͍
ʮͦ͏ͩɺཧ͠Α͏ʯ
ຊಡΜͩ ཧ͔ΒֶͿσʔλϕʔε࣮ફೖ 8&# %#13&44QMVT Ԟװ ஶ
ਖ਼نԽͷඞཁੑΛ ͱ͋ΔҰ໘͔ΒΓࠐΜͰΈΔ
ͦͦਖ਼نԽͱ
ਖ਼نԽͱ w 3%#ͷઃܭख๏ͱཱͯ֬͠͞Εͨख๏ w ͻͱ͜ͱͰݴ͏ͱʮσʔλϕʔε͔ΒॏෳΛͳ͘ ͢ʯ࡞ۀ
ͱ͋Δςʔϒϧ ໊લ ֶ ͖ͳ৯ ࡶฌଠ όφφ ࡶฌՖࢠ εΠΧ
ࡶฌଠ ࡶฌՖࢠ ΓΜ͝
ͱ͋Δςʔϒϧ ໊લ ֶ ͖ͳ৯ ࡶฌଠ όφφ ࡶฌՖࢠ εΠΧ
ࡶฌଠ ࡶฌՖࢠ ΓΜ͝ ʮ̋̋͞Μ̋ੜʯͱ͍͏ใ͕ ॏෳ͍ͯ͠Δ
ਖ਼نԽ͢Δ ໊લ ֶ ͖ͳ৯ ࡶฌଠ όφφ ࡶฌՖࢠ εΠΧ
ࡶฌଠ ࡶฌՖࢠ ΓΜ͝ ໊લ ͖ͳ৯ ࡶฌଠ όφφ ࡶฌՖࢠ εΠΧ ࡶฌଠ ࡶฌՖࢠ ΓΜ͝ ໊લ ֶ ࡶฌଠ ࡶฌՖࢠ
ਖ਼نԽ͠ͳ͍ͱʜ ໊લ ֶ ͖ͳ৯ ࡶฌଠ όφφ ࡶฌՖࢠ εΠΧ
ࡶฌଠ ࡶฌՖࢠ ΓΜ͝ ࡶฌଠ ύΠφοϓϧ */4&35
ਖ਼نԽ͠ͳ͍ͱʜ ໊લ ֶ ͖ͳ৯ ࡶฌଠ όφφ ࡶฌՖࢠ εΠΧ
ࡶฌଠ ࡶฌՖࢠ ΓΜ͝ ࡶฌଠ ύΠφοϓϧ */4&35 ໃ६ͨ͠σʔλ
͢ͳΘͪ ਖ਼نԽ͠ͳ͍ͱ͍͏͜ͱໃ६ͨ͠σʔλ͕ ૠೖ͞ΕΔཱ֬Λ্͛Δ͜ͱ
ໃ६ͷޭࡑ
3%#ͷૅ w 3%#ϦϨʔγϣφϧϞσϧΛ࣮ͨ͠ͷ w ϦϨʔγϣφϧϞσϧू߹ཧֶΛݩʹ͠ ͨσʔλϞσϦϯά
3%#ͷૅ w 3%#ϦϨʔγϣφϧϞσϧΛ࣮ͨ͠ͷ w ϦϨʔγϣφϧϞσϧू߹ཧֶΛݩʹ͠ ͨσʔλϞσϦϯά w ໃ६ཧֶΛࡴ͢
ࡶฌʮཧֶʜ ꒪⌓꒪ ʁʯ
ඵͰཧղ͢Δཧֶ w ཧֶͱz໋zΛ͜Ͷ͘Γ·Θֶ͢ w ໋ͱਅِΛ࣮֬ʹ͑Δͷ w ʮਿӜஉͰ͋Δʯ w ʮࡊ͓͍͍͠ʯ
ඵͰཧղ͢Δཧֶ w ཧֶʹఆཧ͕ଘࡏ͢Δ w ֶͰݴ͏ʮެࣜʯ w ఆཧΛݩʹ͋ΒΏΔ໋ͷਅِΛಋ͖ग़͢
ཧֶʹ͓͚Δఆཧ w ೋॏ൱ఆͷআڈ • not (not A) = true ->
A = true w ཧੵͷಋೖ • A = true, B = true -> (A and B) = true • ཧͷಋೖ • A = true -> (A or B) = true
ࠓͷओ͜ͷఆཧͷ͏ͪͷͭ
ʊਓਓਓਓਓਓਓਓਓਓਓਓਓʊ ʼɹ1SJODJQMFPGFYQMPTJPOɹʻ ʉ:?:?:?:?:?:?:?:?:?:ʉ
1SJODJQMFPGFYQMPTJPO w ༁͢Δͱʮരൃͷ๏ଇʯ w ཧֶʹ͓͚Δఆཧͷͭ w ໃ६͔Β͋ΒΏΔ໋Λಋ͘ΦιϩγΠఆཧ • (A and
not A) = true -> B = true
1SJODJQMFPGFYQMPTJPO w ༁͢Δͱʮരൃͷ๏ଇʯ w ཧֶʹ͓͚Δఆཧͷͭ w ໃ६͔Β͋ΒΏΔ໋Λಋ͘ΦιϩγΠఆཧ • (A and
not A) = true -> B = true
ཁ͢Δʹʜʁ w ʮਿӜࡶฌͰ͋ΔʯͱʮਿӜࡶฌͰͳ͍ʯ ͕ڞʹਅ࣮Ͱ͋Δͱ͢Δ
ཁ͢Δʹʜʁ w ʮਿӜࡶฌͰ͋ΔʯͱʮਿӜࡶฌͰͳ͍ʯ ͕ڞʹਅ࣮Ͱ͋Δͱ͢Δ w ʮਿӜࡀͰ͋Δʯͱ͍͏ಥഥࢠͳ໋͍ ਅͱ͢Δ͜ͱ͕Մೳ
ূ໌ͯ͠ΈΔ w A and not A͕ਅͱͳΔ"͕ଘࡏ͢ΔͱԾఆ͢Δ
ূ໌ͯ͠ΈΔ w ҙͷ໋Λ#ͱ͢Δ • A or B ਅ • (B
or A) and not A ਅ • ਪنଇʹΑΓBਅ
ূ໌Ͱ͖ͯ͠·ͬͨʜ w A and (not A)͕ਅͰ͋Δ͜ͱͰɺಥഥࢠ ͳ͘ग़໋͖ͯͨ#͕ਅͩͱূ໌Ͱ͖ͯ͠·ͬͨ
ࡶฌ 1SJODJQMFPGFYQMPTJPOΛ֮͑ͨʂ
ໃ६JT&WJM w ϦϨʔγϣφϧϞσϧͷϕʔεཧֶ w ཧֶΛഁյ͢Δໃ६͕ଘࡏ͢ΔͱϦϨʔγϣ φϧϞσϧ·่ͨյ͢Δ w ʮਖ਼͍͠σʔλʯΛฦ͞ͳ͍3%#ʹՁ͋Δ ͷ͔
ໃ६Λආ͚Δʹʁ w σʔλʹໃ६ΛؚΊͳ͍ॏෳΛۃྗආ͚Δ w ॏෳΛආ͚ΔͨΊʹਖ਼نԽΛ͏
ඇਖ਼نԽ͓͡͞ΜʹऻΘΕͨΒ w ਖ਼نԽͷతΛ͑Α͏ w ਖ਼نԽໃ६ΛؚΉՄೳੑΛԼ͛ΔͨΊͷͷ w ໃ६3%#ͷੈքΛյ͠͏Δ w ࠔͬͨΒໃ६ͷΛ͠Α͏ w
ʮ1SJODJQMFPGFYQMPTJPOͱ͍͏ͷ͕͋ͬͯͰ͢Ͷʜʯ
ͱ͍͑ w ݱ࣮ੈքΛશͯཧֶͷੈքʹϚοϐϯά͢Δ͜ͱ ෆՄೳ w ݱ࣮ͷσʔλϕʔεϋʔυΣΞ͓ͩۚ͠༗ݶ
΄ͲΑ͘ਖ਼نԽ͠Α͏ w ਖ਼نԽʹϨϕϧ͕͋Δ d/' #/' d/' w 3%#Λ͖ͪΜͱཧղͯ͠܅͚ͩͷ࠷ڧͷσʔλ ϕʔεΛઃܭ͠Α͏ʂ
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠