TwitterにあるLinkを収集するツール Cotlin で、世界中のプレゼンテーション資料を知ろう

https://res.cloudinary.com/silverbirder/image/upload/v1584017984/cotlin/overview.png

Twitterに投稿されているLinkを収集するツール Cotlin を作りました。

Collect links in tweet

から、Cotlinという名前にしました。Androidのアレに似ています。

github.com www.npmjs.com

動機

私は、connpass等を使って、技術系のカンファレンスに参加することがありました。 カンファレンスで発表された資料は、Twitterで公開されることが多々あるので、それを自動収集できるようにしたいと考えたのが、Cotlinを作った動機です。

技術スタック

Google Apps Script (Clasp) + Twitter API (tweet search API) です。 ライブラリを公開していて、それを元にAPIClientを簡単に作れるようにサンプルコードも用意しています。使い方は、全てREADME.mdにあります。

困ったこと

Tweetに記述したリンクは、全てt.coに短縮されてしまいます。 この短縮URLからオリジナルURLを手に入れるために、リダイレクトする必要があります。 実際に作ってみると、次のような記事に書いたとおり、GASで書くと、少し困ったことがありました。

silverbirder180.hatenablog.com

そこで、複数のリダイレクトURLへリクエストする処理を並列化するために、Golangで開発していました。

しかし、そもそもTwitter API (tweet search API)のレスポンスには、オリジナルURLが含まれている(expanded_url)ことに気づき、結局、Google Apps Script (Clasp)で開発することになりました。

良かったこと

毎日、プレゼンテーション資料を収集し、スプレットシートに記録するよう、自動化しました。
※ 都合により、URLのリンクとTweetのリンクのみ記載しています。

docs.google.com

次のような資料を発見できるようになりました。

  • 世界中のプレゼンテーション資料
  • 知らない技術カンファレンスの資料
  • 個人や学生が公開した資料

そこから、次のような良かったことがありました。

  • 『テストについて、同じように困っている人がいた。○○という技術で解決してるんだ!知らなかった!』
  • 『最近気になっている○○のアーキテクチャの資料だ。メリット・デメリットがよくまとまってて良い!』
  • 『リモートワークを取り組んでいる企業の話だ。これから私もリモートワークになるから、先に知見を知っておこう!』

毎日、資料を読んでいると、1日2,3件ほど、自分の琴線に触れるものが現れます。とても刺激を受けて、作ってよかったなと思いました。

最後に

動機であった技術カンファレンスの参加は、実は最近減少しています。 理由は色々ありますが、まあ伏せておきます。

こういったツールによって、アンテナを広く張り巡らせておくことができます。 これのおかげで、様々な関心事をキャッチアップできるようになりました。

上のスプレットシートは、ずっと更新し続ける予定ですので、活用下さい。