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
150
身近なものから作り手に回る楽しさ
イベント情報→
https://www.youtube.com/watch?v=TZF8fD3meTI
ようかん(YosukeInoue
March 20, 2022
Tweet
Share
More Decks by ようかん(YosukeInoue
See All by ようかん(YosukeInoue
今から始めるLINEBot入門
inoue2002
0
100
未来の投げ銭箱
inoue2002
2
60
LINEでAI占い師に相談できる “AI占いくん”の開発/改善の過程
inoue2002
0
280
LINEトークルーム広告v1
inoue2002
0
45
レシピ保存くん
inoue2002
0
390
初めてのServiceMessage
inoue2002
0
94
トーク履歴を分析してみる
inoue2002
0
10k
LINEで使えるAIチャットBot “AIチャットくん”とLINEAPI
inoue2002
0
72
謎コイン
inoue2002
0
61
Other Decks in Programming
See All in Programming
WebフロントエンドにおけるGraphQL(あるいはバックエンドのAPI)との向き合い方 / #241106_plk_frontend
izumin5210
4
1.4k
どうして僕の作ったクラスが手続き型と言われなきゃいけないんですか
akikogoto
1
120
Pinia Colada が実現するスマートな非同期処理
naokihaba
4
230
AWS IaCの注目アップデート 2024年10月版
konokenj
3
3.3k
Nurturing OpenJDK distribution: Eclipse Temurin Success History and plan
ivargrimstad
0
920
受け取る人から提供する人になるということ
little_rubyist
0
230
型付き API リクエストを実現するいくつかの手法とその選択 / Typed API Request
euxn23
8
2.2k
macOS でできる リアルタイム動画像処理
biacco42
9
2.4k
Compose 1.7のTextFieldはPOBox Plusで日本語変換できない
tomoya0x00
0
190
「今のプロジェクトいろいろ大変なんですよ、app/services とかもあって……」/After Kaigi on Rails 2024 LT Night
junk0612
5
2.2k
Why Jakarta EE Matters to Spring - and Vice Versa
ivargrimstad
0
1.1k
Click-free releases & the making of a CLI app
oheyadam
2
120
Featured
See All Featured
Designing for Performance
lara
604
68k
Optimising Largest Contentful Paint
csswizardry
33
2.9k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
Practical Orchestrator
shlominoach
186
10k
Ruby is Unlike a Banana
tanoku
97
11k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
Speed Design
sergeychernyshev
25
620
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.4k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
720
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
16
2.1k
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