更上一层楼!

一切安排都是最好的,剩下的就交给时间!

《提问的艺术》读后感

前言

众所周知,你所提技术问题的解答很大程度上取决于你提问的方式与解决此问题的难度,但是怎么清楚的让有经验的人明白你表述的问题,让你获得最切实有效的帮助却不是一件容易的事。

而本文正是针对这个问题而展开,目的就是

教你如何提问才更有可能得到更为满意的答复。

提问前

“他”明明能帮到我,却不帮我。。。

很多时候,我们可能会遇到这样的窘境。有些人遇到简单问题就表现出敌视或傲慢的名声。有时,我们看起来还对新手和愚蠢的家伙有条件反射式的无礼,但事情并不真是这样。

不知道有这样经历的你有没有想过,为什么别人不愿意帮助我们呢?尤其是从自身的角度思考过呢?生活中有很多人提问前不愿思考、不做自己家庭作业的人。这种人就象时间无底洞──他们只知道索取,不愿意付出,他们浪费了时间,而这些时间本可用于其它更有趣的问题或更值得回答的人。

还有就是明确自己的位置。首先我觉得应该明确一点,那就是

别人帮助了我们,我们自然应该感到荣幸;别人不帮助我们,我们也不要有什么怨言,因为别人没有这个义务花费自己的时间来做一些和自己毫不相关的事(关于帮助别人也是帮助自己这类的理由就不要再说了,说得不好听一点,这也只是个牵强的借口罢了,没有什么意义)。

提问前必知必会的一些事

在互联网如此发达的现在,你遇到的问题基本上也都会被别人或多或少的遇到过。所以在询问那些有经验的人之前,还请先做好准备工作,如果你不知道该怎么做,不妨参考一下下面的这些建议。

  • 1.尝试在你准备提问论坛的历史文档中搜索答案
  • 2.尝试搜索互联网以找到答案
  • 3.尝试阅读手册以找到答案
  • 4.尝试阅读“常见问题文档”(FAQ)以找到答案
  • 5.尝试自己检查或试验以找到答案
  • 6.尝试请教懂行的朋友以找到答案
  • 7.如果你是程序员,尝试阅读源代码以找到答案

提问时,请先表明你已做了上述事情,这将有助于建立你不是寄生虫与浪费别人时间的印象。

关于搜索引擎

如上所述,你遇到的大部分的问题其实已经被别人遇到过了。而查找关于这些问题的答案的最好方式那就是通过搜索引擎了。

如果你不能快速的找到这些问题的答案,那就尝试着换下关键字。如果你不知道你问题的关键字是什么,那么最好先别向其他人请教,先去明确你遇到的问题到底是什么。如果连这一点都做不到,你又怎么能期待别人花费大量时间帮你分析你遇到的问题到底是什么呢?

你不愿意被别人占用自己的时间,同样的,别人也不愿花费这样的garbage时间在你的身上。学会换位思考一下。原文中有这么一段话我觉得比较不错,分享一下:

永远不要假设你 有资格 得到解答。你没有这种资格,毕竟你没有为此服务付费。

学会使用搜索引擎,对你会有莫大的帮助。所以不要问我,如何学会使用搜索引擎?这样的话,又回到了刚才的地方了。这样递归下去,你永远也找不到答案,真正破除这个魔咒一般的递归效应的方法就是你的行动。

相信这段话也很容易理解了。那么下次提问之前,不妨

先明确自己的问题到底是什么?通过搜索引擎能否找到相关的答案?

提问时

找准对象

之前看到过这样的一张图片,觉得很适合这个话题。
找准对象

这样的问问题,获取让你满意的答案的几率会高吗?

诸如此类,想必大家都深有体会。个中真意,应该都有所知晓。

而谷歌和其他的搜索引擎却还是你的朋友,很多时候我们都能从那里获取我们想要的答案(前提是你真正知道自己的问题到底是什么)。

向陌生的人或论坛发送邮件极有可能是在冒险。譬如,不要假设一个内容丰富的网页的作者想充当你的免费顾问,不要对你的问题是否会受到欢迎做太乐观的估计──如果你不确定,向别处发或者压根别发。

通常来说,和你层次相当或者略高与你自身的群体更容易为你提供帮助。真正有深度还愿意无私花费自己的时间来为你解答问题的人是不多的,但是和你水平相当的人却愿意接手你的问题。这涉及到更多心理上的层面。一方面你可以认为是教学相长的这样一个过程,另一方面通过解答别人的问题给他本人带来的成就感也是一个很重要的因素。

充分的利用这样的资源,和别人一起进步吧。

而真正厉害的那部分人,没有必要在你这里建立相关的信心抑或是所谓的成就感。

学会停顿

假设你找到了合适的询问问题的对象,你有很多的问题要咨询,这时千万不要别像机关枪似的一次性“扫射”所有的帮助渠道,这就象大喊大叫一样会令人不快,温柔地一个一个来。

还有一种情况就是你的问题是有层次性的,或许你本人并没意识到这一点。当你第一个问题被解决之后,你接下来的问题都可以按照这个思路来解决,如果这个时候你再问这些价值不大的问题,我想没几个人愿意花费时间来帮你解答。这样的你,给人的印象就是一个不想自己思考而单纯的要获取答案一样惹人厌烦。

