イベントURL
プリッカソン #7 (プリリズ/プリパラ/プリチャン) https://prickathon.connpass.com/event/123544/
ハッシュタグ
#prickathon
雰囲気とか
- 今回めっちゃ人多い、ついに時代が来てしまった?
- フォロチケを大量に交換できてよかった
- 結構ギリギリまで発表してて交流あまりできなかった><
- 技術的に違う領域やってる人たちの派手さに驚く
- Unityとか、3D系は見た目が派手ですごい
- あと絵が描かける人は強い
- 画像の認識、僕もちょっとやりたいような気がしてきたので気になります
- (ライブ映像はエモい)
発表スライド
なんか今回微妙に時間が余ってスライド作っちゃいました。
作ったもの
Googleカレンダーです(えっ)。っていうのも、プリティーシリーズの情報をみんなで登録していければいいなと思って、作りました。(なんか探せば普通にありそうな気もする)
アーキテクチャはこんな感じ。
Google Formでイベントを登録! Google カレンダーでイベントを確認! 以上!!
簡単ですね。
使った技術要素
GAS以外はほぼ初めて。
- Google Apps Script(GAS)
- カレンダーやSpreadSheetの操作が可能で、今回使用
- フォームに登録された瞬間にカレンダーで登録するためには、フォームに紐づくSheetにスクリプトを仕込む必要があり、そこで若干引っかかった。。。
- clasp
- Google Apps Script をローカルで開発できるスグレモノ
- ついでにTypeScriptで書いたものをGASで動く形式にいい感じに変換してくれる最高なやつ
- TypeScript
- 型ありなJavaScript(数年ぶりに書いた。テストコードしか書いたことがないので、実質アプリケーションコードを書くのは初めて)
- 型がわかるのは良くて、まあまあ書きやすい感じはした
- ForEachもう少しうまくかけないものか、と毎回思いつつ。。。
GAS自体は書いたことがあったのだけれども、意外とハマりどころが少なくサクッと動いてしまってびっくり。claspマジですごいな。
おまけで初めて使ったもの
- reStructuredText(確か略称はreST、かぶってるものが多く出てきにくいのがツライ)
- SlideShip
- スライド共有サービス
- Cloud管理、そしてMarkdownでそれっぽくかける。レイアウトもページごとに決めれる。悪くないかも。
- Bitly
まとめ
自分的にはGAS流行ったことあるけど、それをちょっと応用してみたってところでいろいろ学びがあったので良かった。TypeScript全然文法知らないし…(JESTでテストを書いてみようみたいなことを数年前にやっていたことがあるが、それ以来触っていない言語だった)
あとはもっとわかりやすく動くものを作ったほうがハッカソン的な見た目としてはいいのかなーとか思った。そうだよなあ、カレンダーは地味。。。まあでも僕は一番欲しかったんですが。
カレンダーの展望としてはここからAlexaアプリで聞いた日付のイベントを返すとか、Google Homeで聞いた日付のイベントを返すとか(あれこれ一緒じゃん)みたいなものを施策できたらいいなと思う。お、ついにアプリストアデビューか? いや自分はほしいんだけどなこれほんと。。。
あとフロント系ずっとやろうと思って放置してるので、次回のイベントでは誰かの分担では入れたらいいなとかもちょっと思っている。NuxtとかGatsubyとか触ってみたさがある。
おまけのリンク集
自分が作ったもののリンク
開発の参考
- Googleフォームの送信があったときにイベントの予定をGoogleカレンダーに入れる
- 4. Sphinxでの文章の書き方(reStructuredText) — study sphinx 1 documentation
- clasp が Typescript をサポートした! - Qiita
- Class CalendarApp | Apps Script | Google Developers
- Class Sheet | Apps Script | Google Developers
- Functions · TypeScript
- Doc Comments | TypeDoc
- TypeScriptの型と基本的な書き方 - Qiita
- GoogleAppsScriptで日付をフォーマットする - Qiita
見てほしいプリパラのエピソード
84話