聲譽

認識聲譽系統。


聲譽是讓人在 Exercism 生態系中取得「信任」的系統。

聲譽衡量一個人對 Exercism 的貢獻程度,包括對平台的貢獻(例如開發軟體、練習和文件),以及對社群的貢獻(例如引導)。

聲譽無法「花費」或「使用」。不過,達到特定的聲譽門檻後,就能取得新的權限與貢獻方式。簡單來說,一個人的聲譽越高,我們就越信任他,他獲得的權限也就越大。聲譽同時也是公開可見的指標,呈現你為 Exercism 付出了多少。

目的

聲譽系統的目的在於:

  1. 讓學生與導師之間以成長為核心的互動最大化
  2. 讓導師的貢獻意願最大化

取得聲譽

取得聲譽的方式有很多種:

動作 聲譽
成功引導一份解答 5
發佈解答 1-3
撰寫練習 20
更新練習 10
撰寫概念 10
更新概念 5
建立 pull request 3-100
審查 pull request 1-20
合併 pull request 1-5

成功引導一份解答

每成功引導一份解答(討論已結束),即可獲得5點聲譽。

發佈解答

每發佈一份解答,可獲得的聲譽取決於該練習的難度:

標籤 聲譽
easy 1
medium 2
hard 3

撰寫練習

每當使用者在某個練習中被列為作者,即可獲得20點聲譽。

更新練習

每當使用者在某個練習中被列為貢獻者,即可獲得10點聲譽。

撰寫概念

每當使用者在某個概念中被列為作者,即可獲得10點聲譽。

更新概念

每當使用者在某個概念中被列為貢獻者,即可獲得5點聲譽。

建立 pull request

預設情況下,當使用者開啟的 pull request 被合併時,可獲得12點聲譽。

維護者可以依 pull request 的內容,為它加上下列其中一個標籤,藉此給予更多(或更少)聲譽:

標籤 聲譽 範例
x:rep/tiny 3
  • 修正單一錯字或連結
  • 移除一行空行或新增一個換行
  • 修改或新增單一程式碼註解
x:rep/small 5
  • 修正單一測試案例、任務或範例
  • 修正單一檔案中的多個錯字或連結
  • 在檔案中新增幾行來說明內容
x:rep/medium 12
  • 讓練習與 problem-specifications 同步(含編輯)
  • 從零開始新增一或多個測試案例
  • 改善某個練習中的多個檔案
  • 從零開始為某個練習撰寫導師筆記
  • 修正測試執行器、分析器或呈現器中的小型錯誤
  • 為單一練習新增分析器註解
x:rep/large 30
  • 新增一個新的概念練習或實作練習
  • 新增概念文件
  • 大幅改寫現有的概念或練習
  • 新增 CI 指令碼或其他自動化流程
x:rep/massive 100
  • 從零開始建立測試執行器、分析器、呈現器或產生器
  • 對這些工具進行大規模重構
  • 從零開始撰寫大型文件(例如貢獻指南或測試指南)

上述範例可以大致作為套用哪個標籤的參考,但維護者可以自行判斷。

  • 預估花費的時間,應理解為一位_維護者_完成該 PR 平均所需的時間。
  • 如果指定了多個標籤,以聲譽數值最高的標籤決定可獲得的聲譽。
  • 如果 pull request 仍處於開啟狀態,則(還)不會獲得聲譽。
  • 如果 pull request 在_未合併_的情況下被關閉,則不會獲得聲譽。

為了向下相容,我們也支援使用x:size標籤來決定可獲得的聲譽。

審查 pull request

使用者每審查一個已合併或已關閉的 pull request,即可獲得5點聲譽。

  • 如果 pull request 仍處於開啟狀態,則(還)不會獲得聲譽。

  • 每位使用者對每個 pull request 只會獲得一次審查聲譽。

  • 開啟該 pull request 的使用者,_不會_因為審查自己的 pull request 而獲得聲譽。

  • 如果在 pull request 上加上下列其中一個標籤,審查 pull request 可獲得的聲譽會隨之改變:

    標籤 聲譽
    x:rep/tiny 1
    x:rep/small 2
    x:rep/medium 5
    x:rep/large 10
    x:rep/massive 20

    pull request 的作者與審查者_無法_使用不同的聲譽「大小」。 兩者都依據同一個x:rep標籤。

    如果指定了多個標籤,以聲譽數值最高的標籤決定可獲得的聲譽。

    為了向下相容,我們也支援使用x:size標籤來決定可獲得的聲譽。

合併 pull request

使用者每合併一個 pull request,即可獲得1點聲譽。

  • 如果 pull request 仍處於開啟狀態,則(還)不會獲得聲譽。
  • 如果 pull request 在_未合併_的情況下被關閉,則不會獲得聲譽。
  • 開啟該 pull request 的使用者,_不會_因為合併自己的 pull request 而獲得聲譽。
  • 如果該 pull request 沒有任何審查,則改為獲得5點聲譽。

開啟 issue

和 pull request 一樣,預設情況下,開啟 issue 時不會獲得任何聲譽。 和 pull request 不同的是,只有 large 或 massive 的 issue 才會獲得聲譽。

維護者可以依 issue 的內容,選擇為它加上下列其中一個標籤來給予聲譽:

標籤 聲譽 範例
x:rep/large 30
  • 完整規劃的概念練習
x:rep/massive 100
  • 設計 track 的課程大綱

上述範例可以大致作為套用哪個標籤的參考,但維護者可以自行判斷。

  • 聲譽應反映出_維護者_建立該 issue 所需投入的心力。

  • 如果指定了多個標籤,以聲譽數值最高的標籤決定可獲得的聲譽。