LuneScript の開発工数
LuneScript の開発を続けて約 2 年経過。
2年間ずっと開発し続けているわけではないけど、 かなりの時間を LuneScript の開発にあてている。
そんな訳で、今回は LuneScript の開発工数を概算してみる。
もちろん、作業時間の記録なんて面倒なことはしていないので、 あくまで概算である。
開発作業
LuneScript に限ったことではないが、 github で個人開発する際は、 だいたい次のように開発を進めている。
- 作業項目(TODOリスト)を doc/todo.org にリストアップする
- TODOリストを順次潰していく
-
作業した日は、出来るだけ commit, push する。
- commit する条件は、テストをパスすること。
- 作業項目の対応の途中でも、キリの良いところで commit, push する。
そんな訳で、「commit した日 + C == 作業した日」が成りたつ。
ここで C
は、「作業したが commit していない日」である。
これの多くは、修正内容の規模が大きくて、
1 日ではテストをパスできずに commit できない日である。
このようなケースは、頻度が少ないので概算から除外する。
概算
LuneScript の commit ログは 397 個.
$ git log --oneline | wc -l 397
commit の日付けから、同じ日に commit したものは除外し、 異なる日が何個あるかを計算すると、 286 個。
$ git log --pretty=%aI | sed 's/T.*//g' | uniq | wc -l 286
つまり、286 日以上は LuneScript の作業を行なっている。
1 日の作業時間は、日によってバラバラだが、 平均すれば 2 時間以上は間違いなく作業している。 これを計算すれば、
(* 2 286) 572
よって、 572 時間 は最低限 LuneScript にかけている計算になる。
8 時間労働で考えると、 (/ 572 8.0) 71.5 日。4 ヶ月弱の工数。
会社で働けば 100 万円は稼げる。
これは、1 日の平均作業時間を 2 時間として計算した結果であって、 実際にはもっと作業している感覚がある。 あくまで最低限の概算だ。
個人的には、LuneScript は少なくとも 100 万以上の価値がある。