在黑客世界裏,當提出一個技術問題時,你能獲得怎樣的回答?這取決於挖出答案的難度,一樣取決於你提問的方法。本指南旨在幫助你提升發問技巧,以獲取你最想要的答案。
首先你必須明白,黑客們只偏心艱鉅的任務,或者能激發他們思惟的好問題。
如若否則,咱們還來幹嘛?若是你有值得咱們反覆咀嚼玩味的好問題,咱們自會對你感激涕零。好問題是激勵,是厚禮,能夠提升咱們的理解力,並且一般會暴露咱們之前從沒意識到或者思考過的問題。對黑客而言,「問得好!」是發自心裏的大力稱讚。
儘管黑客們有蔑視簡單問題和不友善的壞名聲,有時看起來彷佛咱們對新手,對知識貧乏者懷有敵意,但其實不是那樣的。
咱們不想掩飾對這樣一些人的蔑視--他們不肯思考,或者在發問前不去完成他們應該作的事。這種人只會謀殺時間--他們只願索取,從不付出,無故消耗咱們的時間,而咱們本能夠把時間用在更有趣的問題或者更值得回答的人身上。
咱們稱這樣的人爲「失敗者」(因爲歷史緣由,咱們有時把它拼做「lusers」)。
咱們在很大程度上屬於志願者,從繁忙的生活中抽出時間來解惑答疑,並且時常被提問淹沒。因此咱們無情的濾掉一些話題,特別是拋棄那些看起來象失敗者的傢伙,以便更高效的利用時間來回答勝利者的問題。
若是你以爲咱們過於傲慢的態度讓你不爽,讓你委屈,不妨設身處地想一想。咱們並無要求你向咱們屈服--事實上,咱們中的大多數人最喜歡公平交易不過了,只要你付出小小努力來知足最起碼的要求,咱們就會歡迎你加入到咱們的文化中來。但讓咱們幫助那些不肯意幫助本身的人是沒有意義的。若是你不能接受這種「歧視」,咱們建議你花點錢找家商業公司籤個技術支持協議得了,別向黑客乞求幫助。
若是你決定向咱們求助,固然不但願被視爲失敗者,更不肯成爲失敗者中的一 員。馬上獲得有效答案的最好方法,就是象勝利者那樣提問--聰明、自信、有解決問題的思路,只是偶爾在特定的問題上須要得到一點幫助。網絡
在經過電郵、新聞組或者聊天室提出技術問題前,檢查你有沒有作到:
1. 通讀手冊,試着本身找答案。
2. 在FAQ裏找答案(一份維護得好的FAQ能夠一應俱全:)。
3. 在網上搜索(我的推薦google~~~)。
4. 向你身邊精於此道的朋友打聽。
當你提出問題的時候,首先要說明在此以前你幹了些什麼;這將有助於樹立你的形象:你不是一個妄圖坐享其成的乞討者,不肯浪費別人的時間。若是提問者能從答案中學到東西,咱們更樂於回答他的問題。
周全的思考,準備好你的問題,草率的發問只能獲得草率的回答,或者根本得 不到任何答案。越表現出在尋求幫助前爲解決問題付出的努力,你越能獲得實質性的幫助。
當心別問錯了問題。若是你的問題基於錯誤的假設,普通黑客(J. RandomHacker)一般會用無心義的字?饈屠創鷥茨悖睦鏘胱擰按牢侍?..」,但願着你會從問題的回答(而非你想獲得的答案)中汲取教訓。
決不要自覺得夠資格獲得答案,你沒這種資格。畢竟你沒有爲這種服務支付任何報酬。你要本身去「掙」回一個答案,靠提出一個有內涵的,有趣的,有思惟激勵做用的問題--一個對社區的經驗有潛在貢獻的問題,而不只僅是被動的從他人處索要知識--去掙到這個答案。
另外一方面,代表你願意在找答案的過程當中作點什麼,是一個很是好的開端。
「誰能給點提示?」、「我這個例子裏缺了什麼?」以及「我應該檢查什麼地方?」比「請把確切的過程貼出來」更容易獲得答覆。由於你顯得只要有人指點正確的方向,你就有完成它的能力和決心。dom
當心選擇提問的場合。若是象下面描述的那樣,你極可能被忽略掉或者被看做失敗者:
1. 在風馬牛不相及的論壇貼出你的問題
2. 在探討高級技巧的論壇張貼很是初級的問題;反之亦然
3. 在太多的不一樣新聞組交*張貼測試
咱們從經驗中發現,粗心的寫做者一般也是馬虎的思考者(我敢打包票)。
回答粗枝大葉者的問題很不值得,咱們寧願把時間耗在別處。
正確的拼寫,標點符號和大小寫很重要。
更通常的說,若是你的提問寫得象個半文盲,你頗有可能被忽視。
若是你在使用非母語的論壇提問,你能夠犯點拼寫和語法上的小錯--但決不能
在思考上馬虎(沒錯,咱們能弄清二者的分別)搜索引擎
在郵件列表或者新聞組中,大約50字之內的主題標題是抓住資深專家注意力的黃金時機。別用喋喋不休的「幫幫忙」(更別說「救命啊!!!!!」這樣讓人反感的話)來浪費這個機會。不要妄想用你的痛苦程度來打動咱們,
別用空格代替問題的描述,哪怕是極其簡短的描述。
蠢問題:
救命啊!個人膝上機不能正常顯示了!
聰明問題:
XFree86 4.1下鼠標光標變形,Fooware MV1005的顯示芯片。
若是你在回覆中提出問題,記得要修改內容標題,代表裏面有一個問題。一個 看起來象「Re:測試」或者「Re:新bug」的問題很難引發足夠重視。另外,引 用並刪減前文的內容,給新來的讀者留下線索。google
1. 謹慎明確的描述症狀。
2. 提供問題發生的環境(機器配置、操做系統、應用程序以及別的什麼)。
3. 說明你在提問前是怎樣去研究和理解這個問題的。
4. 說明你在提問前採起了什麼步驟去解決它。
5. 羅列最近作過什麼可能有影響的硬件、軟件變動。
儘可能想象一個黑客會怎樣反問你,在提問的時候預先給他答案。
Simon Tatham寫過一篇名爲《如何有效的報告Bug》的出色短文。強力推薦你也讀一讀。spa
你須要提供精確有效的信息。這並非要求你簡單的把成噸的出錯代碼或者數據完 全轉儲摘錄到你的提問中。若是你有龐大而複雜的測試條件,儘可能把它剪裁得越小 越好。
這樣作的用處至少有三點。第一,表現出你爲簡化問題付出了努力,這可使你得 到回答的機會增長;第二,簡化問題使你獲得有用答案的機會增操作系統
彬彬有禮,多用「請」和「先道個謝了」。讓你們都知道你對他們花費時間提供幫助心存感激。
然而,若是你有不少問題沒法解決,禮貌將會增長你獲得有用答案的機會。
(咱們注意到,自從本指南發佈後,從資深黑客處獲得的惟一嚴重缺陷反饋,就是對預先道謝這一條。一些黑客以爲「先謝了」的言外之意是事後就不會再感謝任何人了。咱們的建議是:都道謝。)
------------------------
問題解決後,加個簡短說明
------------------------
問題解決後,向全部幫助過你的人發個說明,讓他們知道問題是怎樣解決 的,並再一次向他們表示感謝。若是問題在新聞組或者郵件列表中引發了 普遍關注,應該在那裏貼一個補充說明。
補充說明沒必要很長或是很深刻;簡單的一句「你好,原來是網線出了問題!謝謝你們--Bill」比什麼也不說要強。事實上,除非結論真的頗有技術含量,不然簡短可愛的小結比長篇學術論文更好。說明問題是怎樣解決的,但大可沒必要將解決問題的過程複述一遍。
除了表示禮貌和反饋信息之外,這種補充有助於他人在郵件列表/新聞組/論壇中搜索對你有過幫助的完整解決方案,這可能對他們也頗有用。
最後(至少?),這種補充有助於全部提供過幫助的人從中獲得知足感。
若是你本身不是老手或者黑客,那就相信咱們,這種感受對於那些你向他們求助的導師或者專家而言,是很是重要的。問題久拖未決會讓人灰心;黑客們渴望看到問題被解決。好人有好報,知足他們的渴望,你會在下次貼出新問題時嚐到甜頭。索引
若是你不是很理解答案,別馬上要求對方解釋。象你之前試着本身解決問題時那樣(利用手冊,FAQ,網絡,身邊的高手),去理解它。若是你真的須要對方解釋,記得表現出你已經學到了點什麼。
比方說,若是我回答你:「看來彷佛是zEntry被阻塞了;你應該先清
除它。」,而後:
一個很糟的後續問題:「zEntry是什麼?」
聰明的問法應該是這樣:「哦~~~我看過幫助了可是隻有-z和-p兩個
參數中提到了zEntry並且還都沒有清楚的解釋:<你是指這兩個中的
哪個嗎?仍是我看漏了什麼?」圖片
如下是幾個經典蠢問題,以及黑客在拒絕回答時的心中所想:
問題:我能在哪找到X程序?
問題:個人程序/配置/SQL申明沒有用
問題:個人Windows有問題,你能幫我嗎?
問題:我在安裝Linux(或者X)時有問題,你能幫我嗎?
問題:我怎麼才能破解root賬號/竊取OP特權/讀別人的郵件呢?
提問:我能在哪找到X程序?
回答:就在我找到它的地方啊蠢貨--搜索引擎的那一頭。天吶!
還有人不會用Google嗎?
提問:個人程序(配置、SQL申明)沒有用
回答:這不算是問題吧,我對找出你的真正問題沒興趣--若是要
我問你二十個問題才找得出來的話--我有更有意思的事要作呢。
在看到這類問題的時候,個人反應一般不外以下三種:
1. 你還有什麼要補充的嗎?
2. 真糟糕,但願你能搞定。
3. 這跟我有什麼鳥相關?
提問:個人Windows有問題,你能幫我嗎?
回答:能啊,扔掉萎軟的垃圾,換Linux吧。
提問:我在安裝Linux(或者X)時有問題,你能幫我嗎?
回答:不能,我只有親自在你的電腦上動手才能找到毛病。
仍是去找你當地的Linux用戶組尋求手把手的指導吧(你能在這兒找到用戶組的清單)。
提問:我怎麼才能破解root賬號/竊取OP特權/讀別人的郵件呢?
回答:想要這樣作,說明你是個卑鄙小人;想找個黑客幫你,說明你是個白癡!it
最後,我舉一些例子來講明,怎樣聰明的提問;同一個問題的兩種問法被放在一塊兒,一種是愚蠢的,另外一種纔是明智的。
蠢問題:我能夠在哪兒找到關於Foonly Flurbamatic的資料?
這種問法無非想獲得「STFW」這樣的回答
更多技術分享