组织你的问题

原文中对此解释的很清晰。如下:
一般而言,如果你写得象个半文盲似的傻子,多半得不到理睬。也不要使用即时通讯中的简写,如将“you”简化为“u”会使你看起来象一个为了节约二次击键的半文盲式的傻子。更糟的是,如果象个小孩似地鬼画桃符那绝对是在找死,可以肯定没人会理你(或者最多是给你一大堆指责与挖苦)。

描述问题应准确且有内容

  • 仔细、清楚地描述问题的症状
  • 描述问题发生的环境(主机、操作系统、应用程序,任何相关的),提供销售商的发行版和版本号(如:“Fedora Core 7”、“Slackware 9.1”等)
  • 描述提问前做过的研究及其理解。
  • 描述提问前为确定问题而采取的诊断步骤。
  • 描述最近对计算机或软件配置的任何相关改变。
  • 如果可能,提供在可控环境下重现问题的方法。
    尽最大努力预测对方会提到的问题,并提前备好答案。

清晰的发问

用更少的词汇尽可能全面的阐述你的问题,而不要用一些无关痛痒的连篇废话。看完下面的例子相信大家都会明白的。

使用主题的好惯例是“对象──偏差”(式的描述),许多技术支持组织就是这样做的。在“对象”部分指明是哪一个或哪一组东西有问题,在“偏差”部分则描述与期望的行为不一致的地方。

  • 愚蠢:
    救命啊!我的笔记本视频工作不正常!
  • 明智:
    X.org 6.8.1 扭曲鼠标光标,MV1005 型号的某显卡芯片组
  • 更明智:
    使用 MV1005 型号的某显卡芯片组在 X.org 6.8.1 的鼠标光标被扭曲

一个真正有经验的人只需描一眼就能够立即明白什么是你遇到的问题,什么是你自己的问题。而通过对问题的语言组织也能更好的帮助你理解自己的问题到底是什么?然后你可以通过自行搜索也好,查看相关文档也好先自己尝试进行解决,解决不了的话再拿出来询问有经验的人,这比你直接上来就问别人更有可能获得让自己满意的答复。

低声下气代替不了做自己的家庭作业

有些人明白他们不应该粗鲁或傲慢地行事并要求得到答复,但他们退到相反的低声下气的极端:“我知道我只是个可怜的新丁,一个失败者,但……”。这既使人困扰,也没有用,当伴随着对实际问题含糊的描述时还特别令人反感。
别用低级灵长类动物的办法浪费你我的时间,相反,尽可能清楚地描述背景情况和你的问题,这比低声下气更好地摆正了你的位置。
有时,论坛设有单独的初学者提问版面,如果你真的认为遇到了肤浅的问题,到那去就是了,但一样别低声下气。

删除无意义的要求

抵制这种诱惑,即在求助消息末尾加上诸如“有人能帮我吗?”或“有没有答案?”之类在语义上毫无意义的东西。第一,如果问题描述还不完整,这些附加的东西最多也只能是多余的。第二,因为它们是多余的,黑客们会认为这些东西烦人──就很有可能用逻辑上无误但打发人的回复,诸如“是的,你可以得到帮助”和“不,没有给你的帮助”。
一般来说,避免提“是或否”类型的问题,除非你想得到 “是或否”类型的回答。

不要把问题标记为“紧急”, 即使对你而言的确如此

这是你的问题,不要我们的。宣称“紧急”极有可能事与愿违:大多数人会直接删除这种消息,他们认为这是无礼和自私地企图得到即时与特殊的关照。而且“紧急”或其它有类似含义的主题有可能触发垃圾过滤规则,潜在的回复者可能永远看不到你的问题!
有一点点局部的例外,如果你是在一些知名度很高、会使那些前辈们激动的地方使用程序,也许值得这样去做。在这种情况下,如果你有期限压力,也很有礼貌地提到这点,人们也许会有足够的兴趣快一点回答。
当然,这是非常冒险的,因为他们对什么是令人激动的标准多半与你的不同。譬如从国际空间站这样张贴没有问题,但代表感觉良好的慈善或政治原因这样做几乎肯定不行。事实上,张贴诸如“紧急:帮我救救这个毛绒绒的小海豹!”肯定会被其他人回避或光火,即使他们认为毛绒绒的小海豹很重要。
如果你觉得这不可思议,再把剩下的内容多读几遍,直到弄懂了再发贴也不迟。

礼貌总是有益的

礼貌一点,使用“请”和“谢谢你的关注”或者“谢谢你的关照”,让别人明白你感谢他们无偿花时间帮助你。
坦率地讲,这一点没有语法正确、文字清晰、准确、有内容和避免使用专用格式重要(同时也不能替代它们)。前辈们一般宁可读有点唐突但技术鲜明的臭虫报告,而不是那种有礼但含糊的报告。(如果这点让你不解,记住我们是按问题能教我们什么来评价它的)
然尔,如果你已经谈清楚了技术问题,客气一点肯定会增加你得到有用回复的机会。
(我们必须指出,本文唯一受到一些人认真反对的地方是以前曾经推荐过的“提前谢了”,一些认为这隐含着事后不用再感谢任何人的暗示。我们的建议是要么先说 “提前谢了”,事后 再 对回复者表示感谢,要么换种方式表达,譬如用“谢谢你的关注”或“谢谢你的关照”)。

