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
ruby10
Search
MATSUOKA Kohei
June 11, 2014
Technology
0
320
ruby10
MATSUOKA Kohei
June 11, 2014
Tweet
Share
More Decks by MATSUOKA Kohei
See All by MATSUOKA Kohei
ゼロからわかるRuby超入門の歩き方
machu
2
4.4k
最近のtDiary
machu
1
1.7k
ruby15
machu
0
490
ruby13
machu
0
430
ruby12
machu
1
300
ruby11
machu
0
310
ruby09
machu
0
270
ruby08
machu
0
230
ruby07
machu
0
400
Other Decks in Technology
See All in Technology
興味の胞子を育て 業務と技術に広がる”きのこ力”
fumiyasac0921
0
570
生成AIによる情報システムへのインパクト
taka_aki
1
240
20250728 MCP, A2A and Multi-Agents in the future
yoshidashingo
1
210
少人数でも回る! DevinとPlaybookで支える運用改善
ishikawa_pro
5
2.2k
相互運用可能な学修歴クレデンシャルに向けた標準技術と国際動向
fujie
0
200
Claude CodeでKiroの仕様駆動開発を実現させるには...
gotalab555
3
850
専門分化が進む分業下でもユーザーが本当に欲しかったものを追求するプロダクトマネジメント/Focus on real user needs despite deep specialization and division of labor
moriyuya
0
700
Google Cloud で学ぶデータエンジニアリング入門 2025年版 #GoogleCloudNext / 20250805
kazaneya
PRO
10
2.5k
【CEDEC2025】ブランド力アップのためのコンテンツマーケティング~ゲーム会社における情報資産の活かし方~
cygames
PRO
0
230
Google Agentspaceを実際に導入した効果と今後の展望
mixi_engineers
PRO
2
280
Microsoft Learn MCP/Fabric データエージェント/Fabric MCP/Copilot Studio-簡単・便利なAIエージェント作ってみた -"Building Simple and Powerful AI Agents with Microsoft Learn MCP, Fabric Data Agent, Fabric MCP, and Copilot Studio"-
reireireijinjin6
1
230
Foundation Model × VisionKit で実現するローカル OCR
sansantech
PRO
0
260
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
Navigating Team Friction
lara
188
15k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
A Tale of Four Properties
chriscoyier
160
23k
Why Our Code Smells
bkeepers
PRO
337
57k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Being A Developer After 40
akosma
90
590k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.2k
RailsConf 2023
tenderlove
30
1.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
110
19k
Transcript
3VCZߨٛୈճ ͡Ίͯͷ8FCΞϓϦ χϑςΟגࣜձࣾدෟߨٛ ࣾձՊֶʹ͓͚Δใٕज़ͱίϯςϯπ࡞***
দԬߒฏ ߨࢣ /55ίϜΣΞ᷂ UXJUUFS!NBDIV IUUQTHJUIVCDPNNBDIV IUUQXXXNBDIVKQEJBSZ
ຊͷߨٛ w ͜Ε·ͰֶΜͩϓϩάϥϛϯάͷࣝΛ׆͔͠ ͯɺ͜Ε͔ΒճͰ8FCΞϓϦΛ࡞Γ·͢ w 8FCΞϓϦಛ༗ͷઃఆ͋Γ·͕͢ɺϓϩάϥ ϛϯάͷجຊมΘΓ·ͤΜ w ݅ذɺ܁Γฦ͠ɺϋογϡɺྻʜ
8FCΞϓϦͱ
8FCͱ 8FCςΩετը૾Λެ։͢ΔΈ த)5.-ͱ͍͏ςΩετ
8FCΞϓϦͱ 8FCͷΈͷ্Ͱಈ͔͢ΞϓϦ
"NB[PO
$PPL1BE
8FCϑϨʔϜϫʔΫ 8FCͷੈք )551 )5.- 3VCZͷੈք 8FCΞϓϦ 8FCͷੈք )551 )5.-
3VCZͷੈք 8FCΞϓϦ 8FCϑϨʔϜϫʔΫ θϩ͔Β8FCΞϓϦΛ ࡞Δͷେม )551ͷղੳίʔυ ϑϨʔϜϫʔΫ͕ 8FCͷੈքͱͷڮ͠
3VCZͷ8FCϑϨʔϜϫʔΫ 3VCZPO3BJMT ɾશ෦ೖΓɺϓϩ༷ ɾ͍͜ͳ͢·Ͱେม 4JOBUSB ɾඞཁ࠷খݶɺγϯϓϧ ɾͪΐͬͱ͏ʹ࠷ద
͜ͷߨٛͰ 4JOBUSBΛͬͯ 8FCΞϓϦΛ࡞͠·͢ ʻݶͷߨٛΛडߨ͞Ε͍ͯΔํʼ ݶͰ3BJMTΛ͍ͬͯ·͕͢ɺ4JOBUSBΛ͏͜ͱͰ 8FCΞϓϦͷجຊΛཧղ͢Δʹཱͪ·͢
(FN 4JOBUSBαΠτʹ͔Γ͍͢νϡʔτϦΞϧ͕͋Γ·͢ɻ IUUQXXXTJOBUSBSCDPNJOUSPIUNM
4JOBUSBͷ Πϯετʔϧ
3VCZຊମ ίΞ 3VCZͷศརͳಓ۩ͨͪ ΈࠐΈϥΠϒϥϦ 4USJOH "SSBZ )BTI ඪ४ఴϥΠϒϥϦ
$(* QQ ͦͷଞͷϥΠϒϥϦ 3BJMT 4JOBUSB ɾ3VCZຊମʹΈࠐΈ ɾSFRVJSFͳ͠Ͱ͑Δ ɾ3VCZͱҰॹʹ ɾSFRVJSFͰ͑Δ ɾ3VCZͱผʹ͞ΕΔ ɾΠϯετʔϧͯ͠͏
3VCZ(FNTPSH ϥΠϒϥϦΛཧɾͯ͘͠ΕΔαΠτɻ ެ։͢ΔϥΠϒϥϦΛHFN ๅੴ ͱݺͿɻ "QQ4UPSF1MBZ4UPSFͷ3VCZ൛ɻ ͨͩ͠৹ࠪͳ͍ 1FSMͷ$1"/1)1ͷ1&"3ͳͲɺ ଞݴޠʹࣅͨΈ͕͋Γ·͢
3VCZ(FNTͰ ެ։͞Ε͍ͯΔϥΠϒϥϦ w ը૾ͷϦαΠζɺ&YDFMϑΝΠϧͷૢ࡞ɺ 5XJUUFSΫϥΠΞϯτͳͲͳͲ w ສछྨͷϥΠϒϥϦ͕ొ͞Ε͍ͯ·͢ w 3VCZ(FNTͷ͓͔͛ͰɺϥΠϒϥϦΛ؆୯ʹ ΠϯετʔϧͰ͖·͢
IUUQTXXXqJDLSDPNQIPUPTTIFFQJFT
4JOBUSBͷ Πϯετʔϧ
4JOBUSBHFNܗࣜͷϥΠ ϒϥϦͰ͞Ε͍ͯ·͢ɻ $4"ʹ4JOBUSBΛΠϯε τʔϧͯ͠Έ·͠ΐ͏ɻ
4JOBUSBͷΠϯετʔϧ $4"ͷը໘Ͱ࡞ۀ͠·͢ɻ IPNFQSPKFDUϑΥϧμʹ͋Δ(FNpMFͱ͍͏໊ લͷϑΝΠϧΛ։͖·͢ɻ
4JOBUSBͷΠϯετʔϧ (FNpMFʹ͍͍ͨϥΠϒϥϦͷ໊લΛॻ͖·͢ɻ 4JOBUSBΛ͍͍ͨͷͰɺHFNTJOBUSBΛهɻ TPVSDFIUUQTSVCZHFNTPSH HFNVOJDPSO HFNTJOBUSB (FNpMF 4JOBUSBΛ͍͍ͨͷͰՃ
4JOBUSBͷΠϯετʔϧ όϯυϧΠϯετʔϧΛ։͖ɺ࣮ߦΛબ͠·͢ ! ! ը໘্෦ʹʮCVOEMFJOTUBMM͕ྃ͠·ͨ͠ʯ ͱදࣔ͞ΕΕΠϯετʔϧྃͰ͢ɻ
ิCVOEMFJOTUBMM w (FNpMFʹॻ͍ͯ͋ΔϥΠϒϥϦ໊ HFN Λ ಡΈࠐΜͰɺ3VCZ(FNTPSH͔ΒϥΠϒϥϦ Λμϯϩʔυ͢ΔΈͰ͢ w $-*͔Β࣮ߦͰ͖·͢
DEQSPKFDU CVOEMFJOTUBMM CVOEMF HFNTJOBUSB TJOBUSB (FNpMF
ิCVOEMFJOTUBMM w μϯϩʔυͨ͠ϥΠϒϥϦQSPKFDU WFOEPSCVOEMFϑΥϧμʹอଘ͞Ε·͢
4JOBUSBͰ࡞Δ ͡Ίͯͷ8FCΞϓϦ
$4" w /JGUZͷ$4"ʹɺ8FCΞϓϦΛ؆୯ʹಈ͔ ͨ͢ΊͷΈ͕༻ҙ͞Ε͍ͯ·͢ 04 -JOVY $4" /JGUZͷαʔό 8FCαʔό
/HJOY 3VCZ
4JOBUSBΞϓϦͷߏ 6OJDPSO 3VCZαʔό DPOpHSV )FMMP 8PSMEΛදࣔ 6OJDPSO 3VCZαʔό DPOpHSV
4JOBUSBΛ࣮ߦ͢Δઃఆ 4JOBUSB BQQSC ͜͜ʹ8FCΞϓϦΛॻ͘ มߋલ มߋޙ 4JOBUSB͕ಈ͘Α͏ʹ ϑΝΠϧΛॻ͖͑·͢ˠᶃᶄ (FNpMF ͏ϥΠϒϥϦΛࢦఆ (FNpMF ͏ϥΠϒϥϦΛࢦఆ มߋࡁΈ
ᶃ8FCΞϓϦͷ࡞ QSPKFDUϑΥϧμʹBQQSCϑΝΠϧΛ࡞͠· ͢ɻ͜ͷϑΝΠϧ͕8FCΞϓϦຊମʹͳΓ·͢ɻ SFRVJSFTJOBUSB ! HFUEP )FMMPTJOBUSB FOE BQQSC
4JOBUSBϥΠϒϥϦΛಡΈࠐΉ τοϓϖʔδʹΞΫηε ͞ΕͨΒ HFU ɺ)FMMP TJOBUSBΛදࣔ͢Δ
ᶄDPOpHSVͷॻ͖͑ DPOpHSV8FCΞϓϦͷجຊઃఆΛॻ͘ϑΝΠϧ Ͱ͢ɻ4JOBUSBΛ࣮ߦ͢ΔΑ͏ʹॻ͖͑·͢ɻ DMBTT)FMMP EFGDBMM FOW < \$POUFOU5ZQF
UFYUIUNM^ <)FMMP 8PSME>> FOE FOE ! NBQEP SVO)FMMPOFX FOE SFRVJSFBQQ SVO4JOBUSB"QQMJDBUJPO 8FCΞϓϦ BQQSC ΛಡΈࠐΉ 4JOBUSBΛ࣮ߦ͢Δ DPOpHSV มߋલ DPOpHSV มߋޙ
VOJDPSOͷ࠶ىಈ w σʔϞϯཧΛ։͖ɺVOJDPSOϓϩηεΛ࠶ىಈ ʢϦελʔτʣ͠·͢ɻ w ࠶ىಈ͢Δ͜ͱͰɺमਖ਼ͨ͠BQQSCDPOpHSV ͷ༰͕ಡΈࠐ·Ε·͢ɻ
8FCΞϓϦʹΞΫηε w $4"ࠨ্ͷϦϯΫΛΫϦοΫ͢Δͱɺ࡞͠ ͨ8FCΞϓϦʹΞΫηεͰ͖·͢ɻ BQQSCʹॻ͍ͨ༰͕දࣔ͞ΕΔ
8FCΞϓϦͷղઆ
8FCαʔό 8FCͷΈ ϒϥβʹΞυϨεΛೖྗ 8FCϒϥβ 04 8JO .BD σʔλ͍ͩ͘͞ 04
-JOVYͳͲ XXXZBIPPDPKQ ϦΫΤετ͕ ඈͼ·͢
8FCαʔό 8FCͷΈ 8FCϒϥβ 04 8JO .BD 04 -JOVYͳͲ XXXZBIPPDPKQ
Ϩεϙϯε͕ ฦ͖ͬͯ·͢ σʔλ͍ͩ͘͞ ςΩετ )5.- ը૾ +1&( Ͳ͏ͧ ϨεϙϯεΛ ը໘ʹදࣔ͠·͢
8FCͷΈ w )551ͱ͍͏ܾ·Γ͝ͱΛͬͯɺαʔό্ͷ ը૾ςΩετΛऔಘ͠·͢ 8FCϒϥβ 04 8JO .BD 04
-JOVYͳͲ 8FCαʔό ͜ͷσʔλ͍ͩ͘͞ Ͳ͏ͧ )551 ʢͱ͍͏ܾ·Γ͝ͱʣ ςΩετ )5.- ը૾ +1&( ςΩετ )5.- ը૾ +1&(
8FCϒϥβ XXX ZBIPPDPKQ 8FCαʔό IUUQ͆͆͆ZBIPPDPKQ (&5)551 )PTUXXXZBIPPDPKQ $POOFDUJPOLFFQBMJWF )5510,
4FSWFSOHJOY %BUF4VO +VO(.5 IUUQEBJMZOFXTZBIPPDPKQ GDEPNFTUJDXFBUIFS EBJMZOFXT ZBIPPDPKQ (&5GDEPNFTUJDXFBUIFS)551 )PTUXXXZBIPPDPKQ $POOFDUJPOLFFQBMJWF )5510, 4FSWFSOHJOY %BUF4VO +VO(.5 τοϓϖʔδ͍ͩ͘͞ ఱؾͷϖʔδ͍ͩ͘͞ Ͳ͏ͧ Ͳ͏ͧ :BIPP+"1"/ͷྫ ϦϯΫΛΫϦοΫ
63-8FC্ͷॅॴ w 63-ϦιʔεʢςΩετը૾ʣͷॴΛද͢ IUUQEBJMZOFXTZBIPPDPKQGDEPNFTUJDXFBUIFS εΩʔϜ ϗετ ύε ௨৴ํࣜɻ҉߸Խ ͷ࣌IUUQTΛ
͏ɻଞʹGUQͳ Ͳ͕͋Δɻ ଓ͢Δαʔόͷ໊લ αʔό্ͷϦιʔεʢը ૾ςΩετʣͷॴ
࠷ۙͷϒϥβ63-Λলུ IUUQΛলུ 1$൛$ISPNF αʔό໊ͷΈදࣔ J04൛4BGBSJ
8FCαʔό ͖ͬ͞࡞ͬͨ8FCΞϓϦͰ HFUEP )FMMPTJOBUSB FOE ! ! ! !
YYYDTBOFU YYYDTBOFU )FMMPTJOBUSB 8FC ϒϥβ )FMMPTJOBUSB 6OJDPSO 4JOBUSB ύε͕ͷϦΫΤετʹରͯ͠ )FMMPTJOBUSBͱ͍͏Ϩεϙϯε Λฦ͢8FCΞϓϦͱͯ͠ಈ࡞͠·͢
ԋश
8FCαʔό 63-Λ૿ͯ͠ΈΑ͏ HFUEP )FMMPTJOBUSB FOE ! HFUCZFEP #ZFTJOBUSB FOE
YYYDTBOFU YYYDTBOFU )FMMPTJOBUSB 8FC ϒϥβ YYYDTBOFUCZF #ZFTJOBUSB )FMMPTJOBUSB #ZFTJOBUSB 6OJDPSO 4JOBUSB
ԋश w ΞΫηε͢Δͱ#ZFTJOBUSBͱදࣔ͢Δ 63-YYYDTBOFUCZFΛՃ͠·͢ BQQSCΛฤूͯ͠HFUCZFEPΛ Ճʢલϖʔδࢀরʣ VOJDPSOαʔόΛ࠶ىಈˡΕͣʹʂ w
8FCϒϥβͰՃͨ͠63-ʹΞΫηε
ԋश w ΞΫηε͢Δͱݱࡏ࣌ࠁΛදࣔ͢Δ63- YYYDTBOFUOPXΛՃ͠·͢ w ݱࡏ࣌ࠁ5JNFOPXͰऔಘͰ͖·͢ w ͍ํ3VCZϚχϡΞϧͳͲͰௐͯΈ·͠ΐ͏ w จࣈྻͷมΛΕͣʹʂ
ݱࡏ࣌ࠁͷऔಘ OPX5JNFOPX
·ͱΊ
8FCΞϓϦͱ 8FCͷΈͷ্Ͱಈ͔͢ΞϓϦ
8FCϑϨʔϜϫʔΫ 8FCͷੈք )551 )5.- 3VCZͷੈք 8FCΞϓϦ 8FCͷੈք )551 )5.-
3VCZͷੈք 8FCΞϓϦ 8FCϑϨʔϜϫʔΫ θϩ͔Β8FCΞϓϦΛ ࡞Δͷେม )551ͷղੳίʔυ ϑϨʔϜϫʔΫ͕ 8FCͷੈքͱͷڮ͠
3VCZͷ8FCϑϨʔϜϫʔΫ 3VCZPO3BJMT ɾશ෦ೖΓɺϓϩ༷ ɾ͍͜ͳ͢·Ͱେม 4JOBUSB ɾඞཁ࠷খݶɺγϯϓϧ ɾͪΐͬͱ͏ʹ࠷ద
(FN 4JOBUSBαΠτʹ͔Γ͍͢νϡʔτϦΞϧ͕͋Γ·͢ɻ IUUQXXXTJOBUSBSCDPNJOUSPIUNM
3VCZຊମ ίΞ 3VCZͷศརͳಓ۩ͨͪ ΈࠐΈϥΠϒϥϦ 4USJOH "SSBZ )BTI ඪ४ఴϥΠϒϥϦ
$(* QQ ͦͷଞͷϥΠϒϥϦ 3BJMT 4JOBUSB ɾ3VCZຊମʹΈࠐΈ ɾSFRVJSFͳ͠Ͱ͑Δ ɾ3VCZͱҰॹʹ ɾSFRVJSFͰ͑Δ ɾ3VCZͱผʹ͞ΕΔ ɾΠϯετʔϧͯ͠͏
(FNpMF (FNpMFʹ͍͍ͨϥΠϒϥϦͷ໊લΛॻ͖·͢ɻ 4JOBUSBΛ͍͍ͨͷͰɺHFNTJOBUSBΛهɻ TPVSDFIUUQTSVCZHFNTPSH HFNVOJDPSO HFNTJOBUSB (FNpMF 4JOBUSBΛ͍͍ͨͷͰՃ
ิCVOEMFJOTUBMM w (FNpMFʹॻ͍ͯ͋ΔϥΠϒϥϦ໊ HFN Λ ಡΈࠐΜͰɺ3VCZ(FNTPSH͔ΒϥΠϒϥϦ Λμϯϩʔυ͢ΔΈͰ͢ w $-*͔Β࣮ߦͰ͖·͢
DEQSPKFDU CVOEMFJOTUBMM CVOEMF HFNTJOBUSB TJOBUSB (FNpMF
4JOBUSBΞϓϦͷߏ 6OJDPSO 3VCZαʔό DPOpHSV )FMMP 8PSMEΛදࣔ 6OJDPSO 3VCZαʔό DPOpHSV
4JOBUSBΛ࣮ߦ͢Δઃఆ 4JOBUSB BQQSC ͜͜ʹ8FCΞϓϦΛॻ͘ มߋલ มߋޙ 4JOBUSB͕ಈ͘Α͏ʹ ϑΝΠϧΛॻ͖͑·͢ˠᶃᶄ (FNpMF ͏ϥΠϒϥϦΛࢦఆ (FNpMF ͏ϥΠϒϥϦΛࢦఆ มߋࡁΈ
8FCαʔό ͖ͬ͞࡞ͬͨ8FCΞϓϦͰ HFUEP )FMMPTJOBUSB FOE ! ! ! !
YYYDTBOFU YYYDTBOFU )FMMPTJOBUSB 8FC ϒϥβ )FMMPTJOBUSB 6OJDPSO 4JOBUSB
8FCͷΈ w )551ͱ͍͏ܾ·Γ͝ͱΛͬͯɺαʔό্ͷ ը૾ςΩετΛऔಘ͠·͢ 8FCϒϥβ 04 8JO .BD 04
-JOVYͳͲ 8FCαʔό ͜ͷσʔλ͍ͩ͘͞ Ͳ͏ͧ )551 ʢͱ͍͏ܾ·Γ͝ͱʣ ςΩετ )5.- ը૾ +1&( ςΩετ )5.- ը૾ +1&(
63-8FC্ͷॅॴ w 63-ϦιʔεʢςΩετը૾ʣͷॴΛද͢ IUUQEBJMZOFXTZBIPPDPKQGDEPNFTUJDXFBUIFS εΩʔϜ ϗετ ύε ௨৴ํࣜɻ҉߸Խ ͷ࣌IUUQTΛ
͏ɻଞʹGUQͳ Ͳ͕͋Δɻ ଓ͢Δαʔόͷ໊લ αʔό্ͷϦιʔεʢը ૾ςΩετʣͷॴ
ࢀߟࢿྉ
BCD ࣮ߦ݁Ռ QVUTBCD ॻࣜ 3VCZίʔυ ࣮ߦ݁Ռ TIFMMίϚϯυ MT
ࡶஊɾ࣭༻GBDFCPPLάϧʔϓ IUUQTXXXGBDFCPPLDPNHSPVQTIJUPUTVCBTIJSC ɾՃೖඇՃೖࣗ༝Ͱ͢ ɾՃೖඇՃೖʹؔ͠·ͤΜ ɾࢀՃऀҰཡެ։͞Ε·͢ ɾࢀՃऀελοϑͱҰࡢɺࡢɺࠓͷडߨऀͰ͢ ɾॻ͖ࠐΈࢀՃऀͷΈݟ͑·͢ ɾرऀΞΫηεͯ͠ࢀՃਃ͍ͯͩ͘͠͞ ɾࡶஊɺ࣭ɺٞͳͲԿͰؾʹͤͣͲ͏ͧʙ ɾ࣭ʹ͑ΒΕΔਓ͍͑ͯ͋͛ͯͩ͘͞
ɾߨࢣਞ͓͑͠·͢ ɾೖͬͨΒܰࣗ͘ݾհ͓Ͷ͕͍͠·͢