怎樣提問
謹(jǐn)慎選擇論壇
小心選擇提問的場(chǎng)合。如果象下面描述的那樣,你很可能被忽略掉或者被看作失敗者: 1. 在風(fēng)馬牛不相及的論壇貼出你的問題 2. 在探討高級(jí)技巧的論壇張貼非常初級(jí)的問題;反之亦然 3. 在太多的不同新聞組交叉張貼
用辭貼切,語(yǔ)法正確,拼寫無誤
我們從經(jīng)驗(yàn)中發(fā)現(xiàn),粗心的寫作者通常也是馬虎的思考者(我敢打包票);卮鸫中拇笠庹叩膯栴}很不值得,我們寧愿把時(shí)間耗在別處。
正確的拼寫,標(biāo)點(diǎn)符號(hào)和大小寫很重要。更一般的說,如果你的提問寫得象個(gè)半文盲,你很有可能被忽視。
如果你在使用非母語(yǔ)的論壇提問,你可以犯點(diǎn)拼寫和語(yǔ)法上的小錯(cuò)但決不能在思考上馬虎(沒錯(cuò),我們能弄清兩者的分別)
使用含義豐富,描述準(zhǔn)確的標(biāo)題
在郵件列表或者新聞組中,大約50字以內(nèi)的主題標(biāo)題是抓住資深專家注意力的黃金時(shí)機(jī)。別用喋喋不休的“幫幫忙”(更別說“救命。。。。!”這樣讓人反感的話)來浪費(fèi)這個(gè)機(jī)會(huì)。不要妄想用你的痛苦程度來打動(dòng)我們,別用空格代替問題的描述,哪怕是極其簡(jiǎn)短的描述。
蠢問題:救命!我的膝上機(jī)不能正常顯示了!
聰明問題:XFree86 4.1下鼠標(biāo)光標(biāo)變形,F(xiàn)ooware MV1005的顯示芯片。
如果你在回復(fù)中提出問題,記得要修改內(nèi)容標(biāo)題,表明里面有一個(gè)問題。一個(gè)看起來象“Re:測(cè)試”或者“Re:新bug”的問題很難引起足夠重視。另外,引用并刪減前文的內(nèi)容,給新來的讀者留下線索。
精確描述,信息量大
1. 謹(jǐn)慎明確的描述癥狀。 2. 提供問題發(fā)生的環(huán)境(機(jī)器配置、操作系統(tǒng)、應(yīng)用程序以及別的什么)。 3. 說明你在提問前是怎樣去研究和理解這個(gè)問題的。 4. 說明你在提問前采取了什么步驟去解決它。 5. 羅列最近做過什么可能有影響的硬件、軟件變更。
盡量想象一個(gè)黑客會(huì)怎樣反問你,在提問的時(shí)候預(yù)先給他答案。
Simon Tatham寫過一篇名為《如何有效的報(bào)告Bug》的出色短文。強(qiáng)力推薦你也讀一讀。
話不在多
你需要提供精確有效的信息。這并不是要求你簡(jiǎn)單的把成噸的出錯(cuò)代碼或者數(shù)據(jù)完全轉(zhuǎn)儲(chǔ)摘錄到你的提問中。如果你有龐大而復(fù)雜的測(cè)試條件,盡量把它剪裁得越小越好。
這樣做的用處至少有三點(diǎn)。第一,表現(xiàn)出你為簡(jiǎn)化問題付出了努力,這可以使你得到回答的機(jī)會(huì)增加;第二,簡(jiǎn)化問題使你得到有用答案的機(jī)會(huì)增加;第三,在提煉你的bug報(bào)告的過程中,也許你自己就能找出問題所在或作出更正。
只說癥狀,不說猜想
告訴黑客們你認(rèn)為問題是怎樣引起的沒什么幫助。(如果你的推斷如此有效,還用向別人求助嗎?),因此要確信你原原本本告訴了他們問題的癥狀,不要加進(jìn)你自己的理解和推論。讓黑客們來診斷吧。
蠢問題:我在內(nèi)核編譯中一次又一次遇到SIG11錯(cuò)誤,我懷疑某條飛線搭在主板的走線上了,這種情況應(yīng)該怎樣檢查最好?
聰明問題:我自制的一套K6/233系統(tǒng),主板是FIC-PA2007 (VIA Apollo VP2芯片組),256MB Corsair PC133 SDRAM,在內(nèi)核編譯中頻頻產(chǎn)生SIG11錯(cuò)誤,從開機(jī)20分鐘以后就有這種情況,開機(jī)前20分鐘內(nèi)從沒發(fā)生過。重啟也沒有用,但是關(guān)機(jī)一晚上就又能工作20分鐘。所有內(nèi)存都換過了,沒有效果。相關(guān)部分的典型編譯記錄如下...。
按時(shí)間順序列出癥狀
對(duì)找出問題最有幫助的線索,往往就是問題發(fā)生前的一系列操作,因此,你的說明應(yīng)該包含操作步驟,以及電腦的反應(yīng),直到問題產(chǎn)生。
如果你的說明很長(zhǎng)(超過四個(gè)段落),在開頭簡(jiǎn)述問題會(huì)有所幫助,接下來按時(shí)間順序詳述。這樣黑客們就知道該在你的說明中找什么。
明白你想問什么
漫無邊際的提問近乎無休無止的時(shí)間黑洞。最能給你有用答案的人也正是最忙的人(他們忙是因?yàn)橐H自完成大部分工作)。這樣的人對(duì)無節(jié)制的時(shí)間黑洞不太感冒,因此也可以說他們對(duì)漫無邊際的提問不大感冒。
如果你明確表述需要回答者做什么(提供建議,發(fā)送一段代碼,檢查你的補(bǔ)丁或是別的),就最有可能得到有用的答案。這會(huì)定出一個(gè)時(shí)間和精力的上限,便于回答者集中精力來幫你,這很湊效。
要理解專家們生活的世界,要把專業(yè)技能想象為充裕的資源,而回復(fù)的時(shí)間則是貧乏的資源。解決你的問題需要的時(shí)間越少,越能從忙碌的專家口中掏出答案。
因此,優(yōu)化問題的結(jié)構(gòu),盡量減少專家們解決它所需要的時(shí)間,會(huì)有很大的幫助這通常和簡(jiǎn)化問題有所區(qū)別。因此,問“我想更好的理解X,能給點(diǎn)提示嗎?”通常比問“你能解釋一下X嗎?”更好。如果你的代碼不能工作,問問它有什么地方不對(duì),比要求別人替你修改要明智得多。
別問應(yīng)該自己解決的問題
黑客們總是善于分辨哪些問題應(yīng)該由你自己解決;因?yàn)槲覀冎械拇蠖鄶?shù)都曾自己解決這類問題。同樣,這些問題得由你來搞定,你會(huì)從中學(xué)到東西。
你可以要求給點(diǎn)提示,但別要求得到完整的解決方案。
去除無意義的疑問
別用無意義的話結(jié)束提問,例如“有人能幫我嗎?”或者“有答案嗎?”。
首先:如果你對(duì)問題的描述不很合適,這樣問更是畫蛇添足。其次:由于這樣問是畫蛇添足,黑客們會(huì)很厭煩你而且通常會(huì)用邏輯上正確的回答來表示他們的蔑視,例如:“沒錯(cuò),有人能幫你”或者“不,沒答案”。
謙遜絕沒有害處,而且常幫大忙
彬彬有禮,多用“請(qǐng)”和“先道個(gè)謝了”。讓大家都知道你對(duì)他們花費(fèi)時(shí)間義務(wù)提供幫助心存感激。
然而,如果你有很多問題無法解決,禮貌將會(huì)增加你得到有用答案的機(jī)會(huì)。(我們注意到,自從本指南發(fā)布后,從資深黑客處得到的唯一嚴(yán)重缺陷反饋,就是對(duì)預(yù)先道謝這一條。一些黑客覺得“先謝了”的言外之意是過后就不會(huì)再感謝任何人了。我們的建議是:都道謝。)
問題解決后,加個(gè)簡(jiǎn)短說明
問題解決后,向所有幫助過你的人發(fā)個(gè)說明,讓他們知道問題是怎樣解決的,并再一次向他們表示感謝。如果問題在新聞組或者郵件列表中引起了廣泛關(guān)注,應(yīng)該在那里貼一個(gè)補(bǔ)充說明。
補(bǔ)充說明不必很長(zhǎng)或是很深入;簡(jiǎn)單的一句“你好,原來是網(wǎng)線出了問題!謝謝大家Bill”比什么也不說要強(qiáng)。事實(shí)上,除非結(jié)論真的很有技術(shù)含量,否則簡(jiǎn)短可愛的小結(jié)比長(zhǎng)篇學(xué)術(shù)論文更好。說明問題是怎樣解決的,但大可不必將解決問題的過程復(fù)述一遍。
除了表示禮貌和反饋信息以外,這種補(bǔ)充有助于他人在郵件列表/新聞組/論壇中搜索對(duì)你有過幫助的完整解決方案,這可能對(duì)他們也很有用。
最后(至少?),這種補(bǔ)充有助于所有提供過幫助的人從中得到滿足感。
如果你自己不是老手或者黑客,那就相信我們,這種感覺對(duì)于那些你向他們求助的導(dǎo)師或者專家而言,是非常重要的。問題久拖未決會(huì)讓人灰心;黑客們渴望看到問題被解決。好人有好報(bào),滿足他們的渴望,你會(huì)在下次貼出新問題時(shí)嘗到甜頭。
還是不懂
如果你不是很理解答案,別立刻要求對(duì)方解釋。象你以前試著自己解決問題時(shí)那樣(利用手冊(cè),F(xiàn)AQ,網(wǎng)絡(luò),身邊的高手),去理解它。如果你真的需要對(duì)方解釋,記得表現(xiàn)出你已經(jīng)學(xué)到了點(diǎn)什么。
比方說,如果我回答你:“看來似乎是zEntry被阻塞了;你應(yīng)該先清除它。”,然后:一個(gè)很糟的后續(xù)問題:“zEntry是什么?”
聰明的問法應(yīng)該是這樣:“哦~~~我看過幫助了但是只有-z和-p兩個(gè)參數(shù)中提到了zEntry而且還都沒有清楚的解釋:<你是指這兩個(gè)中的哪一個(gè)嗎?還是我看漏了什么?”
出處:
責(zé)任編輯:風(fēng)狗
上一頁(yè) 提問之前 下一頁(yè) 三思而后問
|