$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
rwc2014
Search
Kuniaki IGARASHI
November 14, 2014
Technology
2
710
rwc2014
Ruby World Conference 2014
2014.11.13, 14
クラウドサービスを使って簡単に始めるRuby Webアプリケーション開発
Kuniaki IGARASHI
November 14, 2014
Tweet
Share
More Decks by Kuniaki IGARASHI
See All by Kuniaki IGARASHI
ActiveJobUpdates
igaiga
1
240
roppongirb_20250911
igaiga
1
550
igaiga Ruby Association Activity Report 2025 LT
igaiga
1
110
KaigiOnRails2024
igaiga
15
21k
RuboSensei
igaiga
0
320
Shibuya.rb-2023-04-27-igaiga
igaiga
1
550
Ginza Rails27 igaiga
igaiga
9
14k
tork09igaiga
igaiga
2
370
Road to white mages
igaiga
1
730
Other Decks in Technology
See All in Technology
エンジニアリングをやめたくないので問い続ける
estie
2
1.2k
mairuでつくるクレデンシャルレス開発環境 / Credential-less development environment using Mailru
mirakui
5
560
AIの長期記憶と短期記憶の違いについてAgentCoreを例に深掘ってみた
yakumo
4
460
まだ間に合う! Agentic AI on AWSの現在地をやさしく一挙おさらい
minorun365
14
1.5k
Amazon Bedrock Knowledge Bases × メタデータ活用で実現する検証可能な RAG 設計
tomoaki25
4
1.4k
AI との良い付き合い方を僕らは誰も知らない
asei
0
160
【U/Day Tokyo 2025】Cygames流 最新スマートフォンゲームの技術設計 〜『Shadowverse: Worlds Beyond』におけるアーキテクチャ再設計の挑戦~
cygames
PRO
2
900
MySQLとPostgreSQLのコレーション / Collation of MySQL and PostgreSQL
tmtms
1
1k
AI駆動開発の実践とその未来
eltociear
1
390
2025年 開発生産「可能」性向上報告 サイロ解消からチームが能動性を獲得するまで/ 20251216 Naoki Takahashi
shift_evolve
PRO
2
210
Amazon Quick Suite で始める手軽な AI エージェント
shimy
0
960
障害対応訓練、その前に
coconala_engineer
0
130
Featured
See All Featured
Designing for Timeless Needs
cassininazir
0
86
AI Search: Where Are We & What Can We Do About It?
aleyda
0
6.7k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.7k
From π to Pie charts
rasagy
0
86
Highjacked: Video Game Concept Design
rkendrick25
PRO
0
240
Making the Leap to Tech Lead
cromwellryan
135
9.7k
BBQ
matthewcrist
89
9.9k
Utilizing Notion as your number one productivity tool
mfonobong
2
180
The Invisible Side of Design
smashingmag
302
51k
30 Presentation Tips
portentint
PRO
1
160
Designing for Performance
lara
610
69k
Navigating Team Friction
lara
191
16k
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ͭ ৽ֶ͍͠ͼͷ͕ͨ͘͞ΜͰ͖ͨ