GitHub Star⭐とOSS使用頻度
GitHub Starが付くと嬉しい
私は、2022年からGitHubにOSS(プロジェクト)を公開するようになりました。GitHubにはOSSに対してStar⭐をつける機能があり、自身が公開したOSSに他のユーザーから⭐を付けていただけると素直に嬉しいです。ニッコリします。
どれぐらいの嬉しさかと言えば、⭐ 50個を獲得した時に記事を書いてしまうぐらいです。ちなみに、以下の記事で言及したOSSは⭐ 100個を超えました(どこまで伸びるかな)
また、GitHub Starを獲得すると、LAPRAS(転職サイト)の技術スコアも上がるのでモチベが上がります(個人的に、技術スコア4.0を目指してます)
振り返り:どんなOSSに⭐が付きやすいか
私は、2022年に10個程度のOSSを開発し、⭐の付き具合をザッと確認しました。上位5個のうち、飛び抜けたOSSが一つあり、他はソコソコです。
⭐の付き方は、OSSの使用頻度と相関がありそうだと気づきました(相関係数 r ?そんなものは知らんな〜。雰囲気で書いてます)
トップのgupコマンドは二週間に一度ぐらいの頻度で使うぐらい便利ですが、三番目のmkgoprjコマンドは数ヶ月に一度ぐらいしか使いません。上記の画像に出てこないOSSは、殆ど使っていません!
使用頻度が高いOSSを作れば⭐が付く?
「使用頻度が高くなるようなOSSを作れば、⭐が付きやすくなる(仮説)」は、⭐ありきで開発する場合には分かりやすい観点だと思います。便利なOSSも⭐が付きやすいと言われていますが、便利の指標を測るのは大変です。しかし、使用頻度はある程度予想できます。
例えば、人気のあるghqコマンドやlazygitコマンドはgit操作を楽にするコマンドのため、使用頻度が高いことが予測できます(エンジニアはgitコマンドをほぼ毎日使うことが多い)
開発前の設計が大事
⭐を狙う場合は、開発前にキチンと設計をして、「ユーザーはこれぐらいの頻度でOSSを使うだろうな」と予想した方が好ましいでしょう(私は⭐が欲しい一方で、衝動的に開発を進めるタイプなので、実装が終わった辺りで後悔してます)
例えば、Readme駆動開発(Readme Driven Development)でOSSの仕様をREADMEに書いてから、開発を進める方法がオススメです。READMEを先に書くことで頭が整理されます。書き終わったREADMEを見ながら使用頻度を予測するのはいかがでしょうか。
とは言え、バズりのパワーもある
GitHub Starを集めるには、宣伝も大事です。Reddit、Hacker News、Twitterで話題になったOSSは凄まじい勢いで⭐をかき集めます。
最近だと、Twitterで話題になった「ojichat:おじさんがLINEやメールで送ってきそうな文を生成するコマンド」が1.2kの⭐を集めてます。
nao@nao:~$ ojichat ヴィクトリヤ
ヤッホー🎵😘(笑)😄ヴィクトリヤチャン、元気かな❗❓✋❓
ヴィクトリヤチャンと今度イチャイチャ、したいナァ(笑)😃♥
このホテル🏩、サラダがオイシイんだって😚オレと一緒に行こウヨ💕😘(^_^)ナンチャッテ😂😃♥ 😚🎵
Twitter上でのやりとりが気になる方向けの記事を置いておきます。
他にも様々なサイトで話題に挙がった「pinguコマンド」のバズり等があります。
最後に
今まで「自分にも他人にも便利なOSSを作りたい(ついでに⭐が欲しい)」と考えてきましたが、「便利」という言葉がふわふわしている状態でした。しかし、「便利さ」を「使用頻度の高さ」に置き換えると、評価尺度がわかりやくなることに気づきました。
本記事は、上記の気づきを残すために作成しました(自分用メモ)
とは言え、細かいことを考えずに書きたいコードを書くこともあるだろし、バズりを意図的に起こすこともできないので、⭐は貰えたらラッキーぐらいの心持ちで生きてきます!
この記事が気に入ったらサポートをしてみませんか?