对待无礼

很多圈子中看似无礼的行为并不是存心冒犯。相反,它是直接了当、一针见血式的交流风格,这种风格对于更关注解决问题而不是使别人感觉舒服而混乱的人是很自然的。
如果你觉得被冒犯了,试着平静地反应。如果有人真的做了过格的事,邮件列表、新闻组或论坛中的前辈多半会招呼他。如果这 没有 发生而你却光火了,那么你发火对象的言语可能在社区中看起来是正常的,而 你 将被视为有错的一方,这将伤害到你获取信息或帮助的机会。
另一方面,你会偶而真的碰到无礼和无聊的言行。与上述相反,对真正的冒犯者狠狠地打击、用犀利的语言将其驳得体无完肤都是可以接受的。然尔,在行事之前一定要非常非常的有根据。纠正无礼的言论与开始一场毫无意义的口水战仅一线之隔,人们自己莽撞地越线的情况并不鲜见。如果你是新手或外来者,避开这种莽撞的机会并不高。如果你想得到的是信息而不是消磨时光,这时最好不要把手放在键盘上以免冒险。

提问禁区

  • 问: 我到哪可以找到某程序或 X 资源?
    答: 在我找到它的同样地方,笨旦──在网页搜索引擎上。上帝啊,难道还有人不知道如何使用 谷歌 吗?

  • 问: 我怎样用 X 做 Y?
    答: 如果你想解决的是 Y,提问时别给出可能并不恰当的方法。这种问题说明提问者不但对 X 完全无知,也对要解决的 Y 问题糊涂,还被特定形势禁锢了思维。等他们把问题弄好再说。

  • 问: 如何配置我的 shell 提示?
    答: 如果你有足够的智慧提这个问题,你也该有足够的智慧去 “读读该死的手册”(RTFM),然后自己去找出来。

  • 问: 我可以用 Bass-o-matic 文件转换工具将 AcmeCorp 文档转为 TeX 格式吗?
    答: 试试就知道了。如果你试过,你既知道了答案,又不用浪费我的时间了。

  • 问: 我的{程序、配置、SQL 语句}不运行了
    答: 这不是一个问题,我也没有兴趣去猜你有什么问题──我有更要紧的事要做。看到这种东西,我的反应一般如下:

    • 你还有什么补充吗?
    • 噢,太糟了,希望你能搞定。
    • 这跟我究竟有什么关系?
  • 问: 我的视窗电脑出问题了,你能帮忙吗?
    答: 是的,把视窗垃圾删了,装个象 Linux 或 BSD 的开源操作系统吧。
    注意:如果程序有官方的视窗版或者与视窗有交互(如 Samba),你 可以 问与视窗相关的问题,只是别对问题是由视窗操作系统而不是程序本身造成的回复感到惊讶,因为视窗一般来说太差,这种说法一般都成立。

  • 问: 我的程序不运行了,我认为系统工具 X 有问题
    答: 你完全有可能是第一个注意到被成千上万用户反复使用的系统调用与库文件有明显缺陷的人,更有可能的是你完全没有根据。不同凡响的说法需要不同凡响的证据,当你这样声称时,你必须有清楚而详尽的缺陷说明文档作后盾。

  • 问: 我安装 Linux 或 X 遇到困难,你能帮忙吗?
    答: 不行,我需要亲手操作你的电脑才能帮你排错,去向当地的 Linux 用户组寻求方便的帮助(你可以在 这里 找到用户组列表)
    注意:如果安装问题与某 Linux 发行版有关,在针对 它 的邮件列表、论坛或本地用户组织中提问也许是恰当的。此时,应描述问题的准确细节。在此之前,先用 “linux”和 所有 被怀疑的硬件 [作关键词] 仔细搜索。

  • 问: 我如何才能破解超级用户口令/盗取通道操作员的特权/查看某人的电子邮件?
    答: 想做这种事情说明你是个卑劣的家伙,想让别人教你做这种事情说明你是个白痴。

总结

原文中还有很多比较实用的建议,我觉得我们每个人都有必要读一下。下载地址:
http://download.csdn.net/detail/marksinoberg/9763760

联系到我本人同样存在很重要的问题,相比起来仍然是压根不会“提问”的状态。

读完这篇文章,想必下次你又在QQ群里面询问别人

  • 怎么格式化你的优盘?

  • 怎么把HTML的字体调大?

  • 怎么使用某一个编程语言标准库的一个函数?

。。。。。

这些问题的时候,你会找到最快速最高效最能让你满意的回复的捷径的。以上所述,与君共勉。

阅读更多

扫码向博主提问

去开通我的Chat快问

marksinoberg

博客专家

非学,无以致疑;非问,无以广识
  • 擅长领域:
  • 后台开发
  • PHP
  • Python
  • Java
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