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
スマホ時代のBotアプリのつくり方
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Yusuke Wada
July 03, 2016
Technology
7
27k
スマホ時代のBotアプリのつくり方
YAPC::Asia Hachioji 2016 mid in Shinagawa
2016-07-03
Yusuke Wada a.k.a. yusukebe
Yusuke Wada
July 03, 2016
Tweet
Share
More Decks by Yusuke Wada
See All by Yusuke Wada
へんな働き方
yusukebe
4
2.4k
Cap'n Webについて
yusukebe
0
230
OSS開発者の憂鬱
yusukebe
16
18k
r2-image-worker
yusukebe
1
240
Introduce Hono CLI
yusukebe
6
3.9k
私はどうやって技術力を上げたのか
yusukebe
47
21k
Reactをクライアントで使わない
yusukebe
8
7k
AI時代のUIはどこへ行く?
yusukebe
23
12k
速いWebフレームワークを作る
yusukebe
5
2k
Other Decks in Technology
See All in Technology
Claude Code 2026年 最新アップデート
oikon48
13
11k
最強のAIエージェントを諦めたら品質が上がった話 / how quality improved after giving up on the strongest AI agent
kt2mikan
0
190
実践 Datadog MCP Server
nulabinc
PRO
2
240
Google系サービスで文字起こしから勝手にカレンダーを埋めるエージェントを作った話
risatube
0
190
It’s “Time” to use Temporal
sajikix
3
220
SRE NEXT 2026 CfP レビュアーが語る聞きたくなるプロポーザルとは?
yutakawasaki0911
1
430
非情報系研究者へ送る Transformer入門
rishiyama
13
8.5k
猫でもわかるKiro CLI(AI 駆動開発への道編)
kentapapa
0
260
コンテキスト・ハーネスエンジニアリングの現在
hirosatogamo
PRO
3
460
プラットフォームエンジニアリングはAI時代の開発者をどう救うのか
jacopen
7
3.8k
アーキテクチャモダナイゼーションを実現する組織
satohjohn
1
1.1k
Cortex Code CLI と一緒に進めるAgentic Data Engineering
__allllllllez__
0
420
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
97
6.6k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
450
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
RailsConf 2023
tenderlove
30
1.4k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
640
エンジニアに許された特別な時間の終わり
watany
106
240k
The Language of Interfaces
destraynor
162
26k
Code Reviewing Like a Champion
maltzj
528
40k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
160
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
480
Skip the Path - Find Your Career Trail
mkilby
1
84
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
Transcript
εϚϗ࣌ͷ #PUΞϓϦͷͭ͘Γํ :"1$"TJB)BDIJPKJNJEJO4IJOBHBXB :VTVLF8BEBBLBZVTVLFCF
ࣗݾհ w ా༟հBLBZVTVLFCF w ϫσΟοτදऔక w ΦϞϩΩ$50 w ٕज़ސY w
DPGPVOEFSPGCPLFUF w XBEBGNEBOEZGN w 1FSM.POHFS
ͦ͏͍͑
ԭೄཱྀߦߦ͖ͬͯ·ͨ͠
ཱྀߦͱ͍͑
τϥϕϧϒοΫ ג ͷٕज़ސͬͯ·͢
None
ࡢͷϠύνʔͰ τϥϕϧϒοΫ͔ࣾΒ ໊͕ ֤ࣗॳ ൃදʂ ✕
ΊͰ͍ͨʂ ˎࣸਅάϧΫϯͰ͢
Ϡύνʔʹײँ
ͱ͜ΖͰ
None
ΈΜͳେ͖ʂ ͩΑͶʁ
ͦΜͳͭͷϓϥοτϑΥʔϜ ͔Β݄ʹΞφϯε͕
None
εϚϗϝοηϯδϟʔ w -*/&'BDFCPPL.FTTFOHFS w εϚϗ࣌ͷϝοηʔδΞϓϦ w ରPSάϧʔϓ w ͜ͷͭσϑΝΫτε λϯμʔυʹͳ͍ͬͯΔ
w ͦ͜ʹ#PUͱ͍͏֓೦ͱ࣮͕ ೖͬͯ͘Δ
ຊͷςʔϚ w -*/&'BDFCPPL.FTTFOHFS#PUͷͭ͘Γํ w ओʹ-*/&ʮ#05"1*5SJBM"DDPVOUʯΛར༻ w #0,&5Λྫʹڍ͛·͢ w ҙ֎ͱۤ࿑͢Δ࣮ͷ͍͔ͭ͘ͷίτ w
ίϚϯυࢦͱͦͷ࣮ w ཧతͳΞʔΩςΫνϟͱ࣮ྫ
ͦͦ #PUͬͯͳΜͧ
άάΔ
ఆظతʹπΠʔτ͢Δ πΠολʔ ΞΧϯτ
/0/0 ͦΕ͚ͩ͡Όͳ͍Α
͔͋ͨਓؒͷΑ͏ʹ࡞ۀΛ ߦ͏ίϯϐϡʔλϓϩάϥϜ ͷ૯শ
30#05
ྫ͑
ݕࡧΤϯδϯͷ#PU ͱ͔͋ΔΑͶ
-*/"1*ͷ߹
ެࣜ"1*υΩϡϝϯτΑΓ༁Ҿ༻ w #05"1*Λ͏ͱݸਓͷϢʔβʔͱΓͱΓ͕ ग़དྷΔ w #05ΞΧϯτΛ༑ୡͱͯ͠Ճͯ͠Β͍ϝο ηʔδΛड͚औΔͱࣗಈతʹΧελϚΠζͨ͠Ϩε ϙϯεΛฦ͢ͳͲ͕ߟ͑ΒΕΔ w ͲΜͳλΠϛϯάͰϢʔβʔʹରͯࣗ͠ͷ#05
αʔόʔ͔ΒϝοηʔδΛૹΕΔ
ެࣜ"1*υΩϡϝϯτΑΓਤΛഈआ
ͭͬͯ͘Έͨ
None
ݱࡏ ༑ୡ
ײ
͔ͭͬͯ͘Δ#05"1*Ͱग़དྷΔ͜ͱ w جຊ#05ରϢʔβʔͷΠϯλϥΫγϣϯ w NJEݸผ#05ΞϓϦʹͱͬͯͷϢʔβʔࣝผࢠ w NJEΛอ࣋ͯ͠Ұ੪ૹ৴ͳͲग़དྷΔ͕ϑΟοτ͠ͳ͍ w ςΩετͳͲϝοηʔδΛड͚औͬͯԿ͔Λฦ͢ w
Ϧονϝοηʔδ ޙड़ Λར༻ͯ͠ϘλϯΛ࣮ݱ
#0,&5ͷػೳ
ςΩετΛૹΔ Ϙέݕࡧ
ελϯϓΛૹΔ ࡢͷਓؾϘέ
ʮͬͱΈΔʯΛλοϓ .03&ίϚϯυൃಈ ଓ͖ͷϘέ͕ݟΕΔ
ࠨԼͷϘλϯΛλοϓ 5*.&-&"1ίϚϯυൃಈ աڈͷͷਓؾϘέ͕ݟΕΔ
Χʔυͷ্Λλοϓ 8FC7JFXͰ։͘
ӈԼͷϘλϯΛλοϓ (";0ίϚϯυൃಈ ͦͷϘέͷը૾Λऔಘग़དྷΔ
ػೳ͓͞Β͍
#0,&5 w ςΩετૹΔϘέݕࡧ w ελϯϓૹΔࡢͷਓؾϘέ w .03&ίϚϯυͬͱΈΔ w 5*.&-&"1\::::..%%^աڈͷਓؾϘέ w
(";0\CPLF@JE^Ϙέը૾Λऔಘ w Χʔυͷ্Λλοϓ8FC7JFXͰදࣔ
ϨεϙϯεΦϒδΣΫτ
Ϧονϝοηʔδ ςΩετ ϝοηʔδ
ը૾ ϝοηʔδ
Ϧονϝοηʔδ w શͯը૾ w ࠲ඪͰۣܗΛࢦఆͯ͠Ξ ΫγϣϯΛܾΊΕΔ w ࢦఆͨ͠63-Λ։͘ w ࢦఆͨ͠จࣈྻΛൃݴ͞
ͤΔίϚϯυ w -*/&/&84ͷΞΧϯ τͳͲ͜ΕΛར༻ͯ͠ ΔͬΆ͍
λοϓͨ͠Β ࢦఆͨ͠จࣈྻΛൃݴͤ͞Δʁ
ࡌͬͯͳ͍
࣮
IUUQTHJUIVCDPNMJOFMJOFCPU TELQFSMCMPCNBTUFSMJC-*/&#PU "1*#VJMEFS3JDI.FTTBHFQN- 4%,ͷιʔεʹͷΈࡌͬͯΔ
ͬͯ͜ͱͰ࣮ͷ
جຊతͳΞʔΩςΫνϟ ࣗલ #05ΞϓϦ -*/& ϓϥοτϑΥʔϜ Ϣʔβʔ ϝοηʔδ DBMMCBDL 1045IUUQTFYBNQMFDPNDBMMCBDL NFTTBHF
1045IUUQTUSJBMCPUBQJMJOFNFWFWFOUT ϝοηʔδ SFTQPOTF
ࣗલ#05ΞϓϦ w DBMMCBDLΛड͚औΓ w ϝοηʔδʹؚ·ΕΔNJEΛऔಘ w NJEΊ͕͚ͯϨεϙϯεΛฦ͢ w த+40/ άϩʔόϧυϝΠϯ
)551αʔ ό 44- +40/ύʔα )551Ϋ ϥΠΞϯτ͕͋ΕجຊσΩΔʂ ˎॺ໊ͷݕূআ͘
ͨͩ͠ ಠࣗϑϨʔϜϫʔΫ࣭͕͍͜ͱ͕ଟ͍ ॺ໊ͷݕূ͍ͨ͠ -*/&͔ΒૹΒΕ͖ͯͯΔ͔ Ϧονϝοηʔδͱ͔ΊΜͲ͍͘͞
-*/6%,
-*/&#PU"1* w IUUQTNFUBDQBOPSHQPE-*/&#PU"1* w $1"/J[F͞Ε͍ͯΔ w Ϧονϝοηʔδͷ࡞ʹͪΖΜରԠ w ॺ໊ͷݕূҰߦͰॻ͚Δ w
ςετ͕ेʹଗ͍ͬͯΔͷͰ࣭͕ߴ͍ w ྫͷυΩϡϝϯτʹࡌͬͯͳ͍"1*͕࣮ w FHσΟϨΫτϦʹϑϨʔϜϫʔΫ͕ܝࡌ
VOMFTT SFRNFUIPEFR1045SFRQBUIFRDBMMCBDL \ SFUVSO< <> </PU'PVOE>> ^ NZJT@WBMJECPUWBMJEBUF@TJHOBUVSF SFRDPOUFOU SFRIFBEFS
9 -*/&$IBOOFM4JHOBUVSF VOMFTT JT@WBMJE \ SFUVSO< <> <GBJMFEUPWBMJEBUFTJHOBUVSF>> ^ NZSFDFJWFTCPUDSFBUF@SFDFJWFT@GSPN@KTPO SFRDPOUFOU GPSNZSFDFJWF !\SFDFJWFT^ \ OFYUVOMFTTSFDFJWFJT@NFTTBHFSFDFJWFJT@UFYU NZSFTCPUTFOE@UFYU UP@NJESFDFJWFGSPN@NJE UFYUSFDFJWFUFYU ^ SFUVSO< <> <0,>> 4:/014*4
ࡢͷ-5ͯ͠Δ࣌ؒʹ
None
-*/"1*ͷಛ
NJE͔͑ͭ͞ΜͰ͠·͑ݸผͷ Ϣʔβʔʹϝοηʔδ͕ૹΕΔ NZSFTCPUTFOE@UFYU UP@NJESFDFJWFGSPN@NJE UFYUSFDFJWFUFYU w
Ϣʔβʔʹ͖ͭͦͷΞϓϦʹͱͬͯҰҙͷNJE w DBMMCBDLʹԠ͢ΔλΠϛϯάͰͳͯ͘ྑ͍ w ඇಉظͰૹΕΔɺNJEΛ͓͚֮͑$-*͔ΒͰ w ϝοηʔδΛૹΔࡍͷ࣮ػςετʹ͑Δ
ޮՌత͕ͩΫηͷ͋Δ Ϧονϝοηʔδ
NZSFTCPUSJDI@NFTTBHF IFJHIU TFU@BDUJPO ."/(" UFYUNBOHB
MJOL@VSJIUUQTTUPSFMJOFNFGBNJMZNBOHBFO BEE@MJTUFOFS BDUJPO."/(" Y Z XJEUI IFJHIU TFU@BDUJPO .64*$ UFYUNJTJD MJOL@VSJIUUQTTUPSFMJOFNFGBNJMZNVTJDFO BEE@MJTUFOFS TFOE@NFTTBHF UP@NJENJE JNBHF@VSMIUUQTFYBNQMFDPNSJDIJNBHFGPP BMU@UFYU5IJTJTBBMUUFYU
Ϧονϝοηʔδը૾৴ w ͭͷαΠζͷը૾Λ༻ҙͯ͠σόΠεʹରԠ͢Δ w IUUQFYBNQMFDPNJNHTGBDF w ଟ͘ͷ߹ಈతʹը૾Λੜ͠ͳ͍ͱ͍͚ͳ͍
ྫͷλοϓ͢Δͱ ൃݴͤ͞Δͭ λοϓ Ϣʔβʔ͕ উखʹൃݴ
NZSFTTFMGCPUSJDI@NFTTBHF IFJHIUIFJHIU TFU@BDUJPO #0,& UFYUՄԙ MJOL@VSJIUUQCPLFUFKQCPLFCPLF\JE^
BEE@MJTUFOFS BDUJPO#0,& Y Z XJEUI IFJHIU IFJHIU TFU@BDUJPO 5*.&-&"1 UFYU5*.&-&"1ZNE UZQFTFOE.FTTBHF BEE@MJTUFOFS BDUJPO5*.&-&"1 Y Z XJEUI IFJHIU UZQFࢦఆͯ͠Δ
#PU։ൃͷ࣮ࡍ
Ϧονϝοηʔδͷ ը૾৴
ཧͷΞʔΩςΫνϟ w ը૾Λੜ͢Δʹίετ͕͔͔Δ w DBMMCBDLޙʮ͙͢ʹϝοηʔδΛૹΔඞཁແ͍ʯ w KPCRVFVFʹ͛ͯը૾ੜޙϝοηʔδ͕ཧ w 8FCαʔό͕٧·Δ͜ͱ͕ແ͍ 8FCαʔό
-*/& +PCαʔό XPSLFS XPSLFS DBMMCBDL SFTQPOTF EJTQBUDI NFTTBHF ը૾ੜ
ͱ͍͑
࣮ࡍͷΞʔΩςΫνϟ w ొ ਓΛ͑ͯΞΫςΟϒগͳ͍ w 8FCαʔόͷGPSLͨ͠ϓϩηε͕ը૾ੜΛ݉ͶΔ w ͔ͭը૾ेʹΩϟογϡͯ͠0,ʂ w ཧίετͷ͞Λॏࢹͨ͠ઃܭʹͨ͠
8FCαʔό -*/& DBMMCBDL SFTQPOTF NFTTBHF ը૾ੜ ը૾৴ Ωϟογϡ αʔό
ը૾ੜ৴ w ෦Ϙέͯ"1*͔ΒϘέใΛऔಘ w *NBHFSͰΨϦΨϦը૾࡞ w ेͳ࣌ؒͰNFNDBDIFEʹσʔλΛΩϟογϡ w ্هΛݩσʔλͱ͠ϦαΠζͯ͠৴ w
$%/ܦ༝ͤͣ"84&-#͔Β৴ w DBMMCBDL͕དྷͨॠؒʹࣗΒͷը૾Λऔಘ w ΩϟογϡΛੜ͓ͯ͘͠
ίϚϯυͷ࣮ w ςΩετϝοηʔδΛϋϯυϧ͢ΔࡍจࣈྻΛൺֱ w Ϛονͨ͠ΒͦΕͧΕσΟεύον w Ϛον͠ͳ͔ͬͨΒϘέݕࡧϞʔυ JG BSHT\UFYU^FR3"/,*/( \
SFUVSOTFMGIBOEMF@TUJDLFS BSHT ^ JG BSHT\UFYU^_N?5*.&-&"1=T =E \ SFUVSOTFMGIBOEMF@UJNFMFBQ BSHT ^ JG BSHT\UFYU^_N?(";0=T =E \ SFUVSOTFMGIBOEMF@HB[P BSHT ^
.03&ίϚϯυͷ࣮ w NJEΛϕʔεʹηογϣϯ*%Λੜ w ηογϣϯ͔ΒݱࡏͷίϯςΩετΛऔಘ w ্هͩͱԿϖʔδ͔ʁͱݕࡧΫΤϦʔ w ηογϣϯใNFNDBDIFEʹஞҰอଘ JG
BSHT\UFYU^FR.03& \ NZQBSBNTTFTTJPOHFU QBSBNT ]]\^ QBHFQBSBNT\QBHF^ RVFSZQBSBNT\RVFSZ^ ^
#PUͷӡ༻
ϢʔβʔͷߦಈΛ τϥοΩϯά͍ͨ͠
None
+4࣮ߦͱ͔ϜϦϙ
.FBTVSFNFOU1SPUPDPM w )551ϦΫΤετΛૹͬͯΞΫηεͱݟͳ͢ w ͱΓ͋͑ͣϨεϙϯε͕ޭͨ͠߹ʹૹͬͯΔ w NJEΛΩʔʹϢχʔΫϢʔβʔΛΧϯτ w CPLFTFBSDIωίCPLFEBJMZ
ݱ࣮
None
ͳ͔ͳ͔ݫ͍͠
ͦΖͦΖ·ͱΊ
#PU։ൃͷݱ࣮·ͱΊ w -*/"1*جຊతʹϢʔβର#05 w NJEͰϢʔβʔΛࣝผ͠Ԡ༻͠Α͏ w ϝοηʔδඇಉظͰฦͤྑ͍ w ΞΫςΟϒ͕ଟ͘ͳΕཧతͳΞʔΩςΫνϟ w
ϦονϝοηʔδͱίϚϯυͰػೳΛ࣮ݱ w ϞόΠϧΞϓϦ͕͍Βͳ͘ͳΔੈք؍དྷΔͷ͔ w ίϯςϯπΛੜ͢Δ͜ͱग़དྷΕ໘ന͍͔