快轉到主要內容

如何問個願意讓人回答的程式問題

·119 字·1 分鐘·
ChengHao Yang
作者
ChengHao Yang
SRE / CNCF Ambassador
目錄

有鑒於社團版上發問風氣不好,故此特發一篇新手教學「如何問個願意讓人回答的程式問題」 老手或電神請直接關掉或回上一頁

程式語言讀書會(X)拍賣會(?)
#

大約從 11 月初開始,常常冒出一些「哪裡出了問題呢」「怎麼跑不出來」「有哪個大大發現有那裡錯誤嗎」 貼出錯誤訊息、或者就在 FB 上「直接」貼程式碼 或者直接丟一句說「請問題目怎麼解」,貼出題目敘述 然後留言就幫忙回答(X)開始喊價(O)

嗯~其實想說的是,問問題的目的要做什麼? 你是希望:

  1. 理解原因、原理,並且獲得知識、解答
  2. 直接貼給我答案

如果你是選項 2.,你直接貼出價碼,乖乖付錢,找別人幫你寫就好 你也有你自己的專業,朋友想要請你做你專業的事情,還要免費付出,你會想接嗎? 「別人努力得到的,你憑什麼去免費取呢?」

如果你是選項 1.,那就看好這篇文章吧!

問題守則
#

每個人都可以問問題,不分難易都可以問 每個人都有新手時期,有問題會發問是正常的

1. 你想要做什麼結果?
#

說明你的目標,別人才知道要做什麼 程式題目要附上文件、解題連結 如果你是自己想寫的,說明跟要求盡量詳細

2. 現在跑出什麼情況?
#

錯誤X:只是打「怎麼跑不出來」「有哪個大大發現有那裡錯誤嗎」

這樣問問題只會讓別人覺得你是伸手牌,要請私人家教之類的請直接付錢

正確O:錯誤訊息詳列出來,錯誤訊息請事先 Google 找好,語法錯誤請參考該語言的範例程式,Google 方式請參考第 4 點

3. 你覺得是什麼問題?可能解法?
#

你一定會有當前的 Code 或當前的想法

如果是 OJ 解題者,應該會拿到 WA, TLE, MLE, RE 之類的錯誤 就請你把當前的想法打出來,不要只是說「我拿到了 WA」這類簡短語句

有程式碼也可以貼上來,貼上方式請參考第 5 點

4. Google 查了什麼?
#

這裡先不討論會不會 Google 搜尋(因為有些人不會,畢竟下關鍵字會稍微吃一點技巧)

這裡先教新手 Google 最簡單的方式:把錯誤訊息、錯誤代碼通通貼上去

如果你會 Google 的話,你可以把搜尋看到的東西放上來 哪一句話不懂、哪些覺得跟你的想像有差距都可以問

如果你不會 Google,也可以禮貌性詢問「請問這個知識點的關鍵字是什麼呢?」 (當然,如果你每個貼文都一直問很基礎的問題,別人也會覺得煩,也請盡快學會如何 Google 搜尋)

5. 程式碼排版
#

錯誤X:「直接貼在 FB 上」、「手機拍照」

你看了眼睛不會痛 但不代表別人眼睛不會痛 但不代表別人眼睛不會痛 但不代表別人眼睛不會痛 因為很重要所以說三次,可以讓別人舒服地看你的問題才是正確的

正確O:「放在貼 Code 網站」、「螢幕截圖」

以下網站都可以貼 Code,當然不只這些:

  1. https://ideone.com
  2. http://codepad.org/
  3. https://gist.github.com/
  4. https://pastebin.com/
  5. https://repl.it/

6. 問完不要刪文
#

也不算是守則,算是禮儀

有些新手會覺得問基礎問題很丟臉想刪掉 前面有說了,每個人都有新手時期,問簡單問題都沒關係

如果你刪文了,其實會給別人的感受不好 感覺像是被利用完就丟的感覺(想不到比較恰當的比喻@@)

問完問題最多可以直接關留言,但不要直接刪文

總結
#

至少不要讓別人覺得

遵守上述的原則,至少不會被討厭或被留言攻擊

維護社團風氣你我有責,共勉之!

後記
#

話說,為什麼不遵守原則的新手文,都這麼容易釣出電神?你有頭緒嗎?

相關文章