Upgrade to Pro — share decks privately, control downloads, hide ads and more …

会津大学生70人を集めて勉強会付きハッカソンを実施した話

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for Yuto Takamune Yuto Takamune
October 02, 2021
1.3k

 会津大学生70人を集めて勉強会付きハッカソンを実施した話

LINE DC REVUP 2021で発表した資料です。
https://linedevelopercommunity.connpass.com/event/224003/

Avatar for Yuto Takamune

Yuto Takamune

October 02, 2021
Tweet

More Decks by Yuto Takamune

Transcript

  1. - 会津大学学部一年生 - 高校一年生の時からLINE Developer Communityで活動 - LINE API実践ガイド LINEログイン章著者

    - 普段はNuxt.jsやNode.jsでWeb開発をしている - 最近のマイブームはアイデンティティ管理/認証系 - WebAuthnとかDIDとか 自己紹介 @shinbunbun_ https:/ /shinbunbun.info
  2. - 今回僕が会津大学で実施した勉強会付きハッカソンのこと - 参加者70名(ほとんどが1 , 2年生でプログラミング初心者 /未経験者) - スタッフ14名 -

    サークルの先輩などを中心に声をかけてお手伝いしてもらった - 勉強会1ヶ月(週1×4回)、ハッカソン1ヶ月の2ヶ月間で実施した - LINE Developer Community協賛でLINE賞を提供して頂いた AizuHackの概要 1.AizuHackについて
  3. - 講師・アシスタント陣に以下の項目で評価をつけてもらった - 共通項目 - 発表資料は見やすかったか?( 5点満点) - プロダクトの魅力は発表で伝わったか?( 5点満点)

    - 以上2つは、発表時間超過 1分あたり素点の 10%減点(小数点以下切り捨て) - ワクワクする作品か?( 10点満点) - アイデアの創造性( 10点満点) - 作品は最低限動作するか?( 10点満点) - 技術的なレベルは高いか?( 10点満点) - 個別項目(該当作品のみ、各10点満点) - IoT技術の活用度・完成度 - Web技術の活用度・完成度 - デザインの完成度 ハッカソンの評価方法について 1.AizuHackについて
  4. - 前述の評価点から以下の賞を決めた • IoT賞: IoT技術の活用度・完成度がもっとも高かった作品に贈られる賞( 1〜3位まで表彰) • Web賞: Web技術の活用度・完成度がもっとも高かった作品に贈られる賞( 1〜3位まで表彰)

    • デザイン賞: デザインの完成度がもっとも高かった作品に贈られる賞( 1〜3位まで表彰) • 奨励賞: レベル1, 2のチームでもっとも総合点が高いチームに贈られる賞( 1位のみ表彰) • オーディエンス賞: オーディエンス投票で最多票だった作品に贈られる賞です( 1位のみ表彰) • Geek賞: 「技術的なレベルは高いか?」の評点がもっとも高いチームに贈られる賞( 1位のみ表彰) • LINE賞: LINE Developers Community様の協賛賞。LINE API Expertによって選出される(3チーム表彰) • 準々グランプリ: 共通評価項目の総合点が 3番目に高い作品へ贈られる賞 • 準グランプリ: 共通評価項目の総合点が 2番目に高い作品へ贈られる賞 • グランプリ: 共通評価項目の総合点がもっとも高い作品へ贈られる賞 各賞について 1.AizuHackについて
  5. - Todoと推定所用時間を入力すると自動で予定 を組んでくれるLINEBot - リッチメニューを活用して機能がわかりやすく なっている - Todoリストの編集画面やスケジュール画面は LIFFで作られている -

    ESP32を使用してIoTポモドーロタイマーも制作 した - 全体的に完成度が高い 2作品目 TODOスケジューリングBOT 2. LINE賞受賞作品について
  6. - 全体的にレベルの高い作品が多かった - Messaging APIの機能をちゃんと活用できており、とてもプログラミング初心者 /未経験者の作品とは思 えなかった - ここまでの作品が作れた理由 -

    もちろん参加者の努力が一番の理由だが、勉強会のやり方が良かったことにもその一端があるの では...? 主催者としての感想 2. LINE賞受賞作品について
  7. - 基本勉強会3回+エクストラ勉強会1回の構成 - 各勉強会の内容 - 第1回:Webコースと合同でJavaScript勉強会 - 第2回:サンプルコードを使って Botを動かしてみる &

    Messaging APIで受け取れるイベントや送れるメッセージ についての解説 - 第3回:LINE Bot Designer & FlexMessage & リッチメ ニュー & PUSHメッセージについて - Ex回:外部APIとの通信(axios)、SheetDBの使い方、LIFF の作り方、ESLintの使い方 - 勉強会資料はQiitaで公開中 LINEBot勉強会の概要 3. LINEBot勉強会について
  8. - 今回の勉強会の目的は「 LINEBotに触れてみること」ではなく「自分で LINEBotを作れるようにすること」 - 色々なハンズオンや記事があるが、その多くが「触ってみる」というところで止まっている - 今回の資料は、「この資料があれば勉強会終了後に1人でも新しい LINEBotが作れるようになる」ということを 念頭において作成した

    - 改造しやすいサンプルコード - 今回の勉強会でBotのコードを完全に理解する(1から自分でBotのコードが書けるようになる)必要はなく、「サンプル コードのどこをどういじればどのように動くか」が理解できれば、サンプルコードをベースにして新しいBotが作れる - 「なんで動くかはわからないけど、とりあえずここをいじればこう動くらしい」ということがわかれば良い 応用が利く資料にする 4. 勉強会資料を作る上で気をつけたこと
  9. - 拡張性を重視する以上、ローカルで サーバを立ててngrokを使うというあり がちな手法は不採用 - Google Apps Scriptは拡張性が低い - AWS

    Lambdaなどは若干難易度が高 い - ではどうするか→Vercelが最適解で は? ホスティング先の選定 4. 勉強会資料を作る上で気をつけたこと - 永続的に使えるという面で応用がきく - AWSのように設定が複雑でない - サンプルコードに設定ファイルを用意してお けば、コマンド1つでデプロイできる - サーバのログも確認しやすい - Expressを使えばLIFFで使うフロントエンドも 一緒にデプロイできる - ただ、VercelでExpressを使うのはアンチパ ターンなのでもうちょっと良い方法を考えたい 感はある Vercelを使うメリット