Stackoverflow初體驗 & 刷分心得

前言

某日筆者突然心血來潮,到Stackoverflow(SO)上找有沒有回答得了的問題,逛了一圈下來,發現SO上的小白還是挺多的。
筆者關注的是Python相關的問題,經常可以看到關於變數未命名,for循環這類比較基本的問題。
甚至還有些人發問貼出來的代碼都有語法錯誤。

所以儘管SO上高手雲集,也不全都是神仙,像筆者這樣不上不下的凡人,在SO上還是有生存空間的。
新手上SO雖然要謹記規範,但也不用太保守,如果找到了合適的問題,還是可以嘗試回答一下的。
筆者就靠著多回答問題,花了一個多禮拜,把reputation刷到了550分,附上截圖:

新手注意

剛上SO的新手可能會覺得這個網站不太友善。
因為SO有一個特別的機制,是可以讓用戶修改其它用戶的發文。
所以自己發的問題可能會不經同意就被不認識的人修改,而且發的回答也有可能被刪除。

並且SO上的人是不會因為你是新手就不踩你的。
常看到reputation只有個位數的新手發的問題才過了幾個小時,就己經有4,5個踩了。
這時候問題通常會被貼上on hold或duplicate標籤,於是其他人就無法回答你的問題了。

Reputation

在SO上,用戶的等級高低是以reputation(聲望值)來衡量的。
而reputation的獲得包括以下幾種方式:發文被頂、回答被採納、編輯其他用戶的發文等。

發文被頂

所謂的發文包括發問、回答問題及發表評論。
SO上有個很特別的地方,那就是發問也可以獲得reputation。
以下是發問、回答、評論三種發文,各自可以從投票中獲得的分數:

發問 回答 評論
每票得分 5 10 0

可以看到評論被頂是不會獲得分數的,在Reputation for comments?中,討論了SO如此規定的原因。

回答問題 - 只認功勞,不認苦勞

在SO上,回答問題是沒有基本分的。
任何回答只有被upvote(獲得10分)或者被採用(獲得15分),reputation才會上升。
這點跟CSDN很不一樣,所以在回答時要謹慎些,免得到處做白工。

編輯其他用戶的發文

前面有提到,SO上小白其實並不少。
常看到提問者貼出的程序中包含了不少語法錯誤。
還有些是問題敘述中的英文拼字錯誤及語法錯誤。

而SO有個特別的機制,就是可以編輯其他用戶的發文,修正他們提問(或回答)中的錯誤。

我們可以做的有:

  • 修正問題敘述中的typo
  • 讓代碼變得好看:去除多餘的空行、補上縮進。
  • 修正程序:讓雙引號、單引號或括號能正確配對。
  • 突出錯誤訊息
  • 添加tag

reputation低於2000的用戶,在編輯發文後,還需要經過peer review的過程。
edit suggestion的審核是三戰兩勝制,必須在有兩位審核者持相同意見的情況下,結果(接受或拒絕)才會成立。
而如果通過審核的話,編輯者可以得到2分的reputation。

筆者也曾提交過多次edit suggestion,但是有幾次被拒絕:

  1. 有一次是提問者貼出的代碼太亂,但筆者提交的內容是添加tag,審核者以This edit did not correct critical issues with the post為由駁回,並自己整理了提問者的代碼。
  2. 有一次是edit suggestion己經通過兩位審核者的評估,但是卻被提問者本人駁回。
  3. 還有一次是跟另外一個reputation較高的用戶在同時編輯同一個問題,因為他的優先度較高,並且與筆者提交的修改內容類似,於是筆者的提交內容就被駁回了。

回答被刪除

等級較高的使用者有權將其他使用者的回答刪除,但回答被刪除不見得是壞事。
因為一個回答被刪之前,通常至少被踩過一次,而被踩是要扣reputation的(-2)。
在回答被刪之後,之前扣的reputation就可以加回來。

問題被刪除

SO的提問者有權刪除自己的問題。
如果回答的問題被刪除,回答者因回答被採納而獲得的15分reputation也會跟著消失。

