提問(wèn)的智慧
How To Ask Questions The Smart Way
Copyright ? 2001,2006,2014 Eric S. Raymond, Rick Moen
本指南英文版版權(quán)為 Eric S. Raymond, Rick Moen 所有漓概。
原文網(wǎng)址:http://www.catb.org/~esr/faqs/smart-questions.html
Copyleft 2001 by D.H.Grand(nOBODY/Ginux), 2010 by Gasolin, 2015 by Ryan Wu
協(xié)助指出翻譯問(wèn)題蒿辙,****請(qǐng)發(fā) Issue枣察,或直接發(fā) Pull Request 給我邓馒。****
本文另有繁體中文版作谚。
原文版本歷史
目錄
- 聲明
- 簡(jiǎn)介
- 在提問(wèn)之前
-
當(dāng)你提問(wèn)時(shí)
- 慎選提問(wèn)的論壇
- Stack Overflow
- 網(wǎng)站和 IRC 論壇
- 第二步,使用項(xiàng)目郵件列表
- 使用有意義且描述明確的標(biāo)題
- 使問(wèn)題容易回復(fù)
- 用清晰硕勿、正確撬腾、精準(zhǔn)并合法語(yǔ)法的語(yǔ)句
- 使用易于讀取且標(biāo)準(zhǔn)的文件格式發(fā)送問(wèn)題
- 精確的描述問(wèn)題并言之有物
- 話不在多而在精
- 別動(dòng)輒聲稱(chēng)找到 Bug
- 可以低聲下氣,但還是要先做功課
- 描述問(wèn)題癥狀而非猜測(cè)
- 按發(fā)生時(shí)間先后列出問(wèn)題癥狀
- 描述目標(biāo)而不是過(guò)程
- 別要求使用私人電郵回復(fù)
- 清楚明確的表達(dá)你的問(wèn)題以及需求
- 詢(xún)問(wèn)有關(guān)代碼的問(wèn)題時(shí)
- 別把自己家庭作業(yè)的問(wèn)題貼上來(lái)
- 去掉無(wú)意義的提問(wèn)句
- 即使你很急也不要在標(biāo)題寫(xiě)緊急
- 禮多人不怪装黑,而且有時(shí)還很有幫助
- 問(wèn)題解決后耙替,加個(gè)簡(jiǎn)短的補(bǔ)充說(shuō)明
- 如何解讀答案
- 如何避免扮演失敗者
- 不該問(wèn)的問(wèn)題
- 好問(wèn)題與蠢問(wèn)題
- 如果得不到回答
- 如何更好地回答問(wèn)題
- 相關(guān)資源
- 鳴謝
聲明
許多項(xiàng)目在他們的使用協(xié)助/說(shuō)明網(wǎng)頁(yè)中鏈接了本指南,這么做很好曹体,我們也鼓勵(lì)大家都這么做俗扇。但如果你是負(fù)責(zé)管理這個(gè)項(xiàng)目網(wǎng)頁(yè)的人,請(qǐng)?jiān)诔溄痈浇娘@著位置上注明:
****本指南不提供此項(xiàng)目的實(shí)際支持服務(wù)箕别!****
我們已經(jīng)深刻領(lǐng)教到少了上述聲明所帶來(lái)的痛苦铜幽。因?yàn)樯倭诉@點(diǎn)聲明,我們不停地被一些白癡糾纏串稀。這些白癡認(rèn)為既然我們發(fā)布了這本指南除抛,那么我們就有責(zé)任解決世上所有的技術(shù)問(wèn)題。
如果你是因?yàn)樾枰承﹨f(xié)助而正在閱讀這本指南母截,并且最后離開(kāi)是因?yàn)榘l(fā)現(xiàn)從本指南作者們身上得不到直接的協(xié)助到忽,那么你就是我們所說(shuō)的那些白癡之一。別問(wèn)我們問(wèn)題,我們只會(huì)忽略你喘漏。我們?cè)谶@本指南中是教你如何從那些真正懂得你所遇到軟件或硬件問(wèn)題的人取得協(xié)助护蝶,而 99% 的情況下那不會(huì)是我們。除非你確定本指南的作者之一剛好是你所遇到的問(wèn)題領(lǐng)域的專(zhuān)家翩迈,否則請(qǐng)不要打擾我們持灰,這樣大家都會(huì)開(kāi)心一點(diǎn)。
簡(jiǎn)介
在黑客的世界里负饲,當(dāng)你拋出一個(gè)技術(shù)問(wèn)題時(shí)堤魁,最終是否能得到有用的回答,往往取決于你所提問(wèn)和追問(wèn)的方式返十。本指南將教你如何正確的提問(wèn)以獲得你滿(mǎn)意的答案妥泉。
不只是黑客,現(xiàn)在開(kāi)放源代碼(Open Source)軟件已經(jīng)相當(dāng)盛行洞坑,你常常也可以由其他有經(jīng)驗(yàn)的使用者身上得到好答案涛漂,這是件好事;使用者比起黑客來(lái)检诗,往往對(duì)那些新手常遇到的問(wèn)題更寬容一些。然而瓢剿,將有經(jīng)驗(yàn)的使用者視為黑客逢慌,并采用本指南所提的方法與他們溝通,同樣也是能從他們身上得到滿(mǎn)意回答的最有效方式间狂。
首先你應(yīng)該明白攻泼,黑客們喜愛(ài)有挑戰(zhàn)性的問(wèn)題,或者能激發(fā)我們思維的好問(wèn)題鉴象。如果我們并非如此忙菠,那我們也不會(huì)成為你想詢(xún)問(wèn)的對(duì)象。如果你給了我們一個(gè)值得反復(fù)咀嚼玩味的好問(wèn)題纺弊,我們自會(huì)對(duì)你感激不盡牛欢。好問(wèn)題是激勵(lì),是厚禮淆游。好問(wèn)題可以提高我們的理解力傍睹,而且通常會(huì)暴露我們以前從沒(méi)意識(shí)到或者思考過(guò)的問(wèn)題。對(duì)黑客而言犹菱,"好問(wèn)題拾稳!"是誠(chéng)摯的大力稱(chēng)贊。
盡管如此腊脱,黑客們有著蔑視或傲慢面對(duì)簡(jiǎn)單問(wèn)題的壞名聲访得,這有時(shí)讓我們看起來(lái)對(duì)新手、無(wú)知者似乎較有敵意陕凹,但其實(shí)不是那樣的悍抑。
我們不諱言我們對(duì)那些不愿思考鳄炉、或者在發(fā)問(wèn)前不做他們?cè)撟龅氖碌娜说拿镆暋D切┤耸菚r(shí)間殺手 -– 他們只想索取传趾,從不付出迎膜,消耗我們可用在更有趣的問(wèn)題或更值得回答的人身上的時(shí)間。我們稱(chēng)這樣的人為 失敗者(擼瑟)
(由于歷史原因浆兰,我們有時(shí)把它拼作 lusers
)磕仅。
我們意識(shí)到許多人只是想使用我們寫(xiě)的軟件,他們對(duì)學(xué)習(xí)技術(shù)細(xì)節(jié)沒(méi)有興趣簸呈。對(duì)大多數(shù)人而言榕订,電腦只是種工具,是種達(dá)到目的的手段而已蜕便。他們有自己的生活并且有更要緊的事要做劫恒。我們了解這點(diǎn),也從不指望每個(gè)人都對(duì)這些讓我們著迷的技術(shù)問(wèn)題感興趣轿腺。盡管如此两嘴,我們回答問(wèn)題的風(fēng)格是指向那些真正對(duì)此有興趣并愿意主動(dòng)參與解決問(wèn)題的人,這一點(diǎn)不會(huì)變族壳,也不該變憔辫。如果連這都變了,我們就是在降低做自己最擅長(zhǎng)的事情上的效率仿荆。
我們(在很大程度上)是自愿的贰您,從繁忙的生活中抽出時(shí)間來(lái)解答疑惑,而且時(shí)常被提問(wèn)淹沒(méi)拢操。所以我們無(wú)情的濾掉一些話題锦亦,特別是拋棄那些看起來(lái)像失敗者的家伙,以便更高效的利用時(shí)間來(lái)回答贏家(winner)
的問(wèn)題令境。
如果你厭惡我們的態(tài)度杠园,高高在上,或過(guò)于傲慢舔庶,不妨也設(shè)身處地想想返劲。我們并沒(méi)有要求你向我們屈服 -- 事實(shí)上,我們大多數(shù)人非常樂(lè)意與你平等地交流栖茉,只要你付出小小努力來(lái)滿(mǎn)足基本要求篮绿,我們就會(huì)歡迎你加入我們的文化。但讓我們幫助那些不愿意幫助自己的人是沒(méi)有效率的吕漂。無(wú)知沒(méi)有關(guān)系亲配,但裝白癡就是不行。
所以,你不必在技術(shù)上很在行才能吸引我們的注意吼虎,但你必須表現(xiàn)出能引導(dǎo)你變得在行的特質(zhì) -- 機(jī)敏犬钢、有想法、善于觀察思灰、樂(lè)于主動(dòng)參與解決問(wèn)題玷犹。如果你做不到這些使你與眾不同的事情,我們建議你花點(diǎn)錢(qián)找家商業(yè)公司簽個(gè)技術(shù)支持服務(wù)合同洒疚,而不是要求黑客個(gè)人無(wú)償?shù)貛椭恪?/p>
如果你決定向我們求助歹颓,當(dāng)然你也不希望被視為失敗者,更不愿成為失敗者中的一員油湖。能立刻得到快速并有效答案的最好方法巍扛,就是像贏家那樣提問(wèn) -- 聰明、自信乏德、有解決問(wèn)題的思路撤奸,只是偶爾在特定的問(wèn)題上需要獲得一點(diǎn)幫助。
(歡迎對(duì)本指南提出改進(jìn)意見(jiàn)喊括。你可以 email 你的建議至 esr@thyrsus.com 或 respond-auto@linuxmafia.com胧瓜。然而請(qǐng)注意,本文并非網(wǎng)絡(luò)禮節(jié)的通用指南郑什,而我們通常會(huì)拒絕無(wú)助于在技術(shù)論壇得到有用答案的建議府喳。)
在提問(wèn)之前
在你準(zhǔn)備要通過(guò)電子郵件、新聞群組或者聊天室提出技術(shù)問(wèn)題前蹦误,請(qǐng)先做到以下事情:
- 嘗試在你準(zhǔn)備提問(wèn)的論壇的舊文章中搜索答案。
- 嘗試上網(wǎng)搜索以找到答案肉津。
- 嘗試閱讀手冊(cè)以找到答案强胰。
- 嘗試閱讀常見(jiàn)問(wèn)題文件(FAQ)以找到答案。
- 嘗試自己檢查或試驗(yàn)以找到答案
- 向你身邊的強(qiáng)者朋友打聽(tīng)以找到答案妹沙。
- 如果你是程序開(kāi)發(fā)者偶洋,請(qǐng)嘗試閱讀源代碼以找到答案。
當(dāng)你提出問(wèn)題的時(shí)候距糖,請(qǐng)先表明你已經(jīng)做了上述的努力玄窝;這將有助于樹(shù)立你并不是一個(gè)不勞而獲且浪費(fèi)別人的時(shí)間的提問(wèn)者。如果你能一并表達(dá)在做了上述努力的過(guò)程中所學(xué)到的東西會(huì)更好悍引,因?yàn)槲覀兏鼧?lè)于回答那些表現(xiàn)出能從答案中學(xué)習(xí)的人的問(wèn)題恩脂。
運(yùn)用某些策略,比如先用 Google 搜索你所遇到的各種錯(cuò)誤信息(既搜索 Google 論壇趣斤,也搜索網(wǎng)頁(yè))俩块,這樣很可能直接就找到了能解決問(wèn)題的文件或郵件列表線索。即使沒(méi)有結(jié)果,在郵件列表或新聞組尋求幫助時(shí)加上一句 我在 Google 中搜過(guò)下列句子但沒(méi)有找到什么有用的東西
也是件好事玉凯,即使它只是表明了搜索引擎不能提供哪些幫助势腮。這么做(加上搜索過(guò)的字串)也讓遇到相似問(wèn)題的其他人能被搜索引擎引導(dǎo)到你的提問(wèn)來(lái)。
別著急漫仆,不要指望幾秒鐘的 Google 搜索就能解決一個(gè)復(fù)雜的問(wèn)題捎拯。在向?qū)<仪笾埃匍喿x一下常見(jiàn)問(wèn)題文件(FAQ)盲厌、放輕松署照、坐舒服一些,再花點(diǎn)時(shí)間思考一下這個(gè)問(wèn)題狸眼。相信我們藤树,他們能從你的提問(wèn)看出你做了多少閱讀與思考,如果你是有備而來(lái)拓萌,將更有可能得到解答岁钓。不要將所有問(wèn)題一股腦拋出,只因你的第一次搜索沒(méi)有找到答案(或者找到太多答案)微王。
準(zhǔn)備好你的問(wèn)題屡限,再將問(wèn)題仔細(xì)的思考過(guò)一遍,因?yàn)椴萋实陌l(fā)問(wèn)只能得到草率的回答炕倘,或者根本得不到任何答案钧大。越是能表現(xiàn)出在尋求幫助前你為解決問(wèn)題所付出的努力,你越有可能得到實(shí)質(zhì)性的幫助罩旋。
小心別問(wèn)錯(cuò)了問(wèn)題啊央。如果你的問(wèn)題基于錯(cuò)誤的假設(shè),某個(gè)普通黑客(J. Random Hacker)多半會(huì)一邊在心里想著蠢問(wèn)題…
涨醋, 一邊用無(wú)意義的字面解釋來(lái)答復(fù)你瓜饥,希望著你會(huì)從問(wèn)題的回答(而非你想得到的答案)中汲取教訓(xùn)。
絕不要自以為夠格得到答案浴骂,你沒(méi)有乓土;你并沒(méi)有。畢竟你沒(méi)有為這種服務(wù)支付任何報(bào)酬溯警。你將會(huì)是自己去掙到一個(gè)答案趣苏,靠提出有內(nèi)涵的、有趣的梯轻、有思維激勵(lì)作用的問(wèn)題 --一個(gè)有潛力能貢獻(xiàn)社區(qū)經(jīng)驗(yàn)的問(wèn)題食磕,而不僅僅是被動(dòng)的從他人處索取知識(shí)。
另一方面喳挑,表明你愿意在找答案的過(guò)程中做點(diǎn)什么是一個(gè)非常好的開(kāi)端芬为。誰(shuí)能給點(diǎn)提示涂屁?
飒泻、我的這個(gè)例子里缺了什么荤牍?
以及我應(yīng)該檢查什么地方
比請(qǐng)把我需要的確切的過(guò)程貼出來(lái)
更容易得到答復(fù)侯嘀。因?yàn)槟惚憩F(xiàn)出只要有人能指?jìng)€(gè)正確方向,你就有完成它的能力和決心询张。
當(dāng)你提問(wèn)時(shí)
慎選提問(wèn)的論壇
小心選擇你要提問(wèn)的場(chǎng)合孙乖。如果你做了下述的事情,你很可能被忽略掉或者被看作失敗者:
- 在與主題不合的論壇上貼出你的問(wèn)題
- 在探討進(jìn)階技術(shù)問(wèn)題的論壇張貼非常初級(jí)的問(wèn)題份氧;反之亦然
- 在太多的不同新聞群組上重復(fù)轉(zhuǎn)貼同樣的問(wèn)題(cross-post)
- 向既非熟人也沒(méi)有義務(wù)解決你問(wèn)題的人發(fā)送私人電郵
黑客會(huì)剔除掉那些搞錯(cuò)場(chǎng)合的問(wèn)題唯袄,以保護(hù)他們溝通的渠道不被無(wú)關(guān)的東西淹沒(méi)。你不會(huì)想讓這種事發(fā)生在自己身上的蜗帜。
因此恋拷,第一步是找到對(duì)的論壇。再說(shuō)一次厅缺,Google 和其它搜索引擎還是你的朋友蔬顾,用它們來(lái)找到與你遭遇到困難的軟硬件問(wèn)題最相關(guān)的網(wǎng)站。通常那兒都有常見(jiàn)問(wèn)題(FAQ)湘捎、郵件列表及相關(guān)說(shuō)明文件的鏈接诀豁。如果你的努力(包括閱讀 FAQ)都沒(méi)有結(jié)果,網(wǎng)站上也許還有報(bào)告 Bug(Bug-reporting)的流程或鏈接窥妇,如果是這樣舷胜,鏈過(guò)去看看。
向陌生的人或論壇發(fā)送郵件最可能是風(fēng)險(xiǎn)最大的事情活翩。舉例來(lái)說(shuō)烹骨,別假設(shè)一個(gè)提供豐富內(nèi)容的網(wǎng)頁(yè)的作者會(huì)想充當(dāng)你的免費(fèi)顧問(wèn)。不要對(duì)你的問(wèn)題是否會(huì)受到歡迎做太樂(lè)觀的估計(jì) -- 如果你不確定材泄,那就向別處發(fā)送沮焕,或者壓根別發(fā)。
在選擇論壇脸爱、新聞群組或郵件列表時(shí)遇汞,別太相信名字未妹,先看看 FAQ 或者許可書(shū)以弄清楚你的問(wèn)題是否切題簿废。發(fā)文前先翻翻已有的話題,這樣可以讓你感受一下那里的文化络它。事實(shí)上族檬,事先在新聞組或郵件列表的歷史記錄中搜索與你問(wèn)題相關(guān)的關(guān)鍵詞是個(gè)極好的主意,也許這樣就找到答案了化戳。即使沒(méi)有单料,也能幫助你歸納出更好的問(wèn)題埋凯。
別像機(jī)關(guān)槍似的一次"掃射"所有的幫助渠道,這就像大喊大叫一樣會(huì)使人不快扫尖。要一個(gè)一個(gè)地來(lái)白对。
搞清楚你的主題!最典型的錯(cuò)誤之一是在某種致力于跨平臺(tái)可移植的語(yǔ)言换怖、套件或工具的論壇中提關(guān)于 Unix 或 Windows 操作系統(tǒng)程序界面的問(wèn)題甩恼。如果你不明白為什么這是大錯(cuò),最好在搞清楚這之間差異之前什么也別問(wèn)沉颂。
一般來(lái)說(shuō)条摸,在仔細(xì)挑選的公共論壇中提問(wèn),會(huì)比在私有論壇中提同樣的問(wèn)題更容易得到有用的回答铸屉。有幾個(gè)理由可以支持這點(diǎn)钉蒲,一是看潛在的回復(fù)者有多少,二是看觀眾有多少彻坛。黑客較愿意回答那些能幫助到許多人的問(wèn)題顷啼。
可以理解的是,老練的黑客和一些熱門(mén)軟件的作者正在接受過(guò)多的錯(cuò)發(fā)信息小压。就像那根最后壓垮駱駝背的稻草一樣线梗,你的加入也有可能使情況走向極端 -- 已經(jīng)好幾次了,一些熱門(mén)軟件的作者從自己軟件的支持中抽身出來(lái)怠益,因?yàn)榘殡S而來(lái)涌入其私人郵箱的無(wú)用郵件變得無(wú)法忍受仪搔。
Stack Overflow
搜索,然后 在 Stack Exchange 問(wèn)蜻牢。
近年來(lái)烤咧,Stack Exchange community 社區(qū)已經(jīng)成為回答技術(shù)及其他問(wèn)題的主要渠道,尤其是那些開(kāi)放源碼的項(xiàng)目抢呆。
因?yàn)?Google 索引是即時(shí)的煮嫌,在看 Stack Exchange 之前先在 Google 搜索。有很高的機(jī)率某人已經(jīng)問(wèn)了一個(gè)類(lèi)似的問(wèn)題抱虐,而且 Stack Exchange 網(wǎng)站們往往會(huì)是搜索結(jié)果中最前面幾個(gè)昌阿。如果你在 Google 上沒(méi)有找到任何答案,你再到特定相關(guān)主題的網(wǎng)站去找恳邀。用標(biāo)簽(Tag)搜索能讓你更縮小你的搜索結(jié)果懦冰。
Stack Exchange 已經(jīng)成長(zhǎng)到超過(guò)一百個(gè)網(wǎng)站,以下是最常用的幾個(gè)站:
- Super User 是問(wèn)一些通用的電腦問(wèn)題谣沸,如果你的問(wèn)題跟代碼或是寫(xiě)程序無(wú)關(guān)刷钢,只是一些網(wǎng)絡(luò)連線之類(lèi)的,請(qǐng)到這里乳附。
- Stack Overflow 是問(wèn)寫(xiě)程序有關(guān)的問(wèn)題内地。
- Server Fault 是問(wèn)服務(wù)器和網(wǎng)管相關(guān)的問(wèn)題伴澄。
網(wǎng)站和 IRC 論壇
本地的使用者群組(user group),或者你所用的 Linux 發(fā)行版本也許正在宣傳他們的網(wǎng)頁(yè)論壇或 IRC 頻道阱缓,并提供新手幫助(在一些非英語(yǔ)國(guó)家非凌,新手論壇很可能還是郵件列表), 這些地方是開(kāi)始提問(wèn)的好首選荆针,特別是當(dāng)你覺(jué)得遇到的也許只是相對(duì)簡(jiǎn)單或者很普通的問(wèn)題時(shí)清焕。有廣告贊助的 IRC 頻道是公開(kāi)歡迎提問(wèn)的地方,通臣婪福可以即時(shí)得到回應(yīng)秸妥。
事實(shí)上,如果程序出的問(wèn)題只發(fā)生在特定 Linux 發(fā)行版提供的版本(這很常見(jiàn))沃粗,最好先去該發(fā)行版的論壇或郵件列表中提問(wèn)粥惧,再到程序本身的論壇或郵件列表提問(wèn)。(否則)該項(xiàng)目的黑客可能僅僅回復(fù) "用我們的版本"最盅。
在任何論壇發(fā)文以前突雪,先確認(rèn)一下有沒(méi)有搜索功能。如果有涡贱,就試著搜索一下問(wèn)題的幾個(gè)關(guān)鍵詞咏删,也許這會(huì)有幫助。如果在此之前你已做過(guò)通用的網(wǎng)頁(yè)搜索(你也該這樣做)问词,還是再搜索一下論壇督函,搜索引擎有可能沒(méi)來(lái)得及索引此論壇的全部?jī)?nèi)容。
通過(guò)論壇或 IRC 頻道來(lái)提供使用者支持服務(wù)有增長(zhǎng)的趨勢(shì)激挪,電子郵件則大多為項(xiàng)目開(kāi)發(fā)者間的交流而保留辰狡。所以最好先在論壇或 IRC 中尋求與該項(xiàng)目相關(guān)的協(xié)助。
在使用 IRC 的時(shí)候垄分,首先最好不要發(fā)布很長(zhǎng)的問(wèn)題描述宛篇,有些人稱(chēng)之為頻道洪水。最好通過(guò)一句話的問(wèn)題描述來(lái)開(kāi)始聊天薄湿。
第二步叫倍,使用項(xiàng)目郵件列表
當(dāng)某個(gè)項(xiàng)目提供開(kāi)發(fā)者郵件列表時(shí),要向列表而不是其中的個(gè)別成員提問(wèn)豺瘤,即使你確信他能最好地回答你的問(wèn)題吆倦。查一查項(xiàng)目的文件和首頁(yè),找到項(xiàng)目的郵件列表并使用它炉奴。有幾個(gè)很好的理由支持我們采用這種辦法:
- 任何好到需要向個(gè)別開(kāi)發(fā)者提出的問(wèn)題逼庞,也將對(duì)整個(gè)項(xiàng)目群組有益蛇更。反之瞻赶,如果你認(rèn)為自己的問(wèn)題對(duì)整個(gè)項(xiàng)目群組來(lái)說(shuō)太愚蠢赛糟,也不能成為騷擾個(gè)別開(kāi)發(fā)者的理由。
- 向列表提問(wèn)可以分散開(kāi)發(fā)者的負(fù)擔(dān)砸逊,個(gè)別開(kāi)發(fā)者(尤其是項(xiàng)目領(lǐng)導(dǎo)人)也許太忙以至于沒(méi)法回答你的問(wèn)題璧南。
- 大多數(shù)郵件列表都會(huì)被存檔,那些被存檔的內(nèi)容將被搜索引擎索引师逸。如果你向列表提問(wèn)并得到解答司倚,將來(lái)其它人可以通過(guò)網(wǎng)頁(yè)搜索找到你的問(wèn)題和答案,也就不用再次發(fā)問(wèn)了篓像。
- 如果某些問(wèn)題經(jīng)常被問(wèn)到动知,開(kāi)發(fā)者可以利用此信息來(lái)改進(jìn)說(shuō)明文件或軟件本身,以使其更清楚员辩。如果只是私下提問(wèn)盒粮,就沒(méi)有人能看到最常見(jiàn)問(wèn)題的完整場(chǎng)景。
如果一個(gè)項(xiàng)目既有"使用者" 也有"開(kāi)發(fā)者"(或"黑客")郵件列表或論壇奠滑,而你又不會(huì)動(dòng)到那些源代碼丹皱,那么就向"使用者"列表或論壇提問(wèn)。不要假設(shè)自己會(huì)在開(kāi)發(fā)者列表中受到歡迎宋税,那些人多半會(huì)將你的提問(wèn)視為干擾他們開(kāi)發(fā)的噪音摊崭。
然而,如果你確信你的問(wèn)題很特別杰赛,而且在"使用者" 列表或論壇中幾天都沒(méi)有回復(fù)呢簸,可以試試前往"開(kāi)發(fā)者"列表或論壇發(fā)問(wèn)。建議你在張貼前最好先暗地里觀察幾天以了解那里的行事方式(事實(shí)上這是參與任何私有或半私有列表的好主意)
如果你找不到一個(gè)項(xiàng)目的郵件列表乏屯,而只能查到項(xiàng)目維護(hù)者的電子郵件地址阔墩,盡管向他發(fā)信。即使是在這種情況下瓶珊,也別假設(shè)(項(xiàng)目)郵件列表不存在啸箫。在你的電子郵件中,請(qǐng)陳述你已經(jīng)試過(guò)但沒(méi)有找到合適的郵件列表伞芹,也提及你不反對(duì)將自己的郵件轉(zhuǎn)發(fā)給他人(許多人認(rèn)為忘苛,即使沒(méi)什么秘密,私人電子郵件也不應(yīng)該被公開(kāi)唱较。通過(guò)允許將你的電子郵件轉(zhuǎn)發(fā)他人扎唾,你給了相應(yīng)人員處置你郵件的選擇)。
使用有意義且描述明確的標(biāo)題
在郵件列表南缓、新聞群組或論壇中胸遇,大約 50 字以?xún)?nèi)的標(biāo)題是抓住資深專(zhuān)家注意力的好機(jī)會(huì)。別用喋喋不休的幫幫忙
汉形、跪求
纸镊、急
(更別說(shuō)救命氨恫!6和7逄隆!
這樣讓人反感的話凯旭,用這種標(biāo)題會(huì)被條件反射式地忽略)來(lái)浪費(fèi)這個(gè)機(jī)會(huì)概耻。不要妄想用你的痛苦程度來(lái)打動(dòng)我們,而應(yīng)該是在這點(diǎn)空間中使用極簡(jiǎn)單扼要的描述方式來(lái)提出問(wèn)題罐呼。
一個(gè)好標(biāo)題范例是目標(biāo) -- 差異
式的描述鞠柄,許多技術(shù)支持組織就是這樣做的。在目標(biāo)
部分指出是哪一個(gè)或哪一組東西有問(wèn)題嫉柴,在差異
部分則描述與期望的行為不一致的地方春锋。
蠢問(wèn)題:救命啊差凹!我的筆記本電腦不能正常顯示了期奔!
聰明問(wèn)題:X.org 6.8.1 的鼠標(biāo)光標(biāo)會(huì)變形,某牌顯卡 MV1005 芯片組危尿。
更聰明問(wèn)題:X.org 6.8.1 的鼠標(biāo)光標(biāo)呐萌,在某牌顯卡 MV1005 芯片組環(huán)境下 - 會(huì)變形。
編寫(xiě)目標(biāo) -- 差異
式描述的過(guò)程有助于你組織對(duì)問(wèn)題的細(xì)致思考谊娇。是什么被影響了肺孤? 僅僅是鼠標(biāo)光標(biāo)或者還有其它圖形?只在 X.org 的 X 版中出現(xiàn)济欢?或只是出現(xiàn)在 6.8.1 版中赠堵? 是針對(duì)某牌顯卡芯片組?或者只是其中的 MV1005 型號(hào)法褥? 一個(gè)黑客只需瞄一眼就能夠立即明白你的環(huán)境和你遇到的問(wèn)題茫叭。
總而言之,請(qǐng)想像一下你正在一個(gè)只顯示標(biāo)題的存檔討論串(Thread)索引中查尋半等。讓你的標(biāo)題更好地反映問(wèn)題揍愁,可使下一個(gè)搜索類(lèi)似問(wèn)題的人能夠關(guān)注這個(gè)討論串,而不用再次提問(wèn)相同的問(wèn)題杀饵。
如果你想在回復(fù)中提出問(wèn)題莽囤,記得要修改內(nèi)容標(biāo)題,以表明你是在問(wèn)一個(gè)問(wèn)題切距, 一個(gè)看起來(lái)像 Re: 測(cè)試
或者 Re: 新 bug
的標(biāo)題很難引起足夠重視朽缎。另外,在不影響連貫性之下,適當(dāng)引用并刪減前文的內(nèi)容话肖,能給新來(lái)的讀者留下線索北秽。
對(duì)于討論串,不要直接點(diǎn)擊回復(fù)來(lái)開(kāi)始一個(gè)全新的討論串狼牺,這將限制你的觀眾。因?yàn)橛行┼]件閱讀程序礼患,比如 mutt 是钥,允許使用者按討論串排序并通過(guò)折疊討論串來(lái)隱藏消息,這樣做的人永遠(yuǎn)看不到你發(fā)的消息缅叠。
僅僅改變標(biāo)題還不夠悄泥。mutt 和其它一些郵件閱讀程序還會(huì)檢查郵件標(biāo)題以外的其它信息,以便為其指定討論串肤粱。所以寧可發(fā)一個(gè)全新的郵件弹囚。
在網(wǎng)頁(yè)論壇上,好的提問(wèn)方式稍有不同领曼,因?yàn)橛懻摯c特定的信息緊密結(jié)合鸥鹉,并且通常在討論串外就看不到里面的內(nèi)容,故通過(guò)回復(fù)提問(wèn)庶骄,而非改變標(biāo)題是可接受的毁渗。不是所有論壇都允許在回復(fù)中出現(xiàn)分離的標(biāo)題,而且這樣做了基本上沒(méi)有人會(huì)去看单刁。不過(guò)灸异,通過(guò)回復(fù)提問(wèn),這本身就是曖昧的做法羔飞,因?yàn)樗鼈冎粫?huì)被正在查看該標(biāo)題的人讀到肺樟。所以,除非你只想在該討論串當(dāng)前活躍的人群中提問(wèn)逻淌,不然還是另起爐灶比較好么伯。
使問(wèn)題容易回復(fù)
以請(qǐng)將你的回復(fù)寄到……
來(lái)結(jié)束你的問(wèn)題多半會(huì)使你得不到回答。如果你覺(jué)得花幾秒鐘在郵件客戶(hù)端設(shè)置一下回復(fù)地址都麻煩卡儒,我們也覺(jué)得花幾秒鐘思考你的問(wèn)題更麻煩蹦狂。如果你的郵件程序不支持這樣做,換個(gè)好點(diǎn)的朋贬;如果是操作系統(tǒng)不支持這種郵件程序凯楔,也換個(gè)好點(diǎn)的。
在論壇锦募,要求通過(guò)電子郵件回復(fù)是非常無(wú)禮的摆屯,除非你相信回復(fù)的信息可能比較敏感(而且有人會(huì)為了某些未知的原因,只讓你而不是整個(gè)論壇知道答案)。如果你只是想在有人回復(fù)討論串時(shí)得到電子郵件提醒虐骑,可以要求網(wǎng)頁(yè)論壇發(fā)送給你准验。幾乎所有論壇都支持諸如追蹤此討論串
、有回復(fù)時(shí)發(fā)送郵件提醒
等功能廷没。
用清晰糊饱、正確、精準(zhǔn)并語(yǔ)法正確的語(yǔ)句
我們從經(jīng)驗(yàn)中發(fā)現(xiàn)颠黎,粗心的提問(wèn)者通常也會(huì)粗心的寫(xiě)程序與思考(我敢打包票)另锋。回答粗心大意者的問(wèn)題很不值得狭归,我們寧愿把時(shí)間耗在別處夭坪。
正確的拼字、標(biāo)點(diǎn)符號(hào)和大小寫(xiě)是很重要的过椎。一般來(lái)說(shuō)室梅,如果你覺(jué)得這樣做很麻煩,不想在乎這些疚宇,那我們也覺(jué)得麻煩亡鼠,不想在乎你的提問(wèn)》蟠花點(diǎn)額外的精力斟酌一下字句拆宛,用不著太僵硬與正式 -- 事實(shí)上,黑客文化很看重能準(zhǔn)確地使用非正式讼撒、俚語(yǔ)和幽默的語(yǔ)句浑厚。但它必須很準(zhǔn)確,而且有跡象表明你是在思考和關(guān)注問(wèn)題根盒。
正確地拼寫(xiě)钳幅、使用標(biāo)點(diǎn)和大小寫(xiě),不要將its
混淆為it's
炎滞,loose
搞成lose
或者將discrete
弄成discreet
敢艰。不要全部用大寫(xiě),這會(huì)被視為無(wú)禮的大聲嚷嚷(全部小寫(xiě)也好不到哪去册赛,因?yàn)椴灰组喿x钠导。Alan Cox 也許可以這樣做,但你不行森瘪。)
更白話的說(shuō)牡属,如果你寫(xiě)得像是個(gè)半文盲[譯注:小白],那多半得不到理睬扼睬。也不要使用即時(shí)通訊中的簡(jiǎn)寫(xiě)或火星文逮栅,如將的
簡(jiǎn)化為ㄉ
會(huì)使你看起來(lái)像一個(gè)為了少打幾個(gè)鍵而省字的小白。更糟的是,如果像個(gè)小孩似地鬼畫(huà)符那絕對(duì)是在找死措伐,可以肯定沒(méi)人會(huì)理你(或者最多是給你一大堆指責(zé)與挖苦)特纤。
如果在使用非母語(yǔ)的論壇提問(wèn),你可以犯點(diǎn)拼寫(xiě)和語(yǔ)法上的小錯(cuò)侥加,但決不能在思考上馬虎(沒(méi)錯(cuò)捧存,我們通常能弄清兩者的分別)。同時(shí)担败,除非你知道回復(fù)者使用的語(yǔ)言昔穴,否則請(qǐng)使用英語(yǔ)書(shū)寫(xiě)。繁忙的黑客一般會(huì)直接刪除用他們看不懂語(yǔ)言寫(xiě)的消息氢架。在網(wǎng)絡(luò)上英語(yǔ)是通用語(yǔ)言傻咖,用英語(yǔ)書(shū)寫(xiě)可以將你的問(wèn)題在尚未被閱讀就被直接刪除的可能性降到最低朋魔。
如果英文是你的外語(yǔ)(Second language)岖研,提示潛在回復(fù)者你有潛在的語(yǔ)言困難是很好的:
[譯注:以下附上原文以供使用]
English is not my native language; please excuse typing errors.
- 英文不是我的母語(yǔ),請(qǐng)?jiān)徫业腻e(cuò)字或語(yǔ)法
If you speak $LANGUAGE, please email/PM me;
I may need assistance translating my question.
- 如果你說(shuō)某語(yǔ)言警检,請(qǐng)寄信/私訊給我孙援;我需要有人協(xié)助我翻譯我的問(wèn)題
I am familiar with the technical terms,
but some slang expressions and idioms are difficult for me.
- 我對(duì)技術(shù)名詞很熟悉,但對(duì)于俗語(yǔ)或是特別用法比較不甚了解扇雕。
I've posted my question in $LANGUAGE and English.
I'll be glad to translate responses, if you only use one or the other.
- 我把我的問(wèn)題用某語(yǔ)言和英文寫(xiě)出來(lái)拓售,如果你只用一種語(yǔ)言回答,我會(huì)樂(lè)意將其翻譯成另一種镶奉。
使用易于讀取且標(biāo)準(zhǔn)的文件格式發(fā)送問(wèn)題
如果你人為地將問(wèn)題搞得難以閱讀础淤,它多半會(huì)被忽略,人們更愿讀易懂的問(wèn)題哨苛,所以:
- 使用純文字而不是 HTML (關(guān)閉 HTML 并不難)鸽凶。
- 使用 MIME 附件通常是可以的,前提是真正有內(nèi)容(譬如附帶的源代碼或 patch)建峭,而不僅僅是郵件程序生成的模板(譬如只是信件內(nèi)容的拷貝)玻侥。
- 不要發(fā)送一段文字只是一行句子但自動(dòng)換行后會(huì)變成多行的郵件(這使得回復(fù)部分內(nèi)容非常困難)。設(shè)想你的讀者是在 80 個(gè)字符寬的終端機(jī)上閱讀郵件亿蒸,最好設(shè)置你的換行分割點(diǎn)小于 80 字凑兰。
- 但是,對(duì)一些特殊的文件不要設(shè)置固定寬度(譬如日志檔案拷貝或會(huì)話記錄)边锁。數(shù)據(jù)應(yīng)該原樣包含姑食,讓回復(fù)者有信心他們看到的是和你看到的一樣的東西。
- 在英語(yǔ)論壇中茅坛,不要使用
Quoted-Printable
MIME 編碼發(fā)送消息矢门。這種編碼對(duì)于張貼非 ASCII 語(yǔ)言可能是必須的,但很多郵件程序并不支持這種編碼。當(dāng)它們處理?yè)Q行時(shí)祟剔,那些文本中四處散布的=20
符號(hào)既難看也分散注意力隔躲,甚至有可能破壞內(nèi)容的語(yǔ)意。 - 絕對(duì)物延,永遠(yuǎn)不要指望黑客們閱讀使用封閉格式編寫(xiě)的文檔宣旱,像微軟公司的 Word 或 Excel 文件等。大多數(shù)黑客對(duì)此的反應(yīng)就像有人將還在冒熱氣的豬糞倒在你家門(mén)口時(shí)你的反應(yīng)一樣叛薯。即便他們能夠處理浑吟,他們也很厭惡這么做。
- 如果你從使用 Windows 的電腦發(fā)送電子郵件耗溜,關(guān)閉微軟愚蠢的
智能引號(hào)
功能 (從[選項(xiàng)] > [校訂] > [自動(dòng)校正選項(xiàng)]组力,勾選掉智能引號(hào)
單選框),以免在你的郵件中到處散布垃圾字符抖拴。 - 在論壇燎字,勿濫用
表情符號(hào)
和HTML
功能(當(dāng)它們提供時(shí))。一兩個(gè)表情符號(hào)通常沒(méi)有問(wèn)題阿宅,但花哨的彩色文本傾向于使人認(rèn)為你是個(gè)無(wú)能之輩候衍。過(guò)濫地使用表情符號(hào)、色彩和字體會(huì)使你看來(lái)像個(gè)傻笑的小姑娘洒放。這通常不是個(gè)好主意蛉鹿,除非你只是對(duì)性而不是對(duì)答案感興趣。
如果你使用圖形用戶(hù)界面的郵件程序(如微軟公司的 Outlook 或者其它類(lèi)似的)往湿,注意它們的默認(rèn)設(shè)置不一定滿(mǎn)足這些要求妖异。大多數(shù)這類(lèi)程序有基于選單的查看源代碼
命令,用它來(lái)檢查發(fā)送文件夾中的郵件领追,以確保發(fā)送的是純文本文件同時(shí)沒(méi)有一些奇怪的字符他膳。
精確的描述問(wèn)題并言之有物
- 仔細(xì)、清楚地描述你的問(wèn)題或 Bug 的癥狀蔓腐。
- 描述問(wèn)題發(fā)生的環(huán)境(機(jī)器配置矩乐、操作系統(tǒng)、應(yīng)用程序回论、以及相關(guān)的信息)散罕,提供經(jīng)銷(xiāo)商的發(fā)行版和版本號(hào)(如:
Fedora Core 4
、Slackware 9.1
等)傀蓉。 - 描述在提問(wèn)前你是怎樣去研究和理解這個(gè)問(wèn)題的欧漱。
- 描述在提問(wèn)前為確定問(wèn)題而采取的診斷步驟。
- 描述最近做過(guò)什么可能相關(guān)的硬件或軟件變更葬燎。
- 盡可能的提供一個(gè)可以
重現(xiàn)這個(gè)問(wèn)題的可控環(huán)境
的方法误甚。
盡量去揣測(cè)一個(gè)黑客會(huì)怎樣反問(wèn)你缚甩,在你提問(wèn)之前預(yù)先將黑客們可能遇到的問(wèn)題回答一遍。
以上幾點(diǎn)中窑邦,當(dāng)你報(bào)告的是你認(rèn)為可能在代碼中的問(wèn)題時(shí)擅威,給黑客一個(gè)可以重現(xiàn)你的問(wèn)題的環(huán)境尤其重要只酥。當(dāng)你這么做時(shí)衣洁,你得到有效的回答的機(jī)會(huì)和速度都會(huì)大大的提升。
Simon Tatham 寫(xiě)過(guò)一篇名為《如何有效的報(bào)告 Bug》的出色文章昆稿。強(qiáng)力推薦你也讀一讀瞧筛。
話不在多而在精
你需要提供精確有內(nèi)容的信息厉熟。這并不是要求你簡(jiǎn)單的把成堆的出錯(cuò)代碼或者資料完全轉(zhuǎn)錄到你的提問(wèn)中。如果你有龐大而復(fù)雜的測(cè)試樣例能重現(xiàn)程序掛掉的情境较幌,盡量將它剪裁得越小越好揍瑟。
這樣做的用處至少有三點(diǎn)。
第一乍炉,表現(xiàn)出你為簡(jiǎn)化問(wèn)題付出了努力绢片,這可以使你得到回答的機(jī)會(huì)增加;
第二恩急,簡(jiǎn)化問(wèn)題使你更有可能得到有用的答案杉畜;
第三纪蜒,在精煉你的 bug 報(bào)告的過(guò)程中衷恭,你很可能就自己找到了解決方法或權(quán)宜之計(jì)。
別動(dòng)輒聲稱(chēng)找到 Bug
當(dāng)你在使用軟件中遇到問(wèn)題纯续,除非你非常随珠、非常的有根據(jù),不要?jiǎng)虞m聲稱(chēng)找到了 Bug猬错。提示:除非你能提供解決問(wèn)題的源代碼補(bǔ)丁窗看,或者提供回歸測(cè)試來(lái)表明前一版本中行為不正確,否則你都多半不夠完全確信倦炒。這同樣適用在網(wǎng)頁(yè)和文件显沈,如果你(聲稱(chēng))發(fā)現(xiàn)了文件的Bug
,你應(yīng)該能提供相應(yīng)位置的修正或替代文件逢唤。
請(qǐng)記得拉讯,還有許多其它使用者沒(méi)遇到你發(fā)現(xiàn)的問(wèn)題,否則你在閱讀文件或搜索網(wǎng)頁(yè)時(shí)就應(yīng)該發(fā)現(xiàn)了(你在抱怨前已經(jīng)做了這些鳖藕,是吧魔慷?)。這也意味著很有可能是你弄錯(cuò)了而不是軟件本身有問(wèn)題著恩。
編寫(xiě)軟件的人總是非常辛苦地使它盡可能完美院尔。如果你聲稱(chēng)找到了 Bug蜻展,也就是在質(zhì)疑他們的能力,即使你是對(duì)的邀摆,也有可能會(huì)冒犯到其中某部分人纵顾。當(dāng)你在標(biāo)題中嚷嚷著有Bug
時(shí),這尤其嚴(yán)重栋盹。
提問(wèn)時(shí)片挂,即使你私下非常確信已經(jīng)發(fā)現(xiàn)一個(gè)真正的 Bug,最好寫(xiě)得像是你做錯(cuò)了什么贞盯。如果真的有 Bug音念,你會(huì)在回復(fù)中看到這點(diǎn)。這樣做的話躏敢,如果真有 Bug闷愤,維護(hù)者就會(huì)向你道歉,這總比你惹惱別人然后欠別人一個(gè)道歉要好一點(diǎn)件余。
低聲下氣不能代替你的功課
有些人明白他們不該粗魯或傲慢的提問(wèn)并要求得到答復(fù)讥脐,但他們選擇另一個(gè)極端 -- 低聲下氣:我知道我只是個(gè)可悲的新手,一個(gè)擼瑟啼器,但...
旬渠。這既使人困擾,也沒(méi)有用端壳,尤其是伴隨著與實(shí)際問(wèn)題含糊不清的描述時(shí)更令人反感告丢。
別用原始靈長(zhǎng)類(lèi)動(dòng)物的把戲來(lái)浪費(fèi)你我的時(shí)間。取而代之的是损谦,盡可能清楚地描述背景條件和你的問(wèn)題情況岖免。這比低聲下氣更好地定位了你的位置。
有時(shí)網(wǎng)頁(yè)論壇會(huì)設(shè)有專(zhuān)為新手提問(wèn)的版面照捡,如果你真的認(rèn)為遇到了初學(xué)者的問(wèn)題颅湘,到那去就是了,但一樣別那么低聲下氣栗精。
描述問(wèn)題癥狀而非你的猜測(cè)
告訴黑客們你認(rèn)為問(wèn)題是怎樣造成的并沒(méi)什么幫助闯参。(如果你的推斷如此有效,還用向別人求助嗎悲立?)鹿寨,因此要確信你原原本本告訴了他們問(wèn)題的癥狀,而不是你的解釋和理論级历;讓黑客們來(lái)推測(cè)和診斷释移。如果你認(rèn)為陳述自己的猜測(cè)很重要,清楚地說(shuō)明這只是你的猜測(cè)寥殖,并描述為什么它們不起作用玩讳。
蠢問(wèn)題
我在編譯內(nèi)核時(shí)接連遇到 SIG11 錯(cuò)誤涩蜘,
我懷疑某條飛線搭在主板的走線上了,這種情況應(yīng)該怎樣檢查最好熏纯?
聰明問(wèn)題
我的組裝電腦是 FIC-PA2007 主機(jī)板搭載 AMD K6/233 CPU(威盛 Apollo VP2 芯片組)同诫,
256MB Corsair PC133 SDRAM 內(nèi)存,在編譯內(nèi)核時(shí)樟澜,從開(kāi)機(jī) 20 分鐘以后就頻頻產(chǎn)生 SIG11 錯(cuò)誤误窖,
但是在頭 20 分鐘內(nèi)從沒(méi)發(fā)生過(guò)相同的問(wèn)題。重新啟動(dòng)也沒(méi)有用秩贰,但是關(guān)機(jī)一晚上就又能工作 20 分鐘霹俺。
所有內(nèi)存都換過(guò)了,沒(méi)有效果毒费。相關(guān)部分的標(biāo)準(zhǔn)編譯記錄如下…丙唧。
由于以上這點(diǎn)似乎讓許多人覺(jué)得難以配合,這里有句話可以提醒你:所有的診斷專(zhuān)家都來(lái)自密蘇里州觅玻。
美國(guó)國(guó)務(wù)院的官方座右銘則是:讓我看看
(出自國(guó)會(huì)議員 Willard D. Vandiver 在 1899 年時(shí)的講話:我來(lái)自一個(gè)出產(chǎn)玉米想际,棉花,牛蒡和民主黨人的國(guó)家溪厘,滔滔雄辯既不能說(shuō)服我胡本,也不會(huì)讓我滿(mǎn)意。我來(lái)自密蘇里州畸悬,你必須讓我看看侧甫。
) 針對(duì)診斷者而言,這并不是一種懷疑傻昙,而只是一種真實(shí)而有用的需求闺骚,以便讓他們看到的是與你看到的原始證據(jù)盡可能一致的東西彩扔,而不是你的猜測(cè)與歸納的結(jié)論妆档。所以,大方的展示給我們看吧虫碉!
按發(fā)生時(shí)間先后列出問(wèn)題癥狀
問(wèn)題發(fā)生前的一系列操作贾惦,往往就是對(duì)找出問(wèn)題最有幫助的線索。因此敦捧,你的說(shuō)明里應(yīng)該包含你的操作步驟须板,以及機(jī)器和軟件的反應(yīng),直到問(wèn)題發(fā)生兢卵。在命令行處理的情況下习瑰,提供一段操作記錄(例如運(yùn)行腳本工具所生成的),并引用相關(guān)的若干行(如 20 行)記錄會(huì)非常有幫助秽荤。
如果掛掉的程序有診斷選項(xiàng)(如 -v 的詳述開(kāi)關(guān))甜奄,試著選擇這些能在記錄中增加調(diào)試信息的選項(xiàng)柠横。記住,多
不等于好
课兄。試著選取適當(dāng)?shù)恼{(diào)試級(jí)別以便提供有用的信息而不是讓讀者淹沒(méi)在垃圾中牍氛。
如果你的說(shuō)明很長(zhǎng)(如超過(guò)四個(gè)段落),在開(kāi)頭簡(jiǎn)述問(wèn)題烟阐,接下來(lái)再按時(shí)間順序詳述會(huì)有所幫助搬俊。這樣黑客們?cè)谧x你的記錄時(shí)就知道該注意哪些內(nèi)容了。
描述目標(biāo)而不是過(guò)程
如果你想弄清楚如何做某事(而不是報(bào)告一個(gè) Bug)蜒茄,在開(kāi)頭就描述你的目標(biāo)唉擂,然后才陳述重現(xiàn)你所卡住的特定步驟。
經(jīng)常尋求技術(shù)幫助的人在心中有個(gè)更高層次的目標(biāo)檀葛,而他們?cè)谧砸詾槟苓_(dá)到目標(biāo)的特定道路上被卡住了楔敌,然后跑來(lái)問(wèn)該怎么走,但沒(méi)有意識(shí)到這條路本身就有問(wèn)題驻谆。結(jié)果要費(fèi)很大的勁才能搞定卵凑。
蠢問(wèn)題
我怎樣才能從某繪圖程序的顏色選擇器中取得十六進(jìn)制的的 RGB 值?
聰明問(wèn)題
我正試著用替換一幅圖片的色碼(color table)成自己選定的色碼胜臊,我現(xiàn)在知道的唯一方法是編輯每個(gè)色碼區(qū)塊(table slot)勺卢,
但卻無(wú)法從某繪圖程序的顏色選擇器取得十六進(jìn)制的的 RGB 值。
第二種提問(wèn)法比較聰明象对,你可能得到像是建議采用另一個(gè)更合適的工具
的回復(fù)黑忱。
別要求使用私人電郵回復(fù)
黑客們認(rèn)為問(wèn)題的解決過(guò)程應(yīng)該公開(kāi)、透明勒魔,此過(guò)程中如果更有經(jīng)驗(yàn)的人注意到不完整或者不當(dāng)之處甫煞,最初的回復(fù)才能夠、也應(yīng)該被糾正冠绢。同時(shí)抚吠,作為提供幫助者可以得到一些獎(jiǎng)勵(lì),獎(jiǎng)勵(lì)就是他的能力和學(xué)識(shí)被其他同行看到弟胀。
當(dāng)你要求私下回復(fù)時(shí)楷力,這個(gè)過(guò)程和獎(jiǎng)勵(lì)都被中止。別這樣做孵户,讓回復(fù)者來(lái)決定是否私下回答 -- 如果他真這么做了萧朝,通常是因?yàn)樗J(rèn)為問(wèn)題編寫(xiě)太差或者太膚淺,以至于對(duì)其它人沒(méi)有興趣夏哭。
這條規(guī)則存在一條有限的例外检柬,如果你確信提問(wèn)可能會(huì)引來(lái)大量雷同的回復(fù)時(shí),那么這個(gè)神奇的提問(wèn)句會(huì)是向我發(fā)電郵竖配,我將為論壇歸納這些回復(fù)
何址。試著將郵件列表或新聞群組從洪水般的雷同回復(fù)中解救出來(lái)是非常有禮貌的 -- 但你必須信守諾言酱固。
清楚明確的表達(dá)你的問(wèn)題以及需求
漫無(wú)邊際的提問(wèn)是近乎無(wú)休無(wú)止的時(shí)間黑洞。最有可能給你有用答案的人通常也正是最忙的人(他們忙是因?yàn)橐H自完成大部分工作)头朱。這樣的人對(duì)無(wú)節(jié)制的時(shí)間黑洞相當(dāng)厭惡运悲,所以他們也傾向于厭惡那些漫無(wú)邊際的提問(wèn)。
如果你明確表述需要回答者做什么(如提供指點(diǎn)项钮、發(fā)送一段代碼班眯、檢查你的補(bǔ)丁、或是其他等等)烁巫,就最有可能得到有用的答案署隘。因?yàn)檫@會(huì)定出一個(gè)時(shí)間和精力的上限,便于回答者能集中精力來(lái)幫你亚隙。這么做很棒磁餐。
要理解專(zhuān)家們所處的世界,請(qǐng)把專(zhuān)業(yè)技能想像為充裕的資源阿弃,而回復(fù)的時(shí)間則是稀缺的資源诊霹。你要求他們奉獻(xiàn)的時(shí)間越少,你越有可能從真正專(zhuān)業(yè)而且很忙的專(zhuān)家那里得到解答渣淳。
所以脾还,界定一下你的問(wèn)題,使專(zhuān)家花在辨識(shí)你的問(wèn)題和回答所需要付出的時(shí)間減到最少入愧,這技巧對(duì)你有用答案相當(dāng)有幫助 -- 但這技巧通常和簡(jiǎn)化問(wèn)題有所區(qū)別鄙漏。因此,問(wèn)我想更好的理解 X棺蛛,可否指點(diǎn)一下哪有好一點(diǎn)說(shuō)明怔蚌?
通常比問(wèn)你能解釋一下 X 嗎?
更好旁赊。如果你的代碼不能運(yùn)作桦踊,通常請(qǐng)別人看看哪里有問(wèn)題,比要求別人替你改正要明智得多彤恶。
詢(xún)問(wèn)有關(guān)代碼的問(wèn)題時(shí)
別要求他人幫你調(diào)試有問(wèn)題的代碼钞钙,不提示一下應(yīng)該從何入手。張貼幾百行的代碼声离,然后說(shuō)一聲:它不能工作
會(huì)讓你完全被忽略。只貼幾十行代碼瘫怜,然后說(shuō)一句:在第七行以后术徊,我期待它顯示 <x>,但實(shí)際出現(xiàn)的是 <y>
比較有可能讓你得到回應(yīng)鲸湃。
最有效描述程序問(wèn)題的方法是提供最精簡(jiǎn)的 Bug 展示測(cè)試用例(bug-demonstrating test case)赠涮。什么是最精簡(jiǎn)的測(cè)試用例子寓?那是問(wèn)題的縮影;一小個(gè)程序片段能剛好展示出程序的異常行為笋除,而不包含其他令人分散注意力的內(nèi)容斜友。怎么制作最精簡(jiǎn)的測(cè)試用例?如果你知道哪一行或哪一段代碼會(huì)造成異常的行為垃它,復(fù)制下來(lái)并加入足夠重現(xiàn)這個(gè)狀況的代碼(例如鲜屏,足以讓這段代碼能被編譯/直譯/被應(yīng)用程序處理)。如果你無(wú)法將問(wèn)題縮減到一個(gè)特定區(qū)塊国拇,就復(fù)制一份代碼并移除不影響產(chǎn)生問(wèn)題行為的部分洛史。總之酱吝,測(cè)試用例越小越好(查看話不在多而在精一節(jié))也殖。
一般而言,要得到一段相當(dāng)精簡(jiǎn)的測(cè)試用例并不太容易务热,但永遠(yuǎn)先嘗試這樣做的是種好習(xí)慣忆嗜。這種方式可以幫助你了解如何自行解決這個(gè)問(wèn)題 —- 而且即使你的嘗試不成功,黑客們也會(huì)看到你在嘗試取得答案的過(guò)程中付出了努力崎岂,這可以讓他們更愿意與你合作霎褐。
如果你只是想讓別人幫忙審查(Review)一下代碼,在信的開(kāi)頭就要說(shuō)出來(lái)该镣,并且一定要提到你認(rèn)為哪一部分特別需要關(guān)注以及為什么冻璃。
別把自己家庭作業(yè)的問(wèn)題貼上來(lái)
黑客們很擅長(zhǎng)分辨哪些問(wèn)題是家庭作業(yè)式的問(wèn)題;因?yàn)槲覀冎械拇蠖鄶?shù)都曾自己解決這類(lèi)問(wèn)題损合。同樣省艳,這些問(wèn)題得由你來(lái)搞定,你會(huì)從中學(xué)到東西嫁审。你可以要求給點(diǎn)提示跋炕,但別要求得到完整的解決方案。
如果你懷疑自己碰到了一個(gè)家庭作業(yè)式的問(wèn)題律适,但仍然無(wú)法解決辐烂,試試在使用者群組,論壇或(最后一招)在項(xiàng)目的使用者郵件列表或論壇中提問(wèn)捂贿。盡管黑客們會(huì)看出來(lái)纠修,但一些有經(jīng)驗(yàn)的使用者也許仍會(huì)給你一些提示。
去掉無(wú)意義的提問(wèn)句
避免用無(wú)意義的話結(jié)束提問(wèn)厂僧,例如有人能幫我嗎扣草?
或者這有答案嗎?
。
首先:如果你對(duì)問(wèn)題的描述不是很好辰妙,這樣問(wèn)更是畫(huà)蛇添足鹰祸。
其次:由于這樣問(wèn)是畫(huà)蛇添足,黑客們會(huì)很厭煩你 -- 而且通常會(huì)用邏輯上正確密浑,但毫無(wú)意義的回答來(lái)表示他們的蔑視蛙婴, 例如:沒(méi)錯(cuò),有人能幫你
或者不尔破,沒(méi)答案
街图。
一般來(lái)說(shuō),避免用 是或否
呆瞻、對(duì)或錯(cuò)
台夺、有或沒(méi)有
類(lèi)型的問(wèn)句,除非你想得到是或否類(lèi)型的回答痴脾。
即使你很急也不要在標(biāo)題寫(xiě)緊急
這是你的問(wèn)題颤介,不是我們的。宣稱(chēng)緊急
極有可能事與愿違:大多數(shù)黑客會(huì)直接刪除無(wú)禮和自私地企圖即時(shí)引起關(guān)注的問(wèn)題赞赖。更嚴(yán)重的是滚朵,緊急
這個(gè)字(或是其他企圖引起關(guān)注的標(biāo)題)通常會(huì)被垃圾信過(guò)濾器過(guò)濾掉 -- 你希望能看到你問(wèn)題的人可能永遠(yuǎn)也看不到。
有半個(gè)例外的情況是前域,如果你是在一些很高調(diào)辕近,會(huì)使黑客們興奮的地方,也許值得這樣去做匿垄。在這種情況下移宅,如果你有時(shí)間壓力,也很有禮貌地提到這點(diǎn)椿疗,人們也許會(huì)有興趣回答快一點(diǎn)漏峰。
當(dāng)然,這風(fēng)險(xiǎn)很大届榄,因?yàn)楹诳蛡兣d奮的點(diǎn)多半與你的不同浅乔。譬如從 NASA 國(guó)際空間站(International Space Station)發(fā)這樣的標(biāo)題沒(méi)有問(wèn)題,但用自我感覺(jué)良好的慈善行為或政治原因發(fā)肯定不行铝条。事實(shí)上靖苇,張貼諸如緊急:幫我救救這個(gè)毛絨絨的小海豹!
肯定讓你被黑客忽略或惹惱他們班缰,即使他們認(rèn)為毛絨絨的小海豹很重要贤壁。
如果你覺(jué)得這點(diǎn)很不可思議,最好再把這份指南剩下的內(nèi)容多讀幾遍鲁捏,直到你弄懂了再發(fā)文芯砸。
禮多人不怪萧芙,而且有時(shí)還很有幫助
彬彬有禮给梅,多用請(qǐng)
和謝謝您的關(guān)注
假丧,或謝謝你的關(guān)照
。讓大家都知道你對(duì)他們花時(shí)間免費(fèi)提供幫助心存感激动羽。
坦白說(shuō)包帚,這一點(diǎn)并沒(méi)有比清晰、正確运吓、精準(zhǔn)并合法語(yǔ)法和避免使用專(zhuān)用格式重要(也不能取而代之)渴邦。黑客們一般寧可讀有點(diǎn)唐突但技術(shù)上鮮明的 Bug 報(bào)告,而不是那種有禮但含糊的報(bào)告拘哨。(如果這點(diǎn)讓你不解谋梭,記住我們是按問(wèn)題能教給我們什么來(lái)評(píng)價(jià)問(wèn)題的價(jià)值的)
然而,如果你有一串的問(wèn)題待解決倦青,客氣一點(diǎn)肯定會(huì)增加你得到有用回應(yīng)的機(jī)會(huì)瓮床。
(我們注意到,自從本指南發(fā)布后产镐,從資深黑客那里得到的唯一嚴(yán)重缺陷反饋隘庄,就是對(duì)預(yù)先道謝這一條。一些黑客覺(jué)得先謝了
意味著事后就不用再感謝任何人的暗示癣亚。我們的建議是要么先說(shuō)先謝了
丑掺,然后事后再對(duì)回復(fù)者表示感謝,或者換種方式表達(dá)感激述雾,譬如用謝謝你的關(guān)注
或謝謝你的關(guān)照
街州。)
問(wèn)題解決后,加個(gè)簡(jiǎn)短的補(bǔ)充說(shuō)明
問(wèn)題解決后玻孟,向所有幫助過(guò)你的人發(fā)個(gè)說(shuō)明唆缴,讓他們知道問(wèn)題是怎樣解決的,并再一次向他們表示感謝取募。如果問(wèn)題在新聞組或者郵件列表中引起了廣泛關(guān)注琐谤,應(yīng)該在那里貼一個(gè)說(shuō)明比較恰當(dāng)。
最理想的方式是向最初提問(wèn)的話題回復(fù)此消息玩敏,并在標(biāo)題中包含已修正
斗忌,已解決
或其它同等含義的明顯標(biāo)記。在人來(lái)人往的郵件列表里旺聚,一個(gè)看見(jiàn)討論串問(wèn)題 X
和問(wèn)題 X - 已解決
的潛在回復(fù)者就明白不用再浪費(fèi)時(shí)間了(除非他個(gè)人覺(jué)得問(wèn)題 X
的有趣)织阳,因此可以利用此時(shí)間去解決其它問(wèn)題。
補(bǔ)充說(shuō)明不必很長(zhǎng)或是很深入砰粹;簡(jiǎn)單的一句你好唧躲,原來(lái)是網(wǎng)線出了問(wèn)題!謝謝大家 – Bill
比什么也不說(shuō)要來(lái)的好。事實(shí)上弄痹,除非結(jié)論真的很有技術(shù)含量饭入,否則簡(jiǎn)短可愛(ài)的小結(jié)比長(zhǎng)篇大論更好。說(shuō)明問(wèn)題是怎樣解決的肛真,但大可不必將解決問(wèn)題的過(guò)程復(fù)述一遍谐丢。
對(duì)于有深度的問(wèn)題,張貼調(diào)試記錄的摘要是有幫助的蚓让。描述問(wèn)題的最終狀態(tài)乾忱,說(shuō)明是什么解決了問(wèn)題,在此之后才指明可以避免的盲點(diǎn)历极。避免盲點(diǎn)的部分應(yīng)放在正確的解決方案和其它總結(jié)材料之后窄瘟,而不要將此信息搞成偵探推理小說(shuō)。列出那些幫助過(guò)你的名字趟卸,會(huì)讓你交到更多朋友蹄葱。
除了有禮貌和有內(nèi)涵以外,這種類(lèi)型的補(bǔ)充也有助于他人在郵件列表/新聞群組/論壇中搜索到真正解決你問(wèn)題的方案衰腌,讓他們也從中受益新蟆。
至少,這種補(bǔ)充有助于讓每位參與協(xié)助的人因問(wèn)題的解決而從中得到滿(mǎn)足感右蕊。如果你自己不是技術(shù)專(zhuān)家或者黑客琼稻,那就相信我們,這種感覺(jué)對(duì)于那些你向他們求助的大師或者專(zhuān)家而言饶囚,是非常重要的帕翻。問(wèn)題懸而未決會(huì)讓人灰心;黑客們渴望看到問(wèn)題被解決萝风。好人有好報(bào)嘀掸,滿(mǎn)足他們的渴望,你會(huì)在下次提問(wèn)時(shí)嘗到甜頭规惰。
思考一下怎樣才能避免他人將來(lái)也遇到類(lèi)似的問(wèn)題睬塌,自問(wèn)寫(xiě)一份文件或加個(gè)常見(jiàn)問(wèn)題(FAQ)會(huì)不會(huì)有幫助。如果是的話就將它們發(fā)給維護(hù)者歇万。
在黑客中揩晴,這種良好的后繼行動(dòng)實(shí)際上比傳統(tǒng)的禮節(jié)更為重要,也是你如何透過(guò)善待他人而贏得聲譽(yù)的方式贪磺,這是非常有價(jià)值的資產(chǎn)硫兰。
如何解讀答案
<a id="RTFM"></a>
RTFM 和 STFW:如何知道你已完全搞砸了
有一個(gè)古老而神圣的傳統(tǒng):如果你收到RTFM (Read The Fucking Manual)
的回應(yīng),回答者認(rèn)為你應(yīng)該去讀他媽的手冊(cè)寒锚。當(dāng)然劫映,基本上他是對(duì)的违孝,你應(yīng)該去讀一讀。
RTFM 有一個(gè)年輕的親戚泳赋。如果你收到STFW(Search The Fucking Web)
的回應(yīng)雌桑,回答者認(rèn)為你應(yīng)該到他媽的網(wǎng)上搜索過(guò)了。那人多半也是對(duì)的摹蘑,去搜索一下吧筹燕。(更溫和一點(diǎn)的說(shuō)法是 Google 是你的朋友T伞)
在論壇衅鹿,你也可能被要求去爬爬論壇的舊文。事實(shí)上过咬,有人甚至可能熱心地為你提供以前解決此問(wèn)題的討論串大渤。但不要依賴(lài)這種關(guān)照,提問(wèn)前應(yīng)該先搜索一下舊文掸绞。
通常泵三,用這兩句之一回答你的人會(huì)給你一份包含你需要內(nèi)容的手冊(cè)或者一個(gè)網(wǎng)址,而且他們打這些字的時(shí)候也正在讀著衔掸。這些答復(fù)意味著回答者認(rèn)為
- 你需要的信息非常容易獲得烫幕;
- 你自己去搜索這些信息比灌給你,能讓你學(xué)到更多敞映。
你不應(yīng)該因此不爽较曼;依照黑客的標(biāo)準(zhǔn),他已經(jīng)表示了對(duì)你一定程度的關(guān)注振愿,而沒(méi)有對(duì)你的要求視而不見(jiàn)捷犹。你應(yīng)該對(duì)他祖母般的慈祥表示感謝。
如果還是搞不懂
如果你看不懂回應(yīng)冕末,別立刻要求對(duì)方解釋萍歉。像你以前試著自己解決問(wèn)題時(shí)那樣(利用手冊(cè),F(xiàn)AQ档桃,網(wǎng)絡(luò)枪孩,身邊的高手),先試著去搞懂他的回應(yīng)藻肄。如果你真的需要對(duì)方解釋?zhuān)浀帽憩F(xiàn)出你已經(jīng)從中學(xué)到了點(diǎn)什么蔑舞。
比方說(shuō),如果我回答你:看來(lái)似乎是 zentry 卡住了仅炊;你應(yīng)該先清除它斗幼。
,然后抚垄,這是一個(gè)很糟的后續(xù)問(wèn)題回應(yīng):zentry 是什么蜕窿?
好的問(wèn)法應(yīng)該是這樣:哦~~~我看過(guò)說(shuō)明了但是只有 -z 和 -p 兩個(gè)參數(shù)中提到了 zentries谋逻,而且還都沒(méi)有清楚的解釋如何清除它。你是指這兩個(gè)中的哪一個(gè)嗎桐经?還是我看漏了什么毁兆?
處理無(wú)禮的回應(yīng)
很多黑客圈子中看似無(wú)禮的行為并不是存心冒犯。相反阴挣,它是直接了當(dāng)人弓,一針見(jiàn)血式的交流風(fēng)格脸侥,這種風(fēng)格更注重解決問(wèn)題,而不是使人感覺(jué)舒服而卻模模糊糊。
如果你覺(jué)得被冒犯了若贮,試著平靜地反應(yīng)猪贪。如果有人真的做了出格的事诸迟,郵件列表塔鳍、新聞群組或論壇中的前輩多半會(huì)招呼他。如果這沒(méi)有發(fā)生而你卻發(fā)火了拜隧,那么你發(fā)火對(duì)象的言語(yǔ)可能在黑客社區(qū)中看起來(lái)是正常的宿百,而你將被視為有錯(cuò)的一方,這將傷害到你獲取信息或幫助的機(jī)會(huì)洪添。
另一方面垦页,你偶爾真的會(huì)碰到無(wú)禮和無(wú)聊的言行。與上述相反干奢,對(duì)真正的冒犯者狠狠地打擊痊焊,用犀利的語(yǔ)言將其駁得體無(wú)完膚都是可以接受的。然而律胀,在行事之前一定要非常非常的有根據(jù)宋光。糾正無(wú)禮的言論與開(kāi)始一場(chǎng)毫無(wú)意義的口水戰(zhàn)僅一線之隔,黑客們自己莽撞地越線的情況并不鮮見(jiàn)炭菌。如果你是新手或外人罪佳,避開(kāi)這種莽撞的機(jī)會(huì)并不高。如果你想得到的是信息而不是消磨時(shí)光黑低,這時(shí)最好不要把手放在鍵盤(pán)上以免冒險(xiǎn)赘艳。
(有些人斷言很多黑客都有輕度的自閉癥或亞斯伯格綜合癥,缺少用于潤(rùn)滑人類(lèi)社會(huì)正常交往所需的神經(jīng)克握。這既可能是真也可能是假的蕾管。如果你自己不是黑客,興許你認(rèn)為我們腦袋有問(wèn)題還能幫助你應(yīng)付我們的古怪行為菩暗。只管這么干好了掰曾,我們不在乎。我們喜歡我們現(xiàn)在這個(gè)樣子停团,并且通常對(duì)病患標(biāo)記都有站得住腳的懷疑旷坦。)
Jeff Bigler 的觀察總結(jié)和這個(gè)相關(guān)也值得一讀 (tact filters)掏熬。
在下一節(jié),我們會(huì)談到另一個(gè)問(wèn)題秒梅,當(dāng)你行為不當(dāng)時(shí)所會(huì)受到的冒犯
旗芬。
如何避免扮演失敗者
在黑客社區(qū)的論壇中有那么幾次你可能會(huì)搞砸 -- 以本指南所描述到的或類(lèi)似的方式。而你會(huì)在公開(kāi)場(chǎng)合中被告知你是如何搞砸的捆蜀,也許攻擊的言語(yǔ)中還會(huì)帶點(diǎn)夾七夾八的顏色疮丛。
這種事發(fā)生以后,你能做的最糟糕的事莫過(guò)于哀嚎你的遭遇辆它、宣稱(chēng)被口頭攻擊誊薄、要求道歉、高聲尖叫娩井、憋悶氣暇屋、威脅訴諸法律、向其雇主報(bào)怨洞辣、忘了關(guān)馬桶蓋等等。相反地昙衅,你該這么做:
熬過(guò)去扬霜,這很正常。事實(shí)上而涉,它是有益健康且合理的著瓶。
社區(qū)的標(biāo)準(zhǔn)不會(huì)自行維持,它們是通過(guò)參與者積極而公開(kāi)地執(zhí)行來(lái)維持的啼县。不要哭嚎所有的批評(píng)都應(yīng)該通過(guò)私下的郵件傳送材原,它不是這樣運(yùn)作的。當(dāng)有人評(píng)論你的一個(gè)說(shuō)法有誤或者提出不同看法時(shí)季眷,堅(jiān)持聲稱(chēng)受到個(gè)人攻擊也毫無(wú)益處余蟹,這些都是失敗者的態(tài)度。
也有其它的黑客論壇子刮,受過(guò)高禮節(jié)要求的誤導(dǎo)威酒,禁止參與者張貼任何對(duì)別人帖子挑毛病的消息,并聲稱(chēng)如果你不想幫助用戶(hù)就閉嘴挺峡。
結(jié)果造成有想法的參與者紛紛離開(kāi)葵孤,這么做只會(huì)使它們淪為毫無(wú)意義的嘮叨與無(wú)用的技術(shù)論壇。
夸張的講法是:你要的是友善(以上述方式)還是有用橱赠??jī)蓚€(gè)里面挑一個(gè)尤仍。
記著:當(dāng)黑客說(shuō)你搞砸了,并且(無(wú)論多么刺耳)告訴你別再這樣做時(shí)狭姨,他正在為關(guān)心你和他的社區(qū)而行動(dòng)宰啦。對(duì)他而言鲤嫡,不理你并將你從他的生活中濾掉更簡(jiǎn)單。如果你無(wú)法做到感謝绑莺,至少要表現(xiàn)得有點(diǎn)尊嚴(yán)暖眼,別大聲哀嚎,也別因?yàn)樽约菏莻€(gè)有戲劇性超級(jí)敏感的靈魂和自以為有資格的新來(lái)者纺裁,就指望別人像對(duì)待脆弱的洋娃娃那樣對(duì)你诫肠。
有時(shí)候,即使你沒(méi)有搞砸(或者只是在他的想像中你搞砸了)欺缘,有些人也會(huì)無(wú)緣無(wú)故地攻擊你本人栋豫。在這種情況下,抱怨倒是真的會(huì)把問(wèn)題搞砸谚殊。
這些來(lái)找麻煩的人要么是毫無(wú)辦法但自以為是專(zhuān)家的不中用家伙丧鸯,要么就是測(cè)試你是否真會(huì)搞砸的心理專(zhuān)家。其它讀者要么不理睬嫩絮,要么用自己的方式對(duì)付他們丛肢。這些來(lái)找麻煩的人在給他們自己找麻煩,這點(diǎn)你不用操心剿干。
也別讓自己卷入口水戰(zhàn)蜂怎,最好不要理睬大多數(shù)的口水戰(zhàn) -- 當(dāng)然,這是在你檢驗(yàn)它們只是口水戰(zhàn)置尔,并且未指出你有搞砸的地方杠步,同時(shí)也沒(méi)有巧妙地將問(wèn)題真正的答案藏于其后(這也是有可能的)。
不該問(wèn)的問(wèn)題
以下是幾個(gè)經(jīng)典蠢問(wèn)題榜轿,以及黑客沒(méi)回答時(shí)心中所想的:
問(wèn)題:我能在哪找到 X 程序或 X 資源幽歼?
問(wèn)題:我怎樣用 X 做 Y?
問(wèn)題:如何設(shè)定我的 shell 提示谬盐?
問(wèn)題:我可以用 Bass-o-matic 文件轉(zhuǎn)換工具將 AcmeCorp 檔案轉(zhuǎn)換為 TeX 格式嗎甸私?
問(wèn)題:我的程序/設(shè)定/SQL 語(yǔ)句沒(méi)有用
問(wèn)題:我的 Windows 電腦有問(wèn)題,你能幫我嗎设褐?
問(wèn)題:我的程序不會(huì)動(dòng)了颠蕴,我認(rèn)為系統(tǒng)工具 X 有問(wèn)題
問(wèn)題:我在安裝 Linux(或者 X )時(shí)有問(wèn)題,你能幫我嗎助析?
問(wèn)題:我怎么才能破解 root 帳號(hào)/竊取 OP 特權(quán)/讀別人的郵件呢犀被?
<a id="q1"></a>
問(wèn)題:我能在哪找到 X 程序或 X 資源?
回答:就在我找到它的地方啊外冀,白癡 -- 搜索引擎的那一頭寡键。天哪!難道還有人不會(huì)用 Google 嗎雪隧?
<a id="q2"></a>
問(wèn)題:我怎樣用 X 做 Y西轩?
回答:如果你想解決的是 Y 员舵,提問(wèn)時(shí)別給出可能并不恰當(dāng)?shù)姆椒ā_@種問(wèn)題說(shuō)明提問(wèn)者不但對(duì) X 完全無(wú)知藕畔,也對(duì) Y 要解決的問(wèn)題糊涂马僻,還被特定形勢(shì)禁錮了思維。最好忽略這種人注服,等他們把問(wèn)題搞清楚了再說(shuō)韭邓。
<a id="q3"></a>
問(wèn)題:如何設(shè)定我的 shell 提示?溶弟?
回答:如果你有足夠的智慧提這個(gè)問(wèn)題女淑,你也該有足夠的智慧去 RTFM,然后自己去找出來(lái)辜御。
<a id="q4"></a>
問(wèn)題:我可以用 Bass-o-matic 文件轉(zhuǎn)換工具將 AcmeCorp 檔案轉(zhuǎn)換為 TeX 格式嗎鸭你?
回答:試試看就知道了。如果你試過(guò)擒权,你既知道了答案袱巨,就不用浪費(fèi)我的時(shí)間了。
<a id="q5"></a>
問(wèn)題:我的{程序/設(shè)定/SQL 語(yǔ)句}不工作
回答:這不算是問(wèn)題吧菜拓,我對(duì)要我問(wèn)你二十個(gè)問(wèn)題才找得出你真正問(wèn)題的問(wèn)題沒(méi)興趣 -- 我有更有意思的事要做呢瓣窄。在看到這類(lèi)問(wèn)題的時(shí)候,我的反應(yīng)通常不外如下三種
- 你還有什么要補(bǔ)充的嗎纳鼎?
- 真糟糕,希望你能搞定裳凸。
- 這關(guān)我有什么屁事贱鄙?
<a id="q6"></a>
問(wèn)題:我的 Windows 電腦有問(wèn)題,你能幫我嗎姨谷?
回答:能啊逗宁,扔掉微軟的垃圾,換個(gè)像 Linux 或 BSD 的開(kāi)放源代碼操作系統(tǒng)吧梦湘。
注意:如果程序有官方版 Windows 或者與 Windows 有互動(dòng)(如 Samba)瞎颗,你可以問(wèn)與 Windows 相關(guān)的問(wèn)題, 只是別對(duì)問(wèn)題是由 Windows 操作系統(tǒng)而不是程序本身造成的回復(fù)感到驚訝捌议, 因?yàn)?Windows 一般來(lái)說(shuō)實(shí)在太爛哼拔,這種說(shuō)法通常都是對(duì)的。
<a id="q7"></a>
問(wèn)題:我的程序不會(huì)動(dòng)了瓣颅,我認(rèn)為系統(tǒng)工具 X 有問(wèn)題
回答:你完全有可能是第一個(gè)注意到被成千上萬(wàn)用戶(hù)反復(fù)使用的系統(tǒng)調(diào)用與函數(shù)庫(kù)檔案有明顯缺陷的人倦逐,更有可能的是你完全沒(méi)有根據(jù)。不同凡響的說(shuō)法需要不同凡響的證據(jù)宫补,當(dāng)你這樣聲稱(chēng)時(shí)檬姥,你必須有清楚而詳盡的缺陷說(shuō)明文件作后盾曾我。
<a id="q8"></a>
問(wèn)題:我在安裝 Linux(或者 X )時(shí)有問(wèn)題,你能幫我嗎健民?
回答:不能抒巢,我只有親自在你的電腦上動(dòng)手才能找到毛病。還是去找你當(dāng)?shù)氐?Linux 使用群組者尋求實(shí)際的指導(dǎo)吧(你能在這兒找到使用者群組的清單)秉犹。
注意:如果安裝問(wèn)題與某 Linux 的發(fā)行版有關(guān)蛉谜,在它的郵件列表、論壇或本地使用者群組中提問(wèn)也許是恰當(dāng)?shù)姆镉拧4藭r(shí)悦陋,應(yīng)描述問(wèn)題的準(zhǔn)確細(xì)節(jié)。在此之前筑辨,先用 Linux
和所有被懷疑的硬件作關(guān)鍵詞仔細(xì)搜索俺驶。
<a id="q9"></a>
問(wèn)題:我怎么才能破解 root 帳號(hào)/竊取 OP 特權(quán)/讀別人的郵件呢?
回答:想要這樣做棍辕,說(shuō)明了你是個(gè)卑鄙小人暮现;想找個(gè)黑客幫你,說(shuō)明你是個(gè)白癡楚昭!
好問(wèn)題與蠢問(wèn)題
最后栖袋,我將透過(guò)舉一些例子,來(lái)說(shuō)明怎樣聰明的提問(wèn)抚太;同一個(gè)問(wèn)題的兩種問(wèn)法被放在一起塘幅,一種是愚蠢的,另一種才是明智的尿贫。
****蠢問(wèn)題****:
我可以在哪兒找到關(guān)于 Foonly Flurbamatic 的資料电媳?
這種問(wèn)法無(wú)非想得到 STFW 這樣的回答。
****聰明問(wèn)題****:
我用 Google 搜索過(guò) "Foonly Flurbamatic 2600"庆亡,但是沒(méi)找到有用的結(jié)果匾乓。誰(shuí)知道上哪兒去找對(duì)這種設(shè)備編程的資料?
這個(gè)問(wèn)題已經(jīng) STFW 過(guò)了又谋,看起來(lái)他真的遇到了麻煩拼缝。
****蠢問(wèn)題****
我從 foo 項(xiàng)目找來(lái)的源碼沒(méi)法編譯。它怎么這么爛彰亥?
他覺(jué)得都是別人的錯(cuò)咧七,這個(gè)傲慢自大的提問(wèn)者。
****聰明問(wèn)題****
foo 項(xiàng)目代碼在 Nulix 6.2 版下無(wú)法編譯通過(guò)剩愧。我讀過(guò)了 FAQ猪叙,但里面沒(méi)有提到跟 Nulix 有關(guān)的問(wèn)題。這是我編譯過(guò)程的記錄,我有什么做的不對(duì)的地方嗎穴翩?
提問(wèn)者已經(jīng)指明了環(huán)境犬第,也讀過(guò)了 FAQ,還列出了錯(cuò)誤芒帕,并且他沒(méi)有把問(wèn)題的責(zé)任推到別人頭上歉嗓,他的問(wèn)題值得被關(guān)注。
****蠢問(wèn)題****
我的主機(jī)板有問(wèn)題了背蟆,誰(shuí)來(lái)幫我鉴分?
某黑客對(duì)這類(lèi)問(wèn)題的回答通常是:好的,還要幫你拍拍背和換尿布嗎带膀?
志珍,然后按下刪除鍵。
****聰明問(wèn)題****
我在 S2464 主機(jī)板上試過(guò)了 X 垛叨、 Y 和 Z 伦糯,但沒(méi)什么作用,我又試了 A 嗽元、 B 和 C 敛纲。請(qǐng)注意當(dāng)我嘗試 C 時(shí)的奇怪現(xiàn)象。顯然 florbish 正在 grommicking剂癌,但結(jié)果出人意料淤翔。通常在 Athlon MP 主機(jī)板上引起 grommicking 的原因是什么?有誰(shuí)知道接下來(lái)我該做些什么測(cè)試才能找出問(wèn)題佩谷?
這個(gè)家伙旁壮,從另一個(gè)角度來(lái)看,值得去回答他谐檀。他表現(xiàn)出了解決問(wèn)題的能力寡具,而不是坐等天上掉答案。
在最后一個(gè)問(wèn)題中稚补,注意告訴我答案
和給我啟示,指出我還應(yīng)該做什么診斷工作
之間微妙而又重要的區(qū)別框喳。
事實(shí)上课幕,后一個(gè)問(wèn)題源自于 2001 年 8 月在 Linux 內(nèi)核郵件列表(lkml)上的一個(gè)真實(shí)的提問(wèn)。我(Eric)就是那個(gè)提出問(wèn)題的人五垮。我在 Tyan S2464 主板上觀察到了這種無(wú)法解釋的鎖定現(xiàn)象乍惊,列表成員們提供了解決這一問(wèn)題的重要信息。
通過(guò)我的提問(wèn)方法放仗,我給了別人可以咀嚼玩味的東西润绎;我設(shè)法讓人們很容易參與并且被吸引進(jìn)來(lái)。我顯示了自己具備和他們同等的能力,并邀請(qǐng)他們與我共同探討莉撇。通過(guò)告訴他們我所走過(guò)的彎路呢蛤,以避免他們?cè)倮速M(fèi)時(shí)間,我也表明了對(duì)他們寶貴時(shí)間的尊重棍郎。
事后其障,當(dāng)我向每個(gè)人表示感謝,并且贊賞這次良好的討論經(jīng)歷的時(shí)候涂佃, 一個(gè) Linux 內(nèi)核郵件列表的成員表示励翼,他覺(jué)得我的問(wèn)題得到解決并非由于我是這個(gè)列表中的名人,而是因?yàn)槲矣昧苏_的方式來(lái)提問(wèn)辜荠。
黑客從某種角度來(lái)說(shuō)是擁有豐富知識(shí)但缺乏人情味的家伙汽抚;我相信他是對(duì)的,如果我像個(gè)乞討者那樣提問(wèn)伯病,不論我是誰(shuí)造烁,一定會(huì)惹惱某些人或者被他們忽視。他建議我記下這件事狱从,這直接導(dǎo)致了本指南的出現(xiàn)膨蛮。
如果得不到回答
如果仍得不到回答,請(qǐng)不要以為我們覺(jué)得無(wú)法幫助你季研。有時(shí)只是看到你問(wèn)題的人不知道答案罷了敞葛。沒(méi)有回應(yīng)不代表你被忽視,雖然不可否認(rèn)這種差別很難區(qū)分与涡。
總的來(lái)說(shuō)惹谐,簡(jiǎn)單的重復(fù)張貼問(wèn)題是個(gè)很糟的點(diǎn)子。這將被視為無(wú)意義的喧鬧驼卖。有點(diǎn)耐心氨肌,知道你問(wèn)題答案的人可能生活在不同的時(shí)區(qū),可能正在睡覺(jué)酌畜,也有可能你的問(wèn)題一開(kāi)始就沒(méi)有組織好怎囚。
你可以通過(guò)其他渠道獲得幫助,這些渠道通常更適合初學(xué)者的需要桥胞。
有許多網(wǎng)上的以及本地的使用者群組恳守,由熱情的軟件愛(ài)好者(即使他們可能從沒(méi)親自寫(xiě)過(guò)任何軟件)組成。通常人們組建這樣的團(tuán)體來(lái)互相幫助并幫助新手贩虾。
另外催烘,你可以向很多商業(yè)公司尋求幫助,不論公司大還是小缎罢。別為要付費(fèi)才能獲得幫助而感到沮喪伊群!畢竟考杉,假使你的汽車(chē)發(fā)動(dòng)機(jī)汽缸密封圈爆掉了-- 完全可能如此 --你還得把它送到修車(chē)鋪,并且為維修付費(fèi)舰始。就算軟件沒(méi)花費(fèi)你一分錢(qián)崇棠,你也不能強(qiáng)求技術(shù)支持總是免費(fèi)的。
對(duì)像是 Linux 這種大眾化的軟件蔽午,每個(gè)開(kāi)發(fā)者至少會(huì)對(duì)應(yīng)到上萬(wàn)名使用者易茬。根本不可能由一個(gè)人來(lái)處理來(lái)自上萬(wàn)名使用者的求助電話。要知道及老,即使你要為這些協(xié)助付費(fèi)抽莱,和你所購(gòu)買(mǎi)的同類(lèi)軟件相比,你所付出的也是微不足道的(通常封閉源代碼軟件的技術(shù)支持費(fèi)用比開(kāi)放源代碼軟件的要高得多骄恶,且內(nèi)容也沒(méi)那么豐富)食铐。
如何更好地回答問(wèn)題
態(tài)度和善一點(diǎn)。問(wèn)題帶來(lái)的壓力常使人顯得無(wú)禮或愚蠢僧鲁,其實(shí)并不是這樣虐呻。
對(duì)初犯者私下回復(fù)。對(duì)那些坦誠(chéng)犯錯(cuò)之人沒(méi)有必要當(dāng)眾羞辱寞秃,一個(gè)真正的新手也許連怎么搜索或在哪找常見(jiàn)問(wèn)題都不知道斟叼。
如果你不確定,一定要說(shuō)出來(lái)春寿!一個(gè)聽(tīng)起來(lái)權(quán)威的錯(cuò)誤回復(fù)比沒(méi)有還要糟朗涩,別因?yàn)槁?tīng)起來(lái)像個(gè)專(zhuān)家很好玩,就給別人亂指路绑改。要謙虛和誠(chéng)實(shí)谢床,給提問(wèn)者與同行都樹(shù)個(gè)好榜樣。
如果幫不了忙厘线,也別妨礙他识腿。不要在實(shí)際步驟上開(kāi)玩笑,那樣也許會(huì)毀了使用者的設(shè)置 --有些可憐的呆瓜會(huì)把它當(dāng)成真的指令造壮。
試探性的反問(wèn)以引出更多的細(xì)節(jié)渡讼。如果你做得好,提問(wèn)者可以學(xué)到點(diǎn)東西 --你也可以耳璧。試試將蠢問(wèn)題轉(zhuǎn)變成好問(wèn)題硝全,別忘了我們都曾是新手。
盡管對(duì)那些懶蟲(chóng)抱怨一聲 RTFM 是正當(dāng)?shù)睦懵眨苤赋鑫募奈恢茫词怪皇墙ㄗh個(gè) Google 搜索關(guān)鍵詞)會(huì)更好。
如果你決定回答析藕,就請(qǐng)給出好的答案召廷。當(dāng)別人正在用錯(cuò)誤的工具或方法時(shí)別建議笨拙的權(quán)宜之計(jì)(wordaround),應(yīng)推薦更好的工具,重新界定問(wèn)題竞慢。
正面的回答問(wèn)題先紫!如果這個(gè)提問(wèn)者已經(jīng)很深入的研究而且也表明已經(jīng)試過(guò) X 、 Y 筹煮、 Z 遮精、 A 、 B 败潦、 C 但沒(méi)得到結(jié)果本冲,回答 試試看 A 或是 B
或者 試試 X 、 Y 劫扒、 Z 檬洞、 A 、 B 沟饥、 C
并附上一個(gè)鏈接一點(diǎn)用都沒(méi)有添怔。
幫助你的社區(qū)從問(wèn)題中學(xué)習(xí)。當(dāng)回復(fù)一個(gè)好問(wèn)題時(shí)贤旷,問(wèn)問(wèn)自己如何修改相關(guān)文件或常見(jiàn)問(wèn)題文件以免再次解答同樣的問(wèn)題广料?
,接著再向文件維護(hù)者發(fā)一份補(bǔ)丁幼驶。
如果你是在研究一番后才做出的回答艾杏,展現(xiàn)你的技巧而不是直接端出結(jié)果。畢竟授人以魚(yú)不如授人以漁
县遣。
相關(guān)資源
如果你需要個(gè)人電腦糜颠、Unix 系統(tǒng)和網(wǎng)絡(luò)如何運(yùn)作的基礎(chǔ)知識(shí),參閱 Unix 系統(tǒng)和網(wǎng)絡(luò)基本原理萧求。
當(dāng)你發(fā)布軟件或補(bǔ)丁時(shí)其兴,試著按軟件發(fā)布實(shí)踐操作。
鳴謝
Evelyn Mitchel 貢獻(xiàn)了一些愚蠢問(wèn)題例子并啟發(fā)了編寫(xiě)如何更好地回答問(wèn)題
這一節(jié)夸政, Mikhail Ramendik 貢獻(xiàn)了一些特別有價(jià)值的建議和改進(jìn)元旬。