TwitterにあるLinkを収集するツール Cotlin で、世界中のプレゼンテーション資料を知ろう
Twitter に投稿されている Link を収集するツール Cotlin を作りました。
Collec
t links in tweet
から、Cotlin という名前にしました。Android のアレに似ています。
https://github.com/silverbirder/Cotlin
https://www.npmjs.com/package/@silverbirder/cotlin
動機
私は、connpass等を使って、技術系のカンファレンスに参加することがありました。 カンファレンスで発表された資料は、Twitter で公開されることが多々あるので、それを自動収集できるようにしたいと考えたのが、Cotlin を作った動機です。
技術スタック
Google Apps Script (Clasp) + Twitter API (tweet search API) です。 ライブラリを公開していて、それを元にAPIとClientを簡単に作れるようにサンプルコードも用意しています。使い方は、全てREADME.mdにあります。
困ったこと
Tweet に記述したリンクは、全てt.coに短縮されてしまいます。 この短縮 URL からオリジナル URL を手に入れるために、リダイレクトする必要があります。 実際に作ってみると、次のような記事に書いたとおり、GAS で書くと、少し困ったことがありました。
https://silverbirder.github.io/blog/contents/gas_fetchall_redirect
そこで、複数のリダイレクト URL へリクエストする処理を並列化するために、Golang で開発していました。
しかし、そもそも Twitter API (tweet search API)のレスポンスには、オリジナル URL が含まれている(expanded_url)ことに気づき、結局、Google Apps Script (Clasp)で開発することになりました。
良かったこと
毎日、プレゼンテーション資料を収集し、スプレットシートに記録するよう、自動化しました。
※ 都合により、URL のリンクと Tweet のリンクのみ記載しています。
https://docs.google.com/spreadsheets/d/1IaJOw9-GdoHhz3D0CzvJfFitrmEN8KpgIleer9rmxiw/edit?usp=sharing
次のような資料を発見できるようになりました。
- 世界中のプレゼンテーション資料
- 知らない技術カンファレンスの資料
- 個人や学生が公開した資料
そこから、次のような良かったことがありました。
- 『テストについて、同じように困っている人がいた。○○ という技術で解決してるんだ!知らなかった!』
- 『最近気になっている ○○ のアーキテクチャの資料だ。メリット・デメリットがよくまとまってて良い!』
- 『リモートワークを取り組んでいる企業の話だ。これから私もリモートワークになるから、先に知見を知っておこう!』
毎日、資料を読んでいると、1 日 2,3 件ほど、自分の琴線に触れるものが現れます。とても刺激を受けて、作ってよかったなと思いました。
最後に
動機であった技術カンファレンスの参加は、実は最近減少しています。 理由は色々ありますが、まあ伏せておきます。
こういったツールによって、アンテナを広く張り巡らせておくことができます。 これのおかげで、様々な関心事をキャッチアップできるようになりました。
上のスプレットシートは、ずっと更新し続ける予定ですので、活用下さい。
シェアしよう
関連するタグ
- 手軽に安い食材を見つけられるアプリ「ぼちぼち」を開発
- Qwikでブログページを刷新して学んだこと
- ライティングの効率化ツール:AI Ghostwriterの紹介
- Stable Diffusion API 開発
- Micro Frontendsで組成するフラグメントをWeb Componentsで定義してModule Federationで共有する
- OEmbedとOGPのWebComponentsを作ったので、自分のブログサイトに使う
- Chrome拡張機能(Manifest V3)の開発で知ったこと
- Markdownで執筆するなら、WebComponentsが使えるSSG、Rocketがオススメ!
- silverbirderのポートフォリオページ刷新(v2)
- Googleアカウント画像を返却するだけのAPIを作った
- TikTokスクレイプ基盤をGCP上で構築してハマったこと
- クライアントサイド(ES Module)でMicro Frontends
- Zalando tailor で Micro Frontends with ( LitElement & etcetera)
- Ara-Framework で Micro Frontends with SSR
- ZoomのMeetingを自動生成するGASライブラリ zoom-meeting-creator を作った
- アカウント画像一括更新ツールを作ったので、紹介と学びについて
- GMailをGCalendarに登録するサービス rMinc を作ってみた
- 1コマ漫画検索サービスTiqav2 (Algolia + Cloudinary + Google Cloud Vision API) 作ってみた
- [覚書]Reactを業務で使い始めて知ったこと
- WebComponentsでoEmbedのコンポーネントを開発して、学んだこと
- Ruby on Railsを業務で使って思ったこと
- Reactを学ぶ前に歴史を知る
- オミクロン株に感染したので、分かったことを書く
- TikTokスクレイプ基盤をGCP上で構築してハマったこと
- ブラウザの仕組みを学ぶ
- リモートワークになってから『気軽にすぐ聞く』ことが難しくなった
- 20代後半エンジニアである私がこれから学ぶべきこと
- Micro Frontends を調べたすべて
- アカウント画像一括更新ツールを作ったので、紹介と学びについて
- Micro Frontends を学んだすべて
- Google Apps Script で FetchAllとRedirctURL の組み合わせは悪い
- GMailをGCalendarに登録するサービス rMinc を作ってみた
- 1コマ漫画検索サービスTiqav2 (Algolia + Cloudinary + Google Cloud Vision API) 作ってみた
- 技術書典7で初執筆した経験をすべて公開