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
rwc2014
Search
Kuniaki IGARASHI
November 14, 2014
Technology
740
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
120
ActiveJobUpdates
igaiga
1
680
roppongirb_20250911
igaiga
1
750
igaiga Ruby Association Activity Report 2025 LT
igaiga
1
160
KaigiOnRails2024
igaiga
16
25k
RuboSensei
igaiga
0
360
Shibuya.rb-2023-04-27-igaiga
igaiga
1
600
Ginza Rails27 igaiga
igaiga
9
14k
tork09igaiga
igaiga
2
420
Other Decks in Technology
See All in Technology
Claude Codeとハーネスについて考えてみる
oikon48
19
9.4k
「ちゃんとやっている」は独りよがりだった ― 不安に寄り添うインシデント対応へ / Towards incident response that addresses anxieties
chmikata
1
5.2k
地域 SRE コミュニティ最前線 / SRE NEXT 2026 Discussion Night Track C
muziyoshiz
0
220
ソニー銀行におけるビジネスアジリティ向上のためのクラウドシフト戦略
srenext
0
220
CIで使うClaude
iwatatomoya
0
250
Foxgloveについて 実際にExtensionを開発して公開するまでの話 / About Foxglove: The Story of Developing and Releasing an Extension
ry0_ka
0
220
Claude Code 珍プレー好プレー
shinyasaita
0
330
脱金融のフューチャー・デザイン / Future Design Beyond Finance
ks91
PRO
0
150
CSに"SLO"は要らない、経営層に"99.9%"は伝わらない - SREを全社に"翻訳"する3原則
cscengineer
PRO
1
4.5k
ゴールデンパスは敷いただけでは道にならない ─ 企画部門のエンジニアが技術標準を事業価値に変えるまで
mhrtech
0
140
技術イベント終了後、運営の 事後タスクは丁寧に (心がけています)/ #tamagawadev
nishiuma
1
100
ポストモーテム! DDoSからサイトは守れた。 でもビジネスは守れなかった。
bengo4com
1
2.9k
Featured
See All Featured
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
480
Faster Mobile Websites
deanohume
310
32k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
220
Rails Girls Zürich Keynote
gr2m
96
14k
Heart Work Chapter 1 - Part 1
lfama
PRO
8
36k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
350
Paper Plane
katiecoart
PRO
2
52k
The SEO identity crisis: Don't let AI make you average
varn
0
510
Are puppies a ranking factor?
jonoalderson
1
3.7k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
320
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
180
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ͭ ৽ֶ͍͠ͼͷ͕ͨ͘͞ΜͰ͖ͨ