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
sinatra
Search
Kuniaki IGARASHI
July 01, 2014
Technology
230
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
sinatra
Sinatraでつくる簡単webアプリ
Kuniaki IGARASHI
July 01, 2014
More Decks by Kuniaki IGARASHI
See All by Kuniaki IGARASHI
RailsTokyo 4 GarnetTech373
igaiga
0
110
ActiveJobUpdates
igaiga
1
670
roppongirb_20250911
igaiga
1
730
igaiga Ruby Association Activity Report 2025 LT
igaiga
1
150
KaigiOnRails2024
igaiga
16
24k
RuboSensei
igaiga
0
350
Shibuya.rb-2023-04-27-igaiga
igaiga
1
590
Ginza Rails27 igaiga
igaiga
9
14k
tork09igaiga
igaiga
2
410
Other Decks in Technology
See All in Technology
Agile and AI Redmine Japan 2026
hiranabe
3
370
気軽に使える"情報のハブ"としてのNotion活用 〜フロー情報の集積点 と、 Claude Code × Notion AI〜
syucream
1
160
水を運ぶ人としてのリーダーシップ
izumii19
2
370
SONiC Scale-Up Working Group から探る Scale-UpやUltraEthernet機能の実装方法
ebiken
PRO
2
440
白金鉱業Meetup_Vol.24_「AIエージェントは分けるほど良い」は本当か? / Is it true that “the more you divide AI agents, the better”?
brainpadpr
1
420
手塩にかけりゃいいってもんじゃない
ming_ayami
0
620
エラーバジェットのアラートのタイミングを考える.pdf
kairim0
0
180
Oracle Cloud Infrastructure:2026年6月度サービス・アップデート
oracle4engineer
PRO
0
170
IaC コードを資産へ:AWS CDK 社内ライブラリと横断展開 / aws-summit-japan-2026
gotok365
9
1.4k
コミュニティの有益性 ~JAWS Days 2026 での体験を通して~ / The Benefits of a Community ~Through My Experience at JAWS Days 2026~
seike460
PRO
0
220
OTel × Datadog で 「AI活用」を計測し、改善に繋げる
shihochan
2
520
新しいUbuntu/GNOMEが使いたいからXからWaylandへ移行頑張ってるの巻 2026-06-20
nobutomurata
0
160
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.3k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
210
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
750
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
390
Typedesign – Prime Four
hannesfritz
42
3.1k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
980
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.3k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
The Curse of the Amulet
leimatthew05
1
13k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
390
Transcript
4JOBUSBͰ࡞Δ ؆୯8FCΞϓϦ ! ! ޒेཛྷ໌ HJUIVCJHBJHB UXJUUFSJHBJHB IUUQXXXGBDFCPPLDPNLVOJBLJJHBSBTIJ
࣍ (FN 4JOBUSBHFNͰ࡞Δ؆୯8FCΞϓϦ
8FCΞϓϦͬͯʁ
ϒϥβͰΞΫηε Ͱ͖ΔΞϓϦ
$00,1"% 3VCZPO3BJMT
৯ϩά 3VCZPO3BJMT
0INZ(MBTTFT 3VCZPO3BJMT
UXJUUFS ݩ3VCZPO3BJMT
3VCZʹ 3VCZPO3BJMT 3BJMT 4JOBUSB 1BESJOP ͱ͍ͬͨ8FCΞϓϦΛ࡞Δ ϑϨʔϜϫʔΫ͕͋Γ·͢ɻ
ࠓ4JOBUSBΛͬͯ 8FCΞϓϦΛͭͬͯ͘ Έ·͠ΐ͏ 3VCZPO3BJMTສೳͰൣғͷ8FCΞϓϦΛ ࡞ΕΔͨΊɺΑ͘ΘΕ·͕͢ɺ4JOBUBSBγϯ ϓϧͰ؆୯ʹͭ͘ΕΔͱ͍͏ಛ͕͋Γ·͢ɻ
TJOBUSBHFNΛͬͨ8FCΞϓϦ࡞Γԋश ҎԼͷίʔυΛॻ͍͖ͯͳ໊લͰอଘ͠·͢ɻʢྫ͑TFSWFSSCʣ SFRVJSFTJOBUSB ! HFUEP )FMMPXPSME FOE ϒϥβ͔ΒҎԼͷ63-ΞΫηε͠·͢ɻ HFNJOTUBMMTJOBUSB
HFNΛΠϯετʔϧ͠·͢ɻ ࣮ߦ͠·͢ɻӈԼͷΑ͏ͳද͕ࣔग़·͢ɻ SVCZTFSWFSSC 4JOBUSBIBTUBLFOUIFTUBHFPOGPS EFWFMPQNFOUXJUICBDLVQGSPN5IJO 5IJOXFCTFSWFS WDPEFOBNF4USBJHIU3B[PS .BYJNVNDPOOFDUJPOTTFUUP -JTUFOJOHPOMPDBMIPTU $53- $UPTUPQ IUUQMPDBMIPTU )FMMPXPSMEͱදࣔ͞ΕΕޭͰ͢ɻ ˞ίʔυΛมߋͨ͠߹Ͱ࣮ߦ͍ͯ͠ΔTIFMMΛ$USM DͰఀࢭͤ͞ɺ࠶࣮ߦ͠·͢ɻ 8JOڥͰऴྃ͠ͳ͍߹ɺ$USM 1"64&Λࢼ͍ͯͩ͘͠͞ɻʣ
8FCΞϓϦͷΈͷ ؆୯ͳઆ໌
8FC4FSWFS 8FC"QQ #SPXTFS ϦΫΤετ 63-IUUQMPDBMIPTU 8FCΞϓϦͷجຊಈ࡞ IUUQMPDBMIPTU ϒϥβʹ63-Λ ೖྗͯ͠&OUFS ϦΫΤετ͕ඈͼ·͢ɻ
8FC4FSWFS 8FC"QQ #SPXTFS ϦΫΤετ Ϩεϙϯε 63-IUUQMPDBMIPTU 8FCΞϓϦͷجຊಈ࡞ Ϩεϙϯε͕ฦͬͯ͘Δ IUUQMPDBMIPTU ϨεϙϯεΛ
ϒϥβ͕දࣔ
8FC4FSWFS 8FC"QQ #SPXTFS ϦΫΤετ Ϩεϙϯε ΠϯλʔωοτͷΞΫηε 8FC4FSWFS௨ৗωοτͷ͜͏ʹ͋Δ *OUFSOFU IUUQDPPLQBEDPN 63-
IUUQDPPLQBEDPN
8FC4FSWFS 8FC"QQ #SPXTFS ϦΫΤετ Ϩεϙϯε Ͳͷ8FC4FSWFSΞΫηε͢Δ͔ ϦΫΤετͷ63-Ͱܾ·Δ ϦΫΤετͷ63-͕IUUQDPPLQBEDPNͷ߹ɺ ΫοΫύου͞ΜͷӡӦ͢Δ8FC4FSWFSܨ͕Γ·͢ɻ 63-Πϯλʔωοτ্ͷॅॴΈ͍ͨͳͷͰ͢ɻ
*OUFSOFU 63- IUUQDPPLQBEDPN
ઌ΄Ͳ࡞ͬͨΞϓϦͷ߹ Ͳ͏ͳ͍ͬͯΔ͔ͱݴ͏ͱ
8FC4FSWFS 8FC"QQ #SPXTFS ϦΫΤετ Ϩεϙϯε 63-IUUQMPDBMIPTU 63-MPDBMIPTUࣗͷϚγϯ SFRVJSFTJOBUSB ! HFUEP
)FMMPXPSME FOE 8FC"QQ ΞϓϦ ͷ෦͕Έͳ͞Μ͕ॻ͍ͨίʔυͰ͢ɻ 8FC4FSWFSTJOBUSBͱ3VCZ͕͏·͍͜ͱͬͯ͘Ε·͢ɻ ࣗͷ1$ MPDBMIPTUࣗͷ1$Λද͢ಛผͳΞυϨεͰ͢ɻ Ͱɺ63-ͷΑΓޙΖͷͱԿͰ͠ΐ͏͔ʁ
MPDBMIPTU ಛผͳΞυϨεͰ͢ɻࣗͷϚγϯΛࢦ͠·͢ɻ IUUQMPDBMIPTU 63-ͷઆ໌ ϙʔτ൪߸Ͱ͢ɻ൪ϙʔτΛࢦ͠·͢ɻ ීஈࢦఆ͠ͳ͍͜ͱ͕ଟ͍Ͱ͢ɻࢦఆ͠ͳ͍ͱ൪ϙʔτʹͳΓ·͢ɻ ͭ·ΓɺҰൠతͳ8FCΞϓϦ൪ϙʔτͰՔಇ͍ͯ͠·͢ɻ ΞυϨε ϙʔτ
63-ͷΑΓޙΖϙʔτΛද͠·͢ɻ ϙʔτɺಉ͡ΞυϨεͰ௨৴ઌΛಛఆ͢Δ൪߸Ͱ͢ɻ ྫ͑ɺΞυϨε͕Ӻͷ໊લɺϙʔτ͕ӺͷϗʔϜ˓൪ઢɺ ͱΠϝʔδ͢Δͱ͔Γ͍͔͢͠Ε·ͤΜɻ
8FC4FSWFS 8FC"QQ #SPXTFS ϦΫΤετ Ϩεϙϯε 63-IUUQMPDBMIPTU ઌ΄Ͳ࡞ͬͨ8FCΞϓϦͷಈ࡞ུ֓ SFRVJSFTJOBUSB ! HFUEP
)FMMPXPSME FOE ࣍8FCΞϓϦͷಈ͖Λৄ͘͠ݟ͍͖ͯ·͢ MPDBMIPTU൪ϙʔτʹདྷͨ ϦΫΤετΛ8FC"QQಧ͚·͢
8FC4FSWFS 8FC"QQ #SPXTFS ϦΫΤετ Ϩεϙϯε 63-IUUQMPDBMIPTU 8FCΞϓϦͷಈ࡞ SFRVJSFTJOBUSB ! HFUEP
)FMMPXPSME FOE MPDBMIPTU൪ϙʔτʹདྷͨ ϦΫΤετΛ8FC"QQಧ͚·͢ 63-ͷΞυϨεͱϙʔτΑΓ ޙΖͷ෦Λύεͱݴ͍·͢ɻ ͜ͷ߹ɺύεʹͳΓ·͢ɻ ύε͕ͷϦΫΤετʹରͯ͠ )FMMPXPSMEͱ͍͏Ϩεϙϯε Λฦ͢8FCΞϓϦͱͯ͠ಈ࡞͠·͢ ड͚औͬͨϨεϙϯεΛදࣔ
࣍ຊޠΛදࣔͤ͞ΔԋशͰ͢ɻ
TJOBUSBHFNΛͬͨ8FCΞϓϦ࡞Γԋश KQ ҎԼͷίʔυΛॻ͍͖ͯͳ໊લͰอଘ͠·͢ɻ KQSCͱ͠·͢ DPEJOHVUG SFRVJSFTJOBUSB ! HFUKQEP ͜Μʹͪʂ FOE
ϒϥβ͔ΒҎԼͷ63-ΞΫηε͠·͢ɻ ࣮ߦ͠·͢ɻ SVCZKQSC 4JOBUSBIBTUBLFOUIFTUBHFPOGPS EFWFMPQNFOUXJUICBDLVQGSPN5IJO 5IJOXFCTFSWFS WDPEFOBNF4USBJHIU3B[PS .BYJNVNDPOOFDUJPOTTFUUP -JTUFOJOHPOMPDBMIPTU $53- $UPTUPQ IUUQMPDBMIPTUKQ ͜Μʹͪʂͱදࣔ͞ΕΕޭͰ͢ɻ લͷखॱͰ࣮ߦͨ͠8FCαʔόʔ͕ىಈ͍ͯ͠Δ߹$USM DͰఀࢭͤ͞·͢ɻ 8JOڥͰऴྃ͠ͳ͍߹ɺ$USM 1"64&Λࢼ͍ͯͩ͘͠͞ɻʣ ˞ίʔυΛॻ͖͑ͨ߹Ұఀࢭˠ࣮ߦ͢Δඞཁ͕͋Γ·͢ɻ ʢϑΝΠϧ໊ɺͲΜͳ໊લͰߏ͍·ͤΜɻ ผͷ໊લͰอଘͯ͠େৎͰ͢ɻʣ
TJOBUSBHFNΛͬͨ8FCΞϓϦ࡞Γԋश KQ ղઆ HFUͷޙΖʹॻ͘จࣈྻͷϦΫΤετ63-ύεʹԠ͠·͢ɻ DPEJOHVUG SFRVJSFTJOBUSB ! HFUKQEP ͜Μʹͪʂ FOE
͜ͷίʔυͷ߹ 63-IUUQMPDBMIPTUKQ ύεͷ෦͕KQ ʹΞΫηε͞Εͨ߹ʹ ͜Μʹͪʂ ΛϨεϙϯεͱͯ͠ฦ͠·͢ɻ ˞ͪͳΈʹɺ͜Μʹͪʂͷ෦ΛI͜ΜʹͪʂIͱॻ͘ͱ େ͖ͳจࣈͰදࣔͤ͞Δ͜ͱ͕Ͱ͖·͢ɻ͜Εɺ)5.-ͱ͍͏ݴޠͷจ๏Ͱɺ ϒϥβ)5.-Ͱॻ͔ΕͨιʔείʔυΛղऍͯ͠දࣔ͠·͢ɻ
࣍ݱࡏ࣌ࠁΛදࣔͤ͞ΔԋशͰ͢ɻ
TJOBUSBHFNΛͬͨ8FCΞϓϦ࡞Γԋश UJNF ҎԼͷίʔυΛॻ͍͖ͯͳ໊લͰอଘ͠·͢ɻ UJNFSCͱ͠·͢ɻ SFRVJSFTJOBUSB ! HFUUJNFEP 5JNFOPXUP@T FOE ϒϥβ͔ΒҎԼͷ63-ΞΫηε͠·͢ɻ
࣮ߦ͠·͢ɻ SVCZUJNFSC 4JOBUSBIBTUBLFOUIFTUBHFPOGPS EFWFMPQNFOUXJUICBDLVQGSPN5IJO 5IJOXFCTFSWFS WDPEFOBNF4USBJHIU3B[PS .BYJNVNDPOOFDUJPOTTFUUP -JTUFOJOHPOMPDBMIPTU $53- $UPTUPQ IUUQMPDBMIPTUUJNF ͷΑ͏ʹݱࡏ࣌ࠁ͕දࣔ͞ΕΕޭͰ͢ɻ લͷखॱͰ࣮ߦͨ͠8FCαʔόʔ͕ىಈ͍ͯ͠Δ߹$USM DͰఀࢭͤ͞·͢ɻ 8JOڥͰऴྃ͠ͳ͍߹ɺ$USM 1"64&Λࢼ͍ͯͩ͘͠͞ɻʣ ˞ίʔυΛॻ͖͑ͨ߹Ұఀࢭˠ࣮ߦ͢Δඞཁ͕͋Γ·͢ɻ ݱࡏ࣌ࠁΛදࣔͤ͞Δ8FCΞϓϦΛ࡞ͬͯΈ·͠ΐ͏ɻ
TJOBUSBHFNΛͬͨ8FCΞϓϦ࡞Γԋश UJNF ղઆ ͜ͷ՝͔Βɺ5JNFOPXͷΑ͏ͳ3VCZίʔυΛ࣮ߦͨ݁͠ՌΛ ϒϥβͰදࣔ͢Δํ๏Λֶ·͢ɻ SFRVJSFTJOBUSB ! HFUUJNFEP 5JNFOPXUP@T FOE
5JNFOPXݱࡏ࣌ࠁΛ5JNFDMBTTΦϒ δΣΫτͰฦ͠·͢ɻ UP@TϝιουΛ͏ͱɺ4USJOHDMBTTΦ ϒδΣΫτม͞Ε·͢ɻ 4USJOHΦϒδΣΫτͰ͋ΕϒϥβදࣔͰ͖ΔͷͰɺ UP@TϝιουͳͲͰม͢Δ͜ͱͰॲཧ݁ՌΛදࣔ͢Δ͜ͱ͕Ͱ͖·͢ɻ ·ͨɺ5JNFOPXϦΫΤετ͝ͱʹ࣮ߦ͞ΕΔͷͰɺ Ϧϩʔυ͢Δ͝ͱʹͦͷ࣌ͷݱࡏ࣌ࠁ͕දࣔ͞Ε·͢ɻ
࣍ΞΫηεͨ͠ύεΛ දࣔͤ͞ΔԋशͰ͢ɻ
TJOBUSBHFNΛͬͨ8FCΞϓϦ࡞Γԋश ύε ҎԼͷίʔυΛॻ͍͖ͯͳ໊લͰอଘ͠·͢ɻ QBUISCͱ͠·͢ɻ SFRVJSFTJOBUSB ! HFUXPSEEP QBSBNT<XPSE> FOE ϒϥβ͔ΒҎԼͷ63-ΞΫηε͠·͢ɻ
࣮ߦ͠·͢ɻ SVCZQBUISC 4JOBUSBIBTUBLFOUIFTUBHFPOGPS EFWFMPQNFOUXJUICBDLVQGSPN5IJO 5IJOXFCTFSWFS WDPEFOBNF4USBJHIU3B[PS .BYJNVNDPOOFDUJPOTTFUUP -JTUFOJOHPOMPDBMIPTU $53- $UPTUPQ IUUQMPDBMIPTUIJ લͷखॱͰ࣮ߦͨ͠8FCαʔόʔ͕ىಈ͍ͯ͠Δ߹$USM DͰఀࢭͤ͞·͢ɻ 8JOڥͰऴྃ͠ͳ͍߹ɺ$USM 1"64&Λࢼ͍ͯͩ͘͠͞ɻʣ ˞ίʔυΛॻ͖͑ͨ߹Ұఀࢭˠ࣮ߦ͢Δඞཁ͕͋Γ·͢ɻ IJͱ͍͏ύεʹΞΫηε͞ΕΕIJ͕ɺ CPPLͱ͍͏ύεͳΒCPPL͕දࣔ͞Ε·͢ɻ ΞΫηεͨ͠ύεΛදࣔͤ͞Δ8FCΞϓϦΛ࡞ͬͯΈ·͠ΐ͏ɻ
TJOBUSBHFNΛͬͨ8FCΞϓϦ࡞Γԋश ύε ղઆ HFUޙͷจࣈྻͷதʹXPSEͷΑ͏ʹγϯϘϧΛॻ͘ͱɺ ϦΫΤετ͞ΕͨύεΛQBSBNT<XPSE>Ͱड͚औΕ·͢ɻ SFRVJSFTJOBUSB ! HFUXPSEEP QBSBNT<XPSE> FOE
IUUQMPDBMIPTUIJ ͜ΕΛԠ༻͢Δͱɺྫ݂͑ӷܕ͍ͳͲɺ ΞΫηε͞Εͨ63-ʹԠͯ͡දࣔΛม͑ΔΞϓϦΛ࡞Ε·͢ɻ ͕࣌ؒ͋ΔਓνϟϨϯδͯ͠Έ͍ͯͩ͘͞ɻ ্هͷ63-ͰΞΫηεͨ͠߹ɺ QBSBNT<XPSE>IJΛฦ͠·͢ɻ ˞͜͜ͰͷXPSEҙͷ໊લʹͰ͖·͢ɻ HFUGPPEPʙͱॻ͍ͨ߹ QBSBNT<GPP>ͰύεΛऔΕ·͢ɻ
࣍ (FN ͬͱΓ͍ͨਓ4JOBUSBαΠτʹαϯϓϧ͕ͨ͘͞Μ͋Γ·͢ɻ IUUQXXXTJOBUSBSCDPNJOUSPIUNM ຊޠͷهࣄ͋ΔͷͰ୳ͯ͠Έ͍ͯͩ͘͞ɻͨͱ͑͜͜ɻ 4JOBUSBʹΑΔ8FCΞϓϦέʔγϣϯ։ൃೖ IUUQCJUMZTJOBUSB@JOUSP@KQ
None
ࢀߟࢿྉ
BCD ࣮ߦ݁Ռ QVUTBCD ॻࣜ 3VCZίʔυ ࣮ߦ݁Ռ TIFMMίϚϯυ MT Q
จதͰͰॻ͖·͢