あんパン

こしあん派

Twitter APIの思い出

いいネタで面白かった。そういえばなんだかんだTwitter APIとの思い出があるなと思ったので自分も書く。

出会ったころの話

今のTwitterはOAuthでreadやwriteの権限をとってくるが、昔はもっと牧歌的でBASIC認証を利用してAPIにアクセスできた。当時書いたコードはもうどこにもないと思うけど、ちまちま情報を取得してうまく加工するツールみたいなのを作っていたと思う。

そんな折にBASIC認証が廃止されると聞いて、めんどくさいなあと思った覚えがある。

これが高校生くらいの頃で、OAuthなんて全然知らなかったので切り替わる時にドキュメントを全部印刷して読んでOAuthとはなんぞやを学んだ。当時はiPadが出たばかりでタブレット端末などは持っていなかったので、長い文章を読む時は家のレーザプリンタで印刷して読んでいたのだった。おそらくプラスの2穴ファイルに挟まれたTwitter OAuth 1.0aの書類がまだ実家に眠っているのではないか。

作ったものたち

もうどれも動かないと思う。上から順に新しい(一番下が古い)。ふしぎなもので、この順番で思い入れが強まっていく。 作った時期が大学生ごろに集中しているので、これは青春補正だろうなと思う。

tw2slack

ヤパチー(YAP(achimon)C::Asia Hachioji 2016 mid in Shinagawa)のスタッフをやっていて、Twitterを監視してなにかあったらアクティブサポートする担当として動いていた。

スマートフォンでツイートを監視したくて、TweetDeckでは間に合わなかったのでSlackで監視することにした。Slack Integrationだとリアルタイム性に欠けるのでStreaming APIでなんとかしたいと思って、専用のデーモンみたいなやつを作った。結構便利だったけど用途が結構限定されるのでこれ以降使ってない。

当時書いた紹介記事はこちら。

owlproxy

当時(今はどうか知らない)の夜フクロウはTwitter公式の画像アップローダに対応していなかった。任意のサードパーティ画像アップローダを指定する仕組みはあったため、ローカルにプロキシを立てて公式側にアップロードできるようにした。

Gyazoにも投稿できるようにして、GyaPC::Asia Tokyo 2015のLTで話した。

飯テロ.in

GyaPCの発表資料にもちょろっと書いた、Twitterアカウントでログインできるご飯画像アップローダ(閉鎖済、ドメインも手放し済)。通報機能が悪用されて画像が一つも無くなったりしたら嫌だなと思って、通報数で公開状態を制限するんじゃなくてTwitterでmentionをもらって自分の判断で公開停止する形にした。通報されたら手でMySQLのレコードに論理削除フラグを立てる仕組み。これまた牧歌的だったと思う。ぼくが恣意的にご飯画像かどうかを判断できるので微妙な仕組みではある。いまの時代に生まれていたら機械学習を学んでなんとかしていたと思う。

ちなみにGIGAZINEで紹介されたことがある。GIGAZINEはいろいろあるけどこういう記事でもずっと残していて偉い。

余談だけどこのブログのタイトルのせいで作者名をあんパンと勘違いされた状態で記事が出ていた。問い合わせて直してもらった。

violet

github.com

JavaScriptでTwitter APIを扱えるようにするクライアントライブラリも自作していた。Streaming API(昔はHTTPでコネクションを閉じずツイートをリアルタイムに受け取るAPIがあった)に対応していて、Firefox OSで動かすのに便利だった。

これを作った当時、世の中の動向に疎すぎたのでnpmの存在を知らなかった。package.jsonもなにもなくて、当然依存モジュールは存在しないのでOAuth周りも全部自分で書いていた(正確にはsha1まわりのライブラリだけ他repoからもってきている)。minifyにはGoogle Closure Compilerを使っていた。ECMAScript 5以前のコードなのでPromiseはPの字もなくcallbackでなんとかしていて涙ぐましい。自分の中では黒歴史的な存在だけど、書いてて楽しかったので思い入れはそこそこ強い。

別れ

明確にもうTwitter APIで遊ぶのをやめようと思ったタイミングがあって、Streaming APIが廃止されたときだった。あれ以降、遊び場としてのTwitterは完全に面白みを失って興味がなくなったと思う。プラットフォームとしての興味もこのころからだんだん薄れていった。負荷をかけまくるユーザが減ったということでビジネス的には正しかったのかもしれない。

では最近はどうかというとあんまりTwitterを見てなくて https://social.masawada.me に引きこもってます。という話を来週くらいに書くであろう。