如果回答己經被頂了好幾次呢?這時候問題被刪會造成什麼影響呢?
在這篇問答:How does deleting work? What can cause a post to be deleted, and what does that actually mean? What are the criteria for deletion?裡提到了,如果一個問題有回答被投贊成票的話,那麼提問者便無法刪除該問題。

回答被取消接受

SO上有各種各樣神奇的機制,Unaccept便是其中之一。
也就是說,發問者在採納了某個回答之後,如果出現了更好的回答,發問者可以取消接受原來的答案,改採納另外一個。
這時候原回答者會因為這項操作而吐出當初得到的15分。

發問者帳戶被刪除

發問者帳戶被刪除,回答問題得到的reputation也跟著消失。

reputation來源總結 & 新手生存法則

上面提到了幾個獲得reputation的方法,這裡來總結一下筆者這一個多禮拜的reputation來源:
reputation初始值為1分。
編輯提交47次,得到94分。
回答16次被頂,得到160分。
回答13次被採納,得到195分。
開通多個相關社區的帳戶,得到Association Bonus,被贈予100分。

其中一個比較特別的是Association Bonus。
因為筆者除了註冊SO外,還註冊了MathematicsAsk UbuntuCross Validated這幾個相關的問答網站。
根據What is the association bonus?這個回答,如果用戶在某個問答平台的分數到達200分,該用戶在所有相關平台上都會獲得100分的Association Bonus。

從上面的總結可以看到,雖然編輯問題得到了將近100分,但是回答問題還是reputation來源的大宗。

因此新手可以靠多回答問題來獲取reputation,如果實在找不到回答得了的問題,也可以多編輯問題來獲取。
另外則是要多註冊幾個系列的網站,才能拿到100分的Association Bonus。

特權

一個帳戶在剛註冊時,只能提問或回答問題,其餘功能如評論、投票則是被鎖住的。
這些功能要在帳戶的reputation到達一定數字時,才可以獲得。
reputation與功能/特權對應的表格如下:

可以看到,一些基本的功能,如:投票要到15、評論則要到50才能使用。
其它比較有用的功能包括為回答設置賞金及投票反對,分別要到75及125才能使用。

在reputation到達500時,會有review queue的存取權(參考StackOverflow - Help Center - Access Review Queues)。
這時候用戶便有權對review queue的提問或者是回答進行審核。
審核發文是不會拿到reputation的,但是有可能會獲得勛章。
Why should I do review queues?有對SO中這種規則設定進行討論。
筆者曾幫忙審核review queue裡的發文,也因此獲得了三枚Custodian勛章。以下是Custodian勛章的描述:

Complete at least one review task. This badge is awarded once per review type.

另外比較有意思的是2000分的edit questions and answers,到了這個階級,編輯問題就可以不需經過審核,直接生效。
還有25000分的access to site analytics,這時候就可以查看SO網站本身的統計數據。

勛章

在SO上,完成特定的任務就會獲得勛章,上面提到的Custodian就是一例。
這些任務包括發問、回答問題、參與討論等,從StackOverflow - Help Center - Badges可以看到SO的所有勛章。

筆者最開始得到的勛章是以下這六個:
Organizer - First retag
Autobiographer - Complete “About Me” section of user profile
Teacher - Answer a question with score of 1 or more
Supporter - First up vote
Informed - Read the entire tour page
Editor - First edit

勛章分為金、銀、銅三種等級,越高等級的勛章越難拿到。
筆者得到的這六個勛章都是銅等級的,獲得條件相對容易。

勛章不一定是做了值得稱贊的事才會得到,也有一些是頒發給運氣不這麼好的人的:
像是Tumbleweed這個勛章,它的獲得條件是:

Asked a question with zero score, no answers, no comments, and low views for a week.

可以從中感受到滿滿的惡意。

參考連結

StackOverflow - Help Center - Privileges
Reputation for comments?
How does deleting work? What can cause a post to be deleted, and what does that actually mean? What are the criteria for deletion?
What is the association bonus?
StackOverflow - Help Center - Access Review Queues
Why should I do review queues?
StackOverflow - Help Center - Badges

猜你喜欢

转载自blog.csdn.net/keineahnung2345/article/details/86476628