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
身近なものから作り手に回る楽しさ
Search
ようかん(YosukeInoue
March 20, 2022
Programming
0
140
身近なものから作り手に回る楽しさ
イベント情報→
https://www.youtube.com/watch?v=TZF8fD3meTI
ようかん(YosukeInoue
March 20, 2022
Tweet
Share
More Decks by ようかん(YosukeInoue
See All by ようかん(YosukeInoue
今から始めるLINEBot入門
inoue2002
0
77
未来の投げ銭箱
inoue2002
2
45
LINEでAI占い師に相談できる “AI占いくん”の開発/改善の過程
inoue2002
0
250
LINEトークルーム広告v1
inoue2002
0
38
レシピ保存くん
inoue2002
0
360
初めてのServiceMessage
inoue2002
0
78
トーク履歴を分析してみる
inoue2002
0
6.8k
LINEで使えるAIチャットBot “AIチャットくん”とLINEAPI
inoue2002
0
57
謎コイン
inoue2002
0
47
Other Decks in Programming
See All in Programming
Real-time message handling and notifications with API Platform and Symfony
alli83
1
110
データマイグレーションの成功戦略~サービスリニューアルで失敗しないための実践ガイド~
tkzwtks
4
250
型付きで行うVSCode拡張機能開発 / VSCode Meetup #31
mazrean
0
240
CSC509 Lecture 02
javiergs
PRO
0
160
dbt-ga4パッケージを実業務に導入してみた話
t_tokumaru_feedcorp
0
130
"Swarming" をコンセプトに掲げるアジャイルチームのベストプラクティス
boykush
2
250
デバッグの話 / Debugging for Beginners
kaityo256
PRO
6
450
MLOps in Mercari Group’s Trust and Safety ML Team
cjhj
1
120
How to debug Xdebug... or any other weird bug in PHP
dunglas
1
390
RemixとCloudflare Stack におけるFile Upload
ossamoon
1
130
メルカリ ハロ アプリの技術スタック
atsumo
2
790
perl for shell, awk and sed programmers
mackee
1
690
Featured
See All Featured
The Language of Interfaces
destraynor
154
24k
Web development in the modern age
philhawksworth
205
10k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.3k
Navigating Team Friction
lara
183
14k
KATA
mclloyd
27
13k
Six Lessons from altMBA
skipperchong
26
3.4k
[RailsConf 2023] Rails as a piece of cake
palkan
49
4.7k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
7
580
It's Worth the Effort
3n
183
27k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
27
1.9k
GitHub's CSS Performance
jonrohan
1030
450k
Transcript
@inoue2002
None
None
/ / 🎉 # 2
About Me ( ) - B1 - 2020 - LINE
API Expert JAWSDAYS2021 Civictech Challenge Cup U-22 2021 Code for japan SGG - - (1.5km 10km) LINEAPI @inoue2002
Activities • • Web • LINE • / • /
@inoue2002
/ / 🎉 # 2
None
None
• • • • • •
• • • • • • • etc..
None
None
None
None
SGGとは • 73 • 2 • Slack 3.2 • •
• Flutter • LINEAPI • • • • • • CTF • •
None
生息地
• ScrapBox • • • GitHub • • Twitter •
• • Youtube • • • Discord • • Qiita org • 主な活動場所
None
None
※個人の感想 小学生 中学生 高校生 大学生 大人 イ ベ ン ト
で 見 か け る 頻 度 中高生あんまりいないよね問題 IoT/VR/RPA/LINE 各種界隈.. 小学生プログ ラミング教室
※個人の感想 中高生の参加率をあげたい!! 小学生 中学生 高校生 大学生 大人 なんとかして中高生を盛り上げたい イ ベ
ン ト で 見 か け る 頻 度
「小学生向け」のプログラミング教室 「エンジニア向け」の勉強会… 「高校生向け」の?? 中高生が集まるイベントがないからじゃね? なぜ中高生の参加が少ないの?
じゃあ作ればいいやん!!
数少ない 中高生が集まって情報共有することで 知識が増える・開発の相談可・モチベーション向上 + ⼤⼈も巻き込んでいろいろ刺激をもらえたい!! + ⼤⼈の⽅にも楽しんでもらいたい!!
None
反響
SNS @sggorg
None
None
チームとしての活動
SGGでさまざまな知見をお互い得ることができる • / • • • • w • •
•
https://sugokunatitai.dev
#すごくなりたいがくせいぐるーぷ
@sggorg
None
@inoue2002 [LINEAPI]どれぐらい開発しているかというと サービス/ツールetc.. 50+
@inoue2002 https://www.civichat.jp/
https://the-scratch.jp/ @inoue2002
None
https://shiga-lg.jp/showcase/result @inoue2002
None
@inoue2002 生徒会の子にも協力してもらい モザイクアートに挑戦する
@inoue2002 学校にも協力してもらい 校⻑先⽣の許可をもらいにいく 情報科の先⽣を仲間にする 学年団の先⽣と職員会議 学校の公式企画として開始
@inoue2002 投票は「Bot追加して画像をとにかく投げるだけ」
@inoue2002 学校の公式文章配布とともに募集開始 4日で目標の倍の数集まった
@inoue2002 上映会
@inoue2002 上映会
@inoue2002 上映会
@inoue2002 上映会
@inoue2002 上映会
@inoue2002 上映会
@inoue2002 ポストカードも作ってみた
@inoue2002
@inoue2002
@inoue2002 技術構成 学校管理のサーバー 実はコード⾃体は2⾏
@inoue2002 みんなからものすごく褒めてもらえた🎉
@inoue2002 学校のHPで紹介された🙌(してもらった?)
• • • • 話 • •
普通科高校生の 情報共有にある壁
どこでも誰もがやってそうな会話①
どこでも誰もがやってそうな会話②
僕は思った。これが全校で展開されてるんじゃないか。って。 同じ情報が複数の場所で やりとりされるんじゃない?
それが頻繁に起こっている可能性 ⽉ ⽕ ⽔ ⽊ ⾦ ⼟ ⽇ 漢字テスト 英単語テスト
課題提出 英⽂法テスト 課題提出 週末課題 ⽉曜の漢字テストの範囲教えてー 次のコミ英の提出物なんだっけ ⾦曜⽇の課題の範囲くれー!
送る側 負のサイクルの始まり始まり 聞く側 送るのめんどくさい いつ⾃分が聞く側に なるかわからないか ら送るしかない k 毎回毎回申し訳ない 聞いてからの時差
お互いのモチベが下がっていく可能性もある
なんか⼀括で共有できた⽅がよくね? ⼤勢の前で発⾔するのは抵抗が多い⼈も結構いる グループLINEでいいやん→ そこで.. 共有は⼀回だけでいい&みたい時に待ち時間無しで⾒れたらいい感じ✨
• ⾼校⽣みんなが導⼊しやすい • 広めやすい • 開発/運営しやすい • ⾼校⽣の普及率ほぼ100パーセントのLINE • QRコードやトークからアカウントをそのまま共有できる
• LINEBotを使うことでみんなが慣れたチャットUIをベースに開発できる どこに作ろうか・・・
そうして出来上がった 新しい情報共有ツール「ようかんBot」
実際に⼆年半同級⽣は使ってくれたの? 310 251 割と⼝コミが広がってみんな使ってくれるようになった
三⽇前に⼤型アップデートを迎えたばかり! 実際にLIVEDEMOしていきましょう!↑
DEMO①クラス設定をする DEMO⾼校 ⼀年⼀組で登録する
DEMO②画像を共有する(教える側)
DEMO②画像を共有する(教える側) アップロードするLIFFが開く ↓ 画像の種類を選択する ↓ 画像を選択してアップロードする
DEMO②画像を共有する(教える側)(動画が⾒れなかった時⽤) LIFFが開く 画像の種類を選択 画像を選択する 画像の種類を選択
DEMO③画像を確認する(聞く側)
DEMO③画像を確認する(聞く側) 共有された画像を⾒るLIFFが開く ↓ 知りたい画像を選択 ↓ 保存ボタンを押してトークに保存
DEMO③画像を確認する(聞く側)(動画が⾒れなかった時⽤) LIFFが開く 画像を保存 トークに残る
DEMO④画像を確認する(聞く側)
DEMO④画像を確認する(聞く側) 「時間割を確認」を押す ↓ 秒で時間割を送ってくれる
DEMO④画像を確認する(聞く側)(動画が⾒れなかった時⽤) ボタンを押す 秒で返してくれる
DEMO⑤拡散
DEMO⑤拡散 ボタンを押す ↓ QRとかURLとか⾊々送ってくれる
DEMO⑤拡散 スクリーンショット LINEで送信 URLをコピペで共有
DEMO⑥お問い合わせ 特にお問い合わせアカウントなど を設けず、頭に#をつけるだけでお 問い合わせできる お問い合わせグループにNotifyでお問い合わせがくる
DEMO⑥お問い合わせ(まとめ)
この⼤型アップデートはほぼ完成形? • この形になるまでに⼆年かかった • プログラミング未経験から運営を始めた • 最初は全て⼿動で更新していた • なかなか使ってもらえなかった •
運営コストやみんなに使ってもらうための課題が⼭盛り どんなふうに進化していったのか振り返っていきます
LINE BOOT AWARDS 2018 LINEBotの魅⼒に刺激を受け、なんにもできない状態でLINE@を触ってみた
LINE@のみで動く第⼀号 ⾃分で準備して、LINEオフィシャルアカウントマネージャーで更新
⼀年⽣の間に100⼈を超え、来年もやることにした ⾼校⽣への宣伝は 基本インスタ 友達からの⼝コミ 陸上部→各クラス→いろんなグループに⼝コミで広がる
時間を重ねるごとに登録者が増えるが、だんだん限界に近く • いろんな⼿を使って宣伝 • あだなが「ようかんBot」になったりする (ほぼ⼿動やし完全Botではなかった • なかなか200に到達しない →ユーザーの声を聞いて満⾜度や期待をあげたい
初めてユーザーの声に⽿を傾けてみた
⾊々課題がわかってきた
きっとこれなんだよなぁ(Webhookってなんやねん)
とりあえず教えてもらう • ネットで調べまくった • ハンズオンに参加した
基本知識がついた/LINEBotが作れるようになった🎉
記事を⾒ながらコピペで実装(GAS)Google Apps Script • キーワード応答からリッチメニュー に • 画像のアップロードをGdriveに • キーワードの応答はスプレッドシート
→以前より運営もしやすく →ユーザーも少しは使いやすく
ついに本物のBotなった!⾼2夏 • アイコンは同級⽣に書いてもらった • 登録者が結構増えた • G driveに権限を与えて運営を増やせる • 学校の先⽣から連絡を頼まれたり
また⾊々問題点が.. GASは応答が若⼲もっさり
AWSLambdaを⽤いたサーバレス構成を学習 ぶんせんせい本当にありがとう!!
さらにLINEAPIドキュメントが読めるようになった&技術⼒が上がった • Flexメッセージ • Quick Reply • nodeJS ⾊々思い通りにできるようになってきた できることが増えてUI・UXが爆上がり
None
Lambdaを使うようになってまた⾊々成果が 約⼀週間で900回応答とか
コロナ休校のせいで仕事を奪われた
泣きそう
休校明け、ユーザーは帰ってきたけど、僕が忙しくなり運営が疎かに
気がつけばそんな中登壇⼆週間前w このままじゃ登壇できない
アップデート内容を考える lineBotは設計図を作 ると開発しやすい🔥
ということで今週頭に開発、四⽇前リリース、週末登壇が実現しました🎉
• みんながアップロードできるから運営コスト0 • LIFFを使い倒してDB5つ、エンドポイント7つ • 同級⽣だけでなく、他学年、他校までも使えるように • 今後使ってもらいつつ⾼校⽣の情報共有の壁壊したい • 三年間の知⾒や経験がとっても活かせたものができた
最終形態のまとめ
アーキテクチャ
同時並⾏で⽣まれた副産物
同時並⾏で⽣まれた仕事 学校内で技術を認めてもらえて、本当にありがたい
未踏ジュニア https://jr.mitou.org/ © 未踏社団 未踏ジュニア実行委員会
未踏ジュニア • CPUを自作してコンピュータが 魔法でないことを証明したい! • 全く新しいエアガンを開発したい! • 勉強のモチベーションを維持する タスク管理アプリを作りたい! •
VRで体を鍛えるゲームを作りたい! • Webアクセシビリティの問題を 指摘する仕組みを作りたい! ほかにも色々!! https://jr.mitou.org/ © 未踏社団 未踏ジュニア実行委員会
未踏ジュニア 「未踏エコシステム」 「未踏」 未踏IT人材発掘育成 「未踏Advanced」 未踏的IT企業家・事業家育成 「未踏Target」 次世代先端IT技術者育成 「未踏ジュニア」 U17未踏IT人材育成
• • • • • etc
• • • • • •
@inoue2002