Closed azu closed 2 months ago
計算方法はこんな感じでどうだろう? Open Collectiveへの申請にも根拠がいるので、計算しやすいものを書いてみた
作業量に対する基準としてフィボナッチ数列のPointsを設定する
Points | Description |
---|---|
1 | 2 よりは簡単 |
2 | 大体1日分やると終わる想定 |
3 | 2 よりは難しい |
5 | かなり難しい |
8 | 難易度がとても高いので、できる人は限られる |
Issueが適切に分割されていれば、5や8はほとんど出てこないはず。 5以降はブレが大きいので、個別でコストを判断するぐらいのイメージ。
📝 元ネタはLinearのEstimates – Linear Docs
Pointはやや主観的になってしまうが、基準となるような例を元に判断する。
node:test
に変更する by windchime-yk · Pull Request #1737 · asciidwango/js-primerMap.groupBy
静的メソッドの追加 by azu · Pull Request #1751 · asciidwango/js-primernode:util
の parseArg
に変更 by azu · Pull Request #1757 · asciidwango/js-primerjsprimerの年間更新コストは、だいたい30日分の作業量になるように設定。
Pointに直すと、年間の作業量のPointは60 Points程度になる。
年間の予算はOpen Collectiveの推定年間予算を参照する
[!NOTE] 2024-08-25だと
$2,367
が年間の予算
1 Pointあたりの金額は以下のように計算する。
const yearlyEstimatedBudget = 2_367; // Open Collectiveの推定年間予算($ドル)
const yearlyWorkloadPoints = 60; // 1年間のPoints
const onePointCost = yearlyEstimatedBudget / yearlyWorkloadPoints;
console.log({onePointCost}); // => $39.45
const costOfPoint = 2; /// 2 Points
const cost = onePointCost * costOfPoint;
console.log({cost}); // => $78.9
作業が終わったタイミングで計算して、そのコストを申請する。
JavaScript Primer - Open Collectiveの予算はおそらくありそう。 実際にContributorが経費精算(お金を受け取る)時のルールを決める必要がある。
目的
決めること
できるだけシンプルでわかりやすいルールにしないと管理が難しそう。 他のオープンソースなどがどうやっているのかを調べる必要がある。
cc @lacolaco