なぜソースコードを無料で公開しているのか
shokai.iconの場合
オープンにした方が扱いやすいから
クローズドにする理由もとくにないし
公開のほうが(自分が)扱いやすいから公開してるだけ
ライブラリをnpmやRubygemsにpublishすると、自分のアプリから扱いやすい
$ npm install パッケージ名
でインストールできる
publishしないと、これができない
git submoduleで全てを解決するしかなくなる
GitHubのリポジトリはpublicなら無制限に作れた
2019年以前はprivateリポジトリの数に制限があった
GitHubリポジトリをpublicにしておけば、パッケージマネージャからcommit hash指定でインストールしたりできる
緊急修正に便利
GitHubで他人のコード読んで勉強になったから自分も恩返しする、という気持ち
多少はある
でもメインではない
公開状態が一番楽だし、隠す理由が無いから公開しているだけ
多くの人に使ってほしいとも思っていない
でも、多くの人が使えるフォーマットで公開する
ソフトウェアは公開ライブラリとして設計すると品質が上がるから
ドキュメント書く、サンプルコード書く、メンテしやすい設計にする
設定値はベタ書きせず環境変数から注入する
めんどうな事をライブラリの中に隠蔽化し、ライブラリの外にはいい感じのAPIを提供する
変更・修正の内容に合わせてsemantic versioningする
などなど
他人にとって便利に作っておくと、自分にも便利!!
1年後には細かい実装なんて忘れてる
つまり1年後の自分は他人
自分が便利に使う為に作ってる
使いたい人はご自由にどうぞ
ここ10年ぐらいのOSSって、なんとなくコードを公開してるだけだと思う
基本は暇な人がやりたいからやってて
非公開にする理由もないし
公開の方が運用しやすい
初期の過激なフリーソフトウェアの世代の人たちは別
その時代の事は俺は知らないので、何もわからない