30歳からのプログラミング

30歳無職から独学でプログラミングを開始した人間の記録。

簡単にTwitterAPIの認証を行えるnpmモジュールを公開した

TwitterAPIの認証を行うために必要な署名を、簡単に作成できる。
APIキーなどの必要な情報を渡せばエンドポイントとリクエストヘッダを返すので、それを使ってリクエストするだけで済む。

このモジュールを作成した目的

  • OSSの実践。その練習として。
    • 他人が使うことを前提としたコードを書く。コマンドやドキュメントの整備など。
  • npmモジュールの公開をやってみる。一通りの流れを一度経験しておきたかった。
  • GitHub Flowの導入。
  • Lintの実践。
  • テストの実践。

以上が、目的。
いずれも、達成できたと思う。

以前からOSSをやりたいとは思っていたが全然やれていなかった。何となく心理的なハードルがあったのかもしれない。
だが、職業プログラマにもなれたことだし、セキュリティが重要なものでない限りはどんどん外に出していこうと考えを改めた。
プログラマとして守るべき評判もプライドもないわけだし。

ということでOSSをやりたい気運が高まっていたのだが、ゼロから何か作るのは時間がかかる。
そこで、以前作ったTwitterクライアントの認証に関する部分を切り出し、ライブラリとして出そうと思った。
npmモジュールの公開も一度やっておきたかったから、丁度いい。

作業にあたっては、最近やっと経験したGitHub Flowを導入することにした。一人でやるからあまり関係ないのだが、トピックブランチを作ってプルリクエストを行って、というフローに慣れておいたほうがいい気がしたので、そうした。

ESLintの実践という意味もあった。
これも、以前からやらねばと思っていたし、勤務先でも使っているので、練習しておきたかった。
Airbnb JavaScript Style Guideを採用した。
最初は鬱陶しかったのだが、確かにこれに従うことで、コードが綺麗になるし、一貫性が生まれて整然とする。

せっかくライブラリを書くのだから、テストもしたかった。練習のいい機会だろうから。
今の自分なりに、ちゃんとしたテストを書けた気がする。
特に、非同期でも上手くテストするためにPromiseでラップしたのは、よかったと思う。
出来る人たちにとっては大したことではないだろうが、自分のなかで一つ、経験が増えたというか、幅が広がった感覚がある。

以前書いたコードの流用だからそれほど達成感はないのだが、最初の一歩は踏み出せたので、これからどんどんOSSをアウトプットしていきたい。