提問的智慧

好問題和壞問題

最後,我們通過幾個對照例子來說明什麼叫“聰明地提問”。同一個問題會以兩種方式出現:一種暴露出懶惰、傲慢或信息不足,另一種則展示了準備、邊界和可協作性。

閱讀這些例子時,不要只記住句式。真正重要的是背後的判斷標準:你是否說明了目標,是否展示了嘗試,是否給出了環境,是否把責任推給別人,是否讓回答者有足夠的信息繼續分析。

查找資料類問題

蠢問題

我可以在哪兒找到關於 Foonly Flurbamatic 的資料?

這種問法無非想得到 STFW 這樣的回答。

聰明問題

我用 Google 搜索過 "Foonly Flurbamatic 2600",但是沒找到有用的結果。誰知道上哪兒去找對這種設備編程的資料?

這個問題已經 STFW 過了,看起來他真的遇到了麻煩。

編譯失敗類問題

蠢問題

我從 foo 項目找來的源碼沒法編譯。它怎麼這麼爛?

他覺得都是別人的錯,這個傲慢自大的提問者。

聰明問題

foo 項目代碼在 Nulix 6.2 版下無法編譯通過。我讀過了 FAQ,但裡面沒有提到跟 Nulix 有關的問題。這是我編譯過程的記錄,我有什麼做的不對的地方嗎?

提問者已經指明瞭環境,也讀過了 FAQ,還列出了錯誤,並且他沒有把問題的責任推到別人頭上,他的問題值得被關注。

硬件或環境異常類問題

蠢問題

我的主機板有問題了,誰來幫我?

某黑客對這類問題的回答通常是:好的,還要幫你拍拍背和換尿布嗎?,然後按下刪除鍵。

聰明問題

我在 S2464 主機板上試過了 X 、 Y 和 Z ,但沒什麼作用,我又試了 A 、 B 和 C 。請注意當我嘗試 C 時的奇怪現象。顯然 florbish 正在 grommicking,但結果出人意料。通常在 Athlon MP 主機板上引起 grommicking 的原因是什麼?有誰知道接下來我該做些什麼測試才能找出問題?

這個傢伙,從另一個角度來看,值得去回答他。他表現出瞭解決問題的能力,而不是坐等天上掉答案。

“告訴我答案”與“指引我排查”

在最後一個問題中,注意告訴我答案給我啟示,指出我還應該做什麼診斷工作之間微妙而又重要的區別。

事實上,後一個問題源自於 2001 年 8 月在 Linux 內核郵件列表(lkml)上的一個真實的提問。我(Eric)就是那個提出問題的人。我在 Tyan S2464 主板上觀察到了這種無法解釋的鎖定現象,列表成員們提供瞭解決這一問題的重要信息。

通過我的提問方法,我給了別人可以咀嚼玩味的東西;我設法讓人們很容易參與並且被吸引進來。我顯示了自己具備和他們同等的能力,並邀請他們與我共同探討。通過告訴他們我所走過的彎路,以避免他們再浪費時間,我也表明了對他們寶貴時間的尊重。

例子背後的教訓

事後,當我向每個人表示感謝,並且讚賞這次良好的討論經歷的時候,一個 Linux 內核郵件列表的成員表示,他覺得我的問題得到解決並非由於我是這個列表中的人,而是因為我用了正確的方式來提問。

黑客從某種角度來說是擁有豐富知識但缺乏人情味的傢伙;我相信他是對的,如果我個乞討者那樣提問,不論我是誰,一定會惹惱某些人或者被他們忽視。他建議我記下這件事,這直接導致了本指南的出現。

一個好問題不保證一定有人回答,但它會顯著提高別人願意投入時間的概率。它傳達的不是“替我完成工作”,而是“我已經做了該做的準備,現在需要更有經驗的人幫助我繼續判斷”。