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
Reader Conditionals
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
ayato
June 26, 2015
Programming
9.7k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Reader Conditionals
ayato
June 26, 2015
More Decks by ayato
See All by ayato
マイクロサービス内で動くAPIをF#で書いている
ayato0211
1
1.6k
Clojureという言語が私逹にもたらしたもの
ayato0211
6
3.2k
3年間考え続けてきたWebアプリケーションにおけるテストの話
ayato0211
3
310
Re:REPL-Driven Development
ayato0211
3
1.4k
Meta Template Engine
ayato0211
2
1.2k
超変換! Hiccup data structure!!
ayato0211
2
680
About Integrant
ayato0211
0
610
Muscle Assert
ayato0211
0
330
Clojureを用いたWebアプリケーション開発
ayato0211
2
3.2k
Other Decks in Programming
See All in Programming
いまどきの Codex で開発する visionOS アプリの開発スタイルについて
karad
0
150
Japan Community Day at Kubecon + CloudNativeCon Japan 2026: Learning Container Privilege Control by Building My Own Low-Level Container Runtime
ternbusty
1
170
Hono + Inertia + React で LP を構築した話
oukayuka
2
120
KotlinConf Extended South Korea 2026 Keynote
l2hyunwoo
0
120
Oxlintはいいぞ(続)
yug1224
1
320
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
190
Detecting Compromised CI with eBPF and Cilium Tetragon
lizrice
0
230
使いながら育てる Claude Code — 開発フローの1コマンド化 × 繰り返し指摘の自動仕組み化
shiki_kakaku
0
1.9k
Built Our Own Background Agent at LayerX
layerx
PRO
10
5.9k
バグを直したら useEffect が消えた
colorful12
3
670
30年振りにコンパイラの定数整数除算を改善した
herumi
7
3k
FDEが実現するAI駆動経営の現在地
gonta
2
290
Featured
See All Featured
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
870
Between Models and Reality
mayunak
4
400
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.5k
The Curious Case for Waylosing
cassininazir
1
470
Java REST API Framework Comparison - PWX 2021
mraible
34
9.7k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
How to Ace a Technical Interview
jacobian
281
24k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
730
Transcript
3FBEFS$POEJUJPOBMT ΆʔͨͿΔͳ͜ʔͲΛ͔͘ !@BZBUP@Q ͋ͽʔ DMPKVSF@GPDVT
None
None
None
None
None
None
None
None
None
None
None
None
None
ͷ͜ͱ EFG!@BZBUP@Q \OBNFl͋ͽʔz MBOH<$MPKVSF3VCZ+BWB4DSJQU4DIFNF> CMPHl EFpOFBZBMPHb z DPNQBOZl$ZCP[V4UBSUVQT *ODz^
ͷ͜ͱ EFG!@BZBUP@Q \OBNFl͋ͽʔz MBOH<$MPKVSF3VCZ+BWB4DSJQU4DIFNF> CMPHl EFpOFBZBMPHb z DPNQBOZl$ZCP[V4UBSUVQT *ODz^ ͍͍ͩͨ$MPKVSFͷਓ
DMKD࢝Ί·ͨ͠
DMKD࢝Ί·ͨ͠ d
࣍ w Ҏલͷ w 3FBEFS$POEJUJPOBMT֓ཁ w ৄࡉ w কདྷͷ͜ͱ w
࣮ࡍʹͬͯΈͨ w ·ͱΊ
Ҏલͷ
5IFSFBSF$MPKVSFEJBMFDUT $MPKVSF $MPKVSF4DSJQU $MPKVSF$-3 IPTUFEPOTFWFSBM EJ⒎FSFOUQMBUGPSNT8FXJTIUPXSJUFMJCSBSJFT UIBUDBOTIBSFBTNVDIQPSUBCMFDPEFBT QPTTJCMFXIJMFMFBWJOHqFYJCJMJUZUPQSPWJEF QMBUGPSNTQFDJpDCJUTBTOFFEFE
UIFOIBWF UIJTDPEFSVOPOBMMPGUIFN IUUQEFWDMPKVSFPSHEJTQMBZEFTJHO3FBEFS $POEJUJPOBMT
5IFSFBSF$MPKVSFEJBMFDUT $MPKVSF $MPKVSF4DSJQU $MPKVSF$-3 IPTUFEPOTFWFSBM EJ⒎FSFOUQMBUGPSNT8FXJTIUPXSJUFMJCSBSJFT UIBUDBOTIBSFBTNVDIQPSUBCMFDPEFBT QPTTJCMFXIJMFMFBWJOHqFYJCJMJUZUPQSPWJEF QMBUGPSNTQFDJpDCJUTBTOFFEFE
UIFOIBWF UIJTDPEFSVOPOBMMPGUIFN IUUQEFWDMPKVSFPSHEJTQMBZEFTJHO3FBEFS $POEJUJPOBMT ϓϥοτϑΥʔϜຖʹ ಉ͡ίʔυΛॻ͖ͨ͘ͳ͍
ղܾࡦ CFGPSF w ίϐʔϖʔετ w MFJODMKTCVJMEDSPTTPWFST w DMKY
ίϐʔϖʔετ ʊਓਓਓਓਓਓਓਓਓਓਓਓʊ ʼɹԿղܾ͞Ε͍ͯͳ͍ɹʻ ʉ:?:?:?:?:?:?:?:?:?:?:ʉ
MFJODMKTCVJMEDSPTTPWFS w ໊લ͚ͩແବʹΧοί͍͍ w ίʔυͷڞ௨Խ͕ग़དྷΔΑ͏ʹͳͬͨ w ϓϥοτϑΥʔϜґଘͷίʔυڞ༗ग़དྷͳ͍ w 'MPBUQBSTF'MPBUlz ͜Εແཧ
DMKY w ϓϥοτϑΥʔϜґଘΛΓग़ͤΔ w DMKTDMKͷίʔυΛు͖ग़͢ w TSDUPTSDίϯύΠϥ w αʔυύʔςΟͳπʔϧͳͷ͕Πέͯͳ͍
৽͍͠ղܾࡦ
৽͍͠ղܾࡦ 3FBEFS$POEJUJPOBMT
3FBEFS$POEJUJPOBMT ֓ཁ
3FBEFS$POEJUJPOBMT w ϓϥοτϑΥʔϜʹ໊લ͕͍ͨDMK DMKT DMS w 3FBEFSTZOUBYͷՃ ! w
ϓϥοτϑΥʔϜ໊Ҏ֎ʹEFGBVMU͕͑Δ w SFBESFBETUSJOHʹΦϓγϣϯՃ w SFBEFSDPOEJUJPOBMTͷΠϯελϯεՃ w DMKD֦ுࢠͷαϙʔτ
ཁ͢Δͱʜ w ϦʔμʔϚΫϩ w ΫϩείϯύΠϧ͢Δͭ w ศར
ৄࡉ
'FBUVSF4FUT w ݱࡏ͑ΔͷͭͷϓϥοτϑΥʔϜ w DMK DMKT DMS w ಡΈࠐΈ࣌ʹৗʹQMBUGPSNGFBUVSF༗ޮ w
EFGBVMU OPOF FMTF༧ࡁΈͷ໊લ
3FBEFSTZOUBY w !͕৽͘͠Ճ͞Εͨ w ಉ͡จ๏ͰTQMJDJOHͷ༗ແ͕ҧ͍ w GFBUVSFDPOEJUJPOFYQSFTTJPO
w EFGBVMUΛ͏͜ͱͰʮͦΕΒҎ֎ʯΛදݱՄ w Ϛον͠ͳ͍߹Կฦ͞ͳ͍ OPUOJM
3FBEFSTZOUBY OTFYBNQMFDPSF SFRVJSF ! DMK<<GPPCBSBTCBS>> DMKT<<IPHFGVHBBTGVHB> <UBUBUJUJBTUJUJ> EFGOTUSJOU<Y>
DMK *OUFHFSQBSTF*OUY DMKT QBSTF*OUKTXJOEPXY
3FBEFSPQUJPOTBOE QSFTFSWFSFBEDPOENPEF w SFBESFBETUSJOHͷୈҰҾͱͯ͠Φϓγϣϯ ϚοϓΛͤΔΑ͏ʹͳͬͨ w SFBEFSDPOEJUJPOBMTΛॲཧ͢Δ͔બՄ w ΞΫςΟϒʹ͢ΔϓϥοτϑΥʔϜΛબՄ
3FBEFSPQUJPOTBOE QSFTFSWFSFBEDPOENPEF SFBETUSJOH\SFBEDPOEBMMPX^ l DMKDMPKVSFEFGBVMUVOLOPXO z JO$MPKVSFDMPKVSF EFGY SFBETUSJOH\SFBEDPOEQSFTFSWF^
l DMKDMPKVSFEFGBVMUVOLOPXO z DMKDMPKVSFEFGBVMUVOLOPXO DMBTTY DMPKVSFMBOH3FBEFS$POEJUJPOBM
3FBEDPOEJUJPOBMBOE UBHHFEMJUFSBMJOTUBODFT w SFBEFSDPOEJUJPOBMTͱUBHHFEMJUFSBM༻ͷΠ ϯελϯε͕૿͑ͨ
/FXQPSUBCMFpMF FYUFOTJPODMKD w ֤ϓϥοτϑΥʔϜ͔ΒಡΈࠐΉ͜ͱ͕ग़དྷΔ w ϓϥοτϑΥʔϜݻ༗ϑΝΠϧDMKDΑΓઌʹ ಡΈࠐ·ΕΔ w DMKDͷωʔϜεϖʔεΛແޮʹͰ͖Δ
কདྷͷ͜ͱ
কདྷͷ͜ͱ w 0QFOGFBUVSFTFU w %FGBVMUEBUBSFBEFSGPSUBHHFESFBEFS JOTUBODFT w #PPMFBOGFBUVSFDPNCJOBUJPOT w 0QFOFYUFOUJPOT
࣮ࡍʹͬͯΈͨ
ͬͯΈͨ w ϙʔλϒϧͳίʔυΛॻ͚Δ w ϥΠϒϥϦ͚ͩͰͳ͘ϓϩμΫτͷதͰ͍ ͍ͨγʔϯ͋Δ w ϧʔςΟϯάपΓͱ͔
ͬͯΈͨ w ϙʔλϒϧͳίʔυΛॻ͚Δ w ϥΠϒϥϦ͚ͩͰͳ͘ϓϩμΫτͷதͰ͍ ͍ͨγʔϯ͋Δ w ϧʔςΟϯάपΓͱ͔ جຊతʹศར
ߟ͑Δඞཁ͕͋Δ͜ͱ w ϑΝΠϧԿॲஔ͘ w ϚΫϩͲ͏͢Δ w ϓϥοτϑΥʔϜຖʹ͑Δͷ͑ͳ͍ͷ w
Ϧϩʔυʹؔͯ͋͠Γ
ϑΝΠϧԿॲஔ͘ w ׳शతʹTSDDMKDPSTSDDMKD w DMKYͬͨϥΠϒϥϦͩͱTSDԼ͕ଟ͍ؾ͕ ͢Δ w ߹ʹΑͬͯDMKTԼ͋Γ͔ ϚΫϩ༻
ϚΫϩͲ͏͢Δ w ϚΫϩఆٛDMKͰғΉ w ωʔϜεϖʔεNBDSPTͬͯ͏͍Βͳ͍͔ w FH TSDDMKTFY\GPPDMKT GPPDMKD^Ͱྑ͛͞
ϓϥοτϑΥʔϜຖʹ ͑Δͷ͑ͳ͍ͷ w EFGNBDSPΈ͍ͨͳͷDMKTͰແཧ w SFRVJSFJNQPSUDMKDDMKYͰͳ͚Εϓϥο τϑΥʔϜຖʹ۠Δ w DMKYͷϥΠϒϥϦී௨ʹSFRVJSFJNQPSUग़ དྷΔ
Ϧϩʔυʹؔͯ͋͠Γ w IUUQEFWDMPKVSFPSHKJSBCSPXTF5/4 w Ұिؒલʹղܾ͞Εͨ UPPMTOBNFTQBDF
&OKPZ$MPKVSF