Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
rwc2014
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Kuniaki IGARASHI
November 14, 2014
Technology
770
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
rwc2014
Ruby World Conference 2014
2014.11.13, 14
クラウドサービスを使って簡単に始めるRuby Webアプリケーション開発
Kuniaki IGARASHI
November 14, 2014
More Decks by Kuniaki IGARASHI
See All by Kuniaki IGARASHI
RailsTokyo 4 GarnetTech373
igaiga
0
180
ActiveJobUpdates
igaiga
1
810
roppongirb_20250911
igaiga
1
840
igaiga Ruby Association Activity Report 2025 LT
igaiga
1
190
KaigiOnRails2024
igaiga
16
26k
RuboSensei
igaiga
0
390
Shibuya.rb-2023-04-27-igaiga
igaiga
1
630
Ginza Rails27 igaiga
igaiga
9
14k
tork09igaiga
igaiga
2
450
Other Decks in Technology
See All in Technology
Gifu WordPress Meetup #200 に向けて、私たちには何ができるだろうか?/ 2026-11-07 Gifu WordPress Meetup
torounit
0
250
Reticulum, le réseau cypherpunk dont vous avez besoin !
rlifchitz
0
120
【dbts2026】AIエージェントの 判断と探索を変える、 データベース エンジニアリング― 既存DBの処理と依存関係から作る、オペレーショナルオントロジー ―
shisyu_gaku
0
270
HQ駆動開発で最高のAI-Contextを作ろう
sansantech
PRO
1
120
仕様と現実の間で落とし所を探るリモートMCPの認証・認可 — Sansanの認証基盤における課題と実践
sansantech
PRO
2
220
re:Invent2026 事前勉強会 歴史と愉しみ方10分LT編
toshi_atsumi
0
180
Copilot Coworkで「みのるん式」やってみた
minorun365
PRO
2
1.7k
An Introduction to Context Ontology Accelerator (teaching AI agents what your data means)
inariku
PRO
1
200
なぜ東京にいる私が、新潟の技術コミュニティを運営するのか by 八雲慎之助
yakumo
0
230
bpf_arenaとstruct_opsを使うのが難しかった話
masu_mi
0
220
PostgreSQL オプティマイザ統計の秘密
nori_shinoda
1
450
Kiro Crew の Bot (続く役目を任せる窓口) | 目指せ Kiro マスター 12
inariku
PRO
2
350
Featured
See All Featured
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
2
390
Documentation Writing (for coders)
carmenintech
77
5.6k
How STYLIGHT went responsive
nonsquared
100
6.4k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.4k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
520
Discover your Explorer Soul
emna__ayadi
2
1.3k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.6k
Building Adaptive Systems
keathley
44
3.3k
Making Projects Easy
brettharned
120
6.9k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
23k
Scaling GitHub
holman
464
140k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
5
910
Transcript
ΫϥυαʔϏεΛͬͯ؆୯ʹ࢝ΊΔ 3VCZ8FCΞϓϦέʔγϣϯ։ൃ 6TFDMPVETFSWJDFTUPFBTJMZEFWFMPQ 3VCZXFCBQQMJDBUJPOT ޒेཛྷ໌,VOJBLJ*("3"4)* TQJDFMJGF *OD 3VCZ8PSME$POGFSFODF HJUIVCJHBJHB UXJUUFSJHBJHB
GBDFCPPLLVOJBLJJHBSBTIJ
ޒेཛྷ໌ גࣜձࣾTQJDFMJGF ։ൃ෦෦ HJUIVCJHBJHB UXJUUFSJHBJHB GBDFCPPLLVOJBLJJHBSBTIJ
ΤϯδχΞΦϑΟε݅ืूத BUUPCF/:P⒏DFIUUQTXXXqJDLSDPNQIPUPTBTPOBT גࣜձࣾTQJDFMJGF ౡࠜࢧࣾઃཱ४උத
"HFOEB w3VCZ 3BJMTͷ։ൃڥͷ࡞Γํ wΫϥυαʔϏε/JUSPVT*0 w8PSLTIPQͷ࣮ྫΛ௨ͨ͡ධՁ w8FCΞϓϦͷֶशํ๏ w3BJMT w4JOBUSB
͢͜ͱ wΫϥυڥΛͬͨ3VCZ 3BJMTͷ։ൃ wϫʔΫγϣοϓͰ͏ࡍʹؾΛ͚ͭΔ͜ͱ w3VCZ 3BJMTͷֶशํ๏ͱֶशࢿྉ wରɿϓϩάϥϛϯάΛ͜Ε͔Β࢝ΊΔํ ͜ͷൃදΛฉ͘ͱֶश ڭҭ Λ࢝ΊΒΕΔ
͞ͳ͍͜ͱ w+BWB4DSJQU w͍ٕ͠ज़ͷ ͜ͷൃදͰ͢͜ͱɾ͞ͳ͍͜ͱ
3VCZ 3BJMTͷ։ൃڥΛ࡞Δͷ͍͠ IUUQTXXXqJDLSDPNQIPUPTIJEEFO@WJDF
3VCZ 3BJMTͷ։ൃڥ 8JOEPXT "DUJWF4DSJQU3VCZ 3VCZ DPNQJMFS 3BJMT*OTUBMMFS 3VCZ .BD
QSFJOTUBMMFE 3VCZ SCFOW 3VCZ YDPEF IPNFCSFX -JOVY SCFOW 3VCZ DPNQJMFS ΑΓ؆୯ʹηοτΞοϓͰ͖Δ3VCZ 3BJMT։ൃڥͷఏҊ /JUSPVT*0
IUUQTXXXOJUSPVTJP
8IBU`T/JUSPVT*0ʁ ϒϥβ͔Βར༻Ͱ͖Δ Ϋϥυ্ͷ౷߹։ൃڥ *%& 'JMF&YQMPSFS &EJUPS 5FSNJOBM
/JUSPVT*0ͷྑ͞ ແྉϓϥϯͰձһొΛͨ͠Β͙͢ʹ 3VCZͷ։ൃ͕Ͱ͖Δ
/JUSPVT*0ͰͰ͖Δ͜ͱ w5FSNJOBM͔Β3VCZίʔυΛ࣮ߦ w3BJMT 4JOBUSBͰ8FCΞϓϦ։ൃ wHJUΛͬͯHJUIVCͱ࿈ܞ w࠷৽όʔδϣϯͷ3VCZΛར༻Մೳ
/JUSPVT*0ͷ͍ํ
/JUSPVT*0Ͱ։ൃΛ࢝ΊΔ ձһొ
/JUSPVT*0Ͱ։ൃΛ࢝ΊΔ $SFBUF#PY #09 ։ൃ࣮ߦڥ ͷ୯Ґ
/JUSPVT*0Ͱ։ൃΛ࢝ΊΔ ༗ྉϓϥϯΛ ͏߹ /0Λ ߪೖ͢Δ /0 /JUSPVT*0 ͰͷԾ௨՟ ແྉϓϥϯͱ ͷࠩޙड़
/JUSPVT*0Ͱ։ൃΛ࢝ΊΔ μογϡϘʔυ ఀࢭ࣌4UBSUΛԡͯ͠ىಈ ఀࢭத ͠Β͘Θͳ͍ͱࣗಈఀࢭ͢Δ
/JUSPVT*0Ͱ։ൃΛ࢝ΊΔ μογϡϘʔυ *%&ϘλϯΛԡͯ͠։ൃը໘Ҡಈ ىಈத
*%& 'JMF&YQMPSFS &EJUPS 5FSNJOBM
/JUSPVT*0Ͱ3BJMTΞϓϦΛͭ͘Δ TDBGGPMEΛͬͯຊͷใΛొ͢Δ؆୯ͳΞϓϦΛͭ͘Γ·͢ EFNP IUUQZPVUVCF4Y*SXQ7%
SBJMTTFSWFSͨ͠ͱ͖ͷଓํ๏ ˞Πϯλʔωοτ্ʹެ։͞ΕΔͷͰ ެ։ͨ͘͠ͳ͍߹ɺ 1SFWJFX4FU1BTTXPSE͔Β #"4*$ೝূͷύεϫʔυΛઃఆ /JUSPVT*0Ͱ3BJMTΞϓϦΛͭ͘Δ
/JUSPVT*0ͷҙ wແྉϓϥϯͰఆظతʹΠϯελϯε͕ఀࢭ wཧ༻μογϡϘʔυ͔Β࠶ىಈՄೳʢແྉʣ wϫʔΫγϣοϓͷؒʹఀࢭͨ͠έʔεແ͠ wωοτϫʔΫ͕ͳ͍ͱ͑ͳ͍
"DBTFTUVEZJOXPSLTIPQ 3BJMT(JSMT0TBLB IUUQTXXXqJDLSDPNQIPUPTRVBEJOTFU
"DBTFTUVEZJOXPSLTIPQ 3BJMT(JSMTେࡕͰ/JUSPVT*0Λར༻ wରऀॳֶऀʢॳϓϩάϥϛϯάͷํʣ w࡞ͨ͠ΞϓϦࣸਅߘϛχϒϩάΞϓϦ wࢿྉɿIUUQSBJMTHJSMTKQBQQ wશ࣌ؒͷ࡞ۀ࣌ؒ wڥߏங ձһొ ΞϓϦ࣮ ެ։
"DBTFTUVEZJOXPSLTIPQ ྑ͍ wڥߏங ձһొ ͕࣌ؒͰ؆୯ ఔ w͔Γқ͍͘қ͍ͱҙతͳҙݟ w1$Λସ͑ͨ߹Ҿ͖ଓ͖ར༻Ͱ͖Δ w/JUSPVT*0͚ͩͰΠϯλʔωοτެ։Մೳ
1BB4ෆཁ
"DBTFTUVEZJOXPSLTIPQ ѱ͍ w*&ͰҰ෦ػೳ͕͑ͳ͍ͷͰ$ISPNFϒϥβͳͲ͕ඞཁ wωοτϫʔΫ͕Εͨ߹ʹ͑ͳ͍ wϑΝΠϧΤΫεϓϩʔϥͰҙਤͤͣυϥοάΞϯυυϩοϓͷ ૢ࡞Λͯ͠͠·͍ɺϑΥϧμ͕ߦํෆ໌ʹͳΔ w/JUSPVT*0͕αʔϏεΛఀࢭͨ͠߹ʹར༻Ͱ͖ͳ͘ͳΔ ࣄલʹઆ໌Λߦ͍ɺଞͷ։ൃڥߏஙͱͲͪΒ બՄೳʹ͓ͯ͘͠ͷ͕ྑ͍
TQJDFMJGFࣾһཱྀߦUP/JUSPVT*0 ͻͱ͢ΈCSFBL IUUQTXXXqJDLSDPNQIPUPTJHBJHB
/JUSPVT*0JTFYDJUFEUPTFFTP NVDITVQQPSUGSPNPVSGSJFOET JO+BQBO8FXPVMEMPWFUPIFBS GSPNZPVBOETFFXIBUZPV`SF CVJMEJOHXJUI/JUSPVT*0 .FTTBHFGSPN/JUSPVT*0
3BJMTΛͬͨ 8FCΞϓϦ։ൃͷֶशํ๏ ํ wରϓϩάϥϛϯά͕ॳΊͯͷํ wͰ͖Δ͚͔ͩΓқ͘આ໌͍ͨ͠
3BJMTͷֶशࢿྉͷྫ w3BJMT(VJEFT XFC IUUQSBJMTHVJEFTKQ w3BJMT5VUPSJBM XFC IUUQSBJMTUVUPSJBMKQ w࣮ફ3VCZPO3BJMT ॻ੶
wஶࠇా*4#/ ϓϩάϥϚ͚͘͠ɺཧղ͕ࠔͳ߹ ͜ΕΒͷࢿྉͷखલΛຒΊΔɺ ΑΓ͔Γқ͍ࢿྉΛ࡞ͨ͠
IUUQCJUMZJHB[FNJ IUUQTHJUIVCDPNJHBJHBSBJMT@UFYUCPPL
3BJMTͷڭՊॻֶशͷྲྀΕ w࣮ࡍʹ࡞ͬͯԿ͕Ͱ͖Δ͔ΛΔ w3BJMTΞϓϦͷΈΛΔ wखຊͱͳΔίʔυʹ৮ΕΔ wσόοάͷํ๏ΛΔ w՝Λ͜ͳ͍ͯ͘͠
ࡐը૾ߘػೳ͖ϛχϒϩάΞϓϦ ࣮ࡍʹ࡞ͬͯԿ͕Ͱ͖Δ͔ΛΔ
ը૾ߘػೳ͖ϛχϒϩάΞϓϦ গ͠ͷίϚϯ υͱίʔυྔ Ͱ࣮Ͱ͖Δ 3BJMTͷڭՊॻΑΓҰ෦ൈਮ
3BJMTΞϓϦͷΈΛΔ 3BJMTͷڭՊॻΑΓҰ෦ൈਮ
αϯϓϧΞϓϦͰखຊͱͳΔίʔυʹ৮ΕΔ ը૾ߘػೳ͖ϛχϒϩάΞϓϦ wTDBGGPME ੜ͞Εͨίʔυྑ͍खຊ w$36%جૅ w.7$ w3BJMTͷॲཧͷྲྀΕ wSPVUFT DPOUSPMMFS
WJFX w(FN #VOEMFS ը૾ߘDBSFFSXBWFHFN ֶͿཁૉ
σόοάͷํ๏ΛΔ wΤϥʔͷಡΈํ wϩάͷग़͠ํɺಡΈํ wϒϥβͷσόοάػೳ wQSZͰσόοά
ֶशͷྲྀΕ ͜ͷઌͭͮ͘ಓΛࣔ͢ w࣮ࡍʹ࡞ͬͯԿ͕Ͱ͖Δ͔ΛΔ w3BJMTΞϓϦͷΈΛΔ wखຊͱͳΔίʔυʹ৮ΕΔ wσόοάͷํ๏ΛΔ w՝Λ͜ͳ͍ͯ͘͠
3BJMTΛͬͱֶͼ͍ͨਓ 8FC্ͷࢿྉ w3BJMTͷڭՊॻ wIUUQCJUMZJHB[FNJ w3BJMT(VJEFTIUUQSBJMTHVJEFTKQ w ཏతͳղઆͰ3BJMTͷػೳΛֶͿ w3BJMT5VUPSJBMIUUQSBJMTUVUPSJBMKQ w αϯϓϧΞϓϦͮ͘ΓΛ௨ͯ͡3BJMTΛֶͿ
w ୡਓग़൛ձʹిࢠॻ੶൛͋ΓIUUQUBUTV[JOFDPNCPPLTSBJMTUVUPSJBM ॻ੶ w࣮ફ3VCZPO3BJMT 3BJMTରԠ wஶࠇా*4#/
TQJDFMJGFࣾһཱྀߦJO/:XJUIࣰݪ༗࢘உ ͻͱ͢ΈCSFBL IUUQTXXXqJDLSDPNQIPUPTBTPOBT
TQJDFMJGFTFSWJDFT
TQJDFMJGFTQPOTPSFEFWFOUT
3BJMT 8FCαʔϏε։ൃͷελϯμʔυ ศར͕ͩෳࡶɺशಘίετ͕ߴ͍ 4JOBUSB ϑΝΠϧͰಈ࡞ γϯϓϧͳߏ 8FCΞϓϦͷಈ࡞Λཧղ͢Δͷʹྑ͍ࡐ 3VCZ8FC"QQ'SBNFXPSLT
4JOBUSB4BNQMF IFMMPSC HFNJTJOBUSB SVCZIFMMPSCQ PS SVCZIFMMPSCQP ˢ/JUSPVT*0ͰPΛ༩ IUUQMPDBMIPTU ϒϥβͰΞΫηε SFRVJSFTJOBUSB
HFUEP )FMMPXPSME FOE ݁Ռ
4JOBUSBͱ3BJMTͷൺֱ 4JOBUSB pMF IFMMPSC 3BJMT
4JOBUSBσʔλอଘ ӬଓԽ σʔλอଘͷΈผ్༻ҙ͢Δඞཁ͕͋Δ 3BJMTͰඪ४తʹར༻͞Ε͍ͯΔ "DUJWF3FDPSEઃఆ͕ෳࡶʹͳΔ ίʔυेߦ ָʹσʔλΛอଘ͍ͨ͠ ΫϥυαʔϏεpSFCBTFͱ )BTIΛอଘͰ͖ΔpSFCBTFHFNΛར༻
IUUQTXXXpSFCBTFDPN
'JSFCBTF Ϋϥυ্ͷσʔλཧαʔϏε pSFCBTFHFNΛ͏ͱ͍ίʔυͰ )BTIΦϒδΣΫτͷอଘɺಡΈग़͕͠Մೳ ແྉϓϥϯར༻Մೳ
ࣄલ४උ ΞΧϯτΛ࡞͠ɺ %BTICPBSE͔Β $3&"5&/&8"11 ϘλϯΛԡͯ͠ ΞϓϦΛ࡞͢Δ
pSFCBTFHFNTBNQMFDPEF pSFCBTF@TBNQMFSC SFRVJSFpSFCBTF VSMIUUQTJHBJHBTBNQMFpSFCBTFJPDPN pSFCBTF'JSFCBTF$MJFOUOFX VSM TUPSBHF@OBNFCPYࣗ༝ʹ໋໊Մೳ I\BQQMF HSBQF^อଘ͢Δ)BTI
4BWF pSFCBTFTFU TUPSBHF@OBNF I -PBE QSFTVMUpSFCBTFHFU TUPSBHF@OBNF CPEZ HFNJpSFCBTF SVCZpSFCBTF@TBNQMFSC ݁Ռ\BQQMF HSBQF^ $POpH 4BWF -PBE ˞VSMEBTICPBSEͰ ઃఆͨ͠"1163- )BTIΛอଘͯ͠ಡΈࠐΉ3VCZαϯϓϧίʔυ
TJOBUSBpSFCBTFTBNQMFDPEF pSFCBTF@TJOBUSBSC SFRVJSFTJOBUSB SFRVJSFpSFCBTF 'JSFCBTFTFUUJOHT VSMIUUQTJHBJHBTBNQMFpSFCBTFJPDPN pSFCBTF'JSFCBTF$MJFOUOFX VSM TUPSBHF@OBNFCPY
4BWF ຊདྷQPTU͕ͩɺΞΫηε͕؆୯ͳͷͰHFU HFUOBNFOBNFEP pSFCBTFTFU TUPSBHF@OBNF \OBNF QBSBNT<OBNF>^ 7JTJUPSOBNF\QBSBNT<OBNF>^ FOE -PBE HFUWJTJUPSEP pSFCBTFHFU TUPSBHF@OBNF CPEZUP@T FOE HFNJpSFCBTFTJOBUSB SVCZpSFCBTF@TJOBUSBSC ˢ/JUSPVT*0ͰҎԼΛ༩ QP OBNFJHB ϒϥβͰOBNF999ΞΫηε WJTJUPS \OBNFJHB^ OBNF999ΞΫηεͨ͠ࡍʹ 4BWF͞ΕͨσʔλΛදࣔ
ͬͱֶͼ͍ͨਓ4JOBUSB 3VCZฤ wೖ4JOBUSB w*4#/ wߨٛࢿྉ 3VCZฤ wIUUQTHJUIVCDPNJHBJHBIJUPUTVCBTIJSVCZ wୈճʙୈճ3VCZฤ ୈճʙୈճͷ3BJMTฤ3BJMTͷڭՊॻΛࢀর
wͨͷ͍͠3VCZୈ൛ w*4#/
·ͱΊ w/JUSPVT*0Ͱ؆୯ʹ3VCZ 3BJMT։ൃ wIUUQTXXX/JUSPVT*0 w3BJMTͷڭՊॻΛ࡞ͨ͠ wIUUQCJUMZJHB[FNJ wγϯϓϧͳ4JOBUSBͰ8FCΞϓϦΛཧղ w'JSFCBTFHFNͰ؆୯ʹσʔλอଘ
3VCZ։ൃऀΛ ͤʹ͢Δݴޠɻ ͬͱଟ͘ͷ։ൃऀΛ 3VCZͰͤʹ͍ͨ͠ɻ ·ͭͱΏ͖ͻΖ
/JUSPVT*0(VZT দԬઌੜɺ-FXJTڭतɺᖛ࡚͞ΜɺχϑςΟגࣜձࣾླઌੜɺٶ͞Μ ҰڮେֶͷडߨֶੜͷΈͳ͞· 3BJMT(JSMT 3BJMTࣉࢠͷελοϑɺίʔνɺࢀՃऀͷΈͳ͞· ৬ಉ྅ ँࣙ5IBOLT BCPVUNF HJUIVCJHBJHB UXJUUFSJHBJHB
GBDFCPPLLVOJBLJJHBSBTIJ U%JBSZIUUQJHBSBTIJLVOJBLJOFU 3BJMTͷڭՊॻIUUQCJUMZJHB[FNJ 2VFTUJPOʁ
None
ิ TVQQMFNFOUBSZFYQMBOBUJPO
/JUSPVT*0Ͱ3VCZΛόʔδϣϯΞοϓ SWNΛར༻͍ͯ͠ΔͷͰɺSWNͷ࡞๏Ͱ࠷৽൛ͷ3VCZΛར༻Մೳ IUUQJHBSBTIJLVOJBLJOFUEJBSZIUNM
pSFCBTFEBTICPBSE
͜ͷ1ͷRubyΤίγεςϜͷϗοττϐοΫͷ1ͭ ৽ֶ͍͠ͼͷ͕ͨ͘͞ΜͰ͖ͨ