提问前
在通过电邮、新闻组或论坛提技术问题以前,做以下事情:
- 尝试在你准备提问论坛的历史文档中搜索答案
- 尝试搜索互联网以找到答案
- 尝试阅读手册以找到答案
- 尝试阅读“常见问题文档”(FAQ)以找到答案
- 尝试自己检查或试验以找到答案
- 尝试请教懂行的朋友以找到答案
如果你是程序员,尝试阅读源代码以找到答案
提问时,请先表明你已做了上述事情,这将有助于建立你不是寄生虫与浪费别人时间的印像。最好再表述你从中学到的东西 ,我们喜欢回答那些表现出能从答案中学习的人。
运用某些策略,比如用谷歌(Google)搜索你遇到的各种错误提示(既搜索谷歌论坛,也搜索网页), 这样很可能直接就找到了解决问题的文档或邮件列表线索。 即使没有结果,在邮件列表或新闻组寻求帮助时提一句“我在谷歌中搜过下列句子但没有找到什么有用的东西” 也是件好事,至少它表明了搜索引擎不能提供哪些帮助。将搜索关键词与你的问题及可能的解决方案联系起来,还有助于引导其他有类似问题的人。
别着急,不要指望几秒钟的谷歌搜索就能解决一个复杂的问题。读一下常见问题文档。在向专家提问之前,先向后靠靠放松一下,再思考一下问题。相信我们,他们能从你的提问看出你做了多少阅读与思考,如果你是有备而来,将更有可能得到解答。不要将所有问题一股脑抛出,只因你的第一次搜索没有结果(或者结果太多)。
认真地思考,准备好你的问题。轻率的提问只能得到轻率的回答,或者压根没有。在提问时,你越是表现出在此前做过思考与努力去解决自己的问题,你越有可能得到真正的帮助。
注意别提错问题。如果提问基于错误的假设,某黑客多半会一边想 “愚蠢的问题……”,一边按将错就错的答案回复你,并且希望这种只是得到你自己“问的问题”而非真正所需的解答以给你一个教训。
永远不要假设你有资格得到解答。你没有这种资格,毕竟你没有为此服务付费。如果你能够提出有内容、有趣和激励思考的问题 ── 那种毫无疑问能够向社区贡献经验,而不仅仅是消极地要求从别人那获取知识的问题,那么你将“挣到”答案。
另一方面,表明你有能力也乐意参与问题的解决是个很好的开端。“有没有人能指个方向?”,我这还差点什么?”,“我应该查哪个网站?”,通常要比 “请给出我可以用的完整步骤”更容易得到回复,因为你表明了只要有人能指个方向,你就会很乐意完成剩下的过程。
提问时
仔细挑选论坛
要对在哪提问留心,如果你做了下述事情,多半会被一笔勾销或被看成“失败者”:
张贴与论坛主题无关的问题
在面向高级技术问题的论坛上张贴肤浅的问题,或者反之。
在太多不同的新闻组同时张贴
给既非熟人也没有义务解决你问题的人发送你私人的电邮
为保护通信的渠道不被无关的东西淹没,黑客会除掉那些没有找对地方的问题,你不会想让这种事落到自己头上的。
因此,第一步是找对论坛。谷歌和其它搜索引擎还是你的朋友,可以用它们搜索你遇到困难的软硬件问题最相关的项目网站。那里通常都有项目的常见问题(FAQ)、邮件列表及文档的链接。如果你的努力(包括 阅读 FAQ)都没有结果,这些邮件列表就是最后能取得帮助的地方。项目的网站也许还有报告 Bug 的流程或链接,如果是这样,去看看。
向陌生的人或论坛发送邮件极有可能是在冒险。譬如,不要假设一个内容丰富的网站作者会想充当你的免费顾问,不要对你的问题是否会受到欢迎做太乐观的估计 ── 如果你不确定,到别处发或者压根别发。
在选择论坛、新闻组或邮件列表时,别太相信名字,先看看 FAQ 或者许可书以明确你的问题是否切题。发贴前先翻翻已有的帖子,这样可以让你感受一下那里行事的方式。事实上,张贴前在新闻组或邮件列表的历史文档中搜索与你问题相关的关键词是个极好的主意,也许就找到答案了。即使没有,也能帮助你归纳出更好的问题。
别像机关枪似的一次性“扫射”所有的帮助渠道,这就像大喊大叫一样会令人不快,温柔地一个一个来。
弄懂主题!最典型的错误之一是在某种致立于跨平台可移植的语言、库或工具的论坛中提关于 Unix 或 Windows 操作系统程序接口的问题。如果你不明白为什么这是大错,最好在搞清楚概念前什么也别问。
一般来说,在仔细挑选的公共论坛中提问比在私有论坛中提同样的问题更容易得到有用的回答。有几个道理支持这点,一是看潜在的回复者有多少,二是看论坛的参与者有多少,黑客更愿回答能启发多数人的问题。
可以理解,老练的黑客和一些流行软件的作者正在承受过多的不当消息。就像那根最后压垮骆驼背的稻草一样,你的加入也有可能使情况走向极端 ── 已经好几次了,一些流行软件的作者退出了对自己软件的支持,因为伴随而来的涌入其私人邮箱的垃圾邮件变得无法忍受。