美文网首页
如何提问

如何提问

作者: 莫芩 | 来源:发表于2018-04-04 14:17 被阅读0次

    概要:
    这篇文章从“曾经我是如何认为‘提问’这件事的、读《提问的智慧》、提问与解决问题的能力”三个方面来介绍“如何提问”。

    曾经我是如何认为“提问”这件事的

    在修读计算机双学位之初,我对如何建立解决问题的思路,处理数据和过程这件事了解甚少,想来自己当时也问过一些家庭作业式的问题,甚至在一段代码未经测试的情况下去请教其思路的可行与否。当时,我认为提问的态度和讲清楚自己的思维过程很重要,站在学习理论课程的视角,这无可厚非,但却忽视了最重要的事,提问是为了解决问题,问题的思路与解决方案的思路是相互促进的,如果提问者不是想通过自己的努力正确高效地解决问题,那么他的提问很可能是纸上谈兵,毫无贡献、毫无意义,甚至会浪费他人的时间。

    读《提问的智慧》

    提问之前

    在通过电子邮件、新闻群组或者聊天室提出技术问题前,首先尝试自己解决问题。如作者所说,至少应该阅读手册、上网搜索,然后试验自己找到的答案。具体说来,需要做如下准备工作:

    • 尝试在你准备提问的论坛的旧文章中搜索答案。
    • 尝试上网搜索以找到答案。
    • 尝试阅读手册以找到答案。
    • 尝试阅读常见问题文件(FAQ)以找到答案。
    • 尝试自己检查或试验以找到答案。
    • 尝试向你身边的强者朋友打听以找到答案。
    • 如果你是程序开发者,请尝试阅读源代码以找到答案。

    这些准备有助于树立提问者不是一个不劳而获且浪费别人时间的人的形象,如果提问者能一并表达在做了上述努力的过程中所学到的东西会更有可能得到帮助。
    准备好问题后,再将问题仔细的思考一遍,因为草率的发问只能得到草率的回答,或者根本得不到任何答案,尤其是在问题是基于错误的假设时。越是能表现出在寻求帮助前你为解决问题所付出的努力,越有可能得到实质性的帮助。

    提问时

    向谁提问

    1.慎选提问的论坛,不要在与主题不合的论坛上贴出你的问题,例如在探讨进阶技术问题的论坛张贴非常初级的问题;反之亦然。
    2.向项目邮件列表提问好过向单个专家提问,因为好到足以单独请教的问题对整个列表必然也是有益的;糟糕到不便向列表或群组请教的问题单独请教也并不能得到预想的答复。即使要单独请教,电邮是相当危险的一种方式,既非熟人也没有义务解决你问题的人发送私人电邮。
    3.不要在太多的不同新闻群组上重复转贴同样的问题。

    如何描述问题

    使用简短、有意义且描述明确的标题

    50字以内的标题更可能抓住别人的注意,去掉毫无意义的问句,去掉低声下气地描述自己的惨状的句子,比如语法正确且清晰正确精准的语句给人留下好印象,更重要的是言之有物。

    问题描述言之有物

    在问题的描述中要阐述清楚如下内容:

    • 仔细、清楚地描述你的问题或 Bug 的症状。
    • 描述问题发生的环境(机器配置、操作系统、应用程序、以及相关的信息),提供经销商的发行版和版本号(如:Fedora Core 4、Slackware 9.1等)。
    • 描述在提问前你是怎样去研究和理解这个问题的。
    • 描述在提问前为确定问题而采取的诊断步骤。
    • 描述最近做过什么可能相关的硬件或软件变更。
    • 尽可能的提供一个可以重现这个问题的可控环境的方法。
    采用目的-差异式描述

    描述问题症状而非你的猜测

    告诉黑客们你认为问题是怎样造成的并没什么帮助。(如果你的推断如此有效,还用向别人求助吗?),因此要确信你原原本本告诉了他们问题的症状,而不是你的解释和理论;让黑客们来推测和诊断。如果你认为陈述自己的猜测很重要,清楚地说明这只是你的猜测,并描述为什么它们不起作用。

    描述目标而不是过程

    如果你想弄清楚如何做某事(而不是报告一个 Bug),在开头就描述你的目标,然后才陈述重现你所卡住的特定步骤。经常寻求技术帮助的人在心中有个更高层次的目标,而他们在自以为能达到目标的特定道路上被卡住了,然后跑来问该怎么走,但没有意识到这条路本身就有问题。结果要费很大的劲才能搞定。

    提问态度
    解决问题的决心

    谁能给点提示?、我的这个例子里缺了什么?以及我应该检查什么地方比请把我需要的确切的过程贴出来更容易得到答复。因为你表现出只要有人能指个正确方向,你就有完成它的能力和决心。

    明确问题的发生范围

    如果你有庞大而复杂的测试样例能重现程序挂掉的情境,尽量将它剪裁得越小越好。
    别要求他人帮你调试有问题的代码,不提示一下应该从何入手。张贴几百行的代码,然后说一声:它不能工作会让你完全被忽略。只贴几十行代码,然后说一句:在第七行以后,我期待它显示 <x>,但实际出现的是 <y>比较有可能让你得到回应。

    如果你只是想让别人帮忙审查一下代码,在信的开头就要说出来,并且一定要提到你认为哪一部分特别需要关注以及为什么。

    低声下气不能代替应做的工作

    有些人明白他们不该粗鲁或傲慢的提问并要求得到答复,但他们选择另一个极端 -- 低声下气这既使人困扰,也没有用,尤其是伴随着与实际问题含糊不清的描述时更令人反感。

    提问者应该尽可能清楚地描述背景条件和你的问题情况。这比低声下气能更好地定位提问者的位置。

    谦恭有礼
    • 注意提问的语气,不要吝啬“请帮帮忙”之类的礼貌用语。
    • 使用易于读取且标准的格式发送问题。
    • 即使紧急也不要把“紧急”二字表述出来。
    • 问题解决后,要及时简短的回复问题解决的结果。

    如何解读答案

    对于初学者而言,重要的一点是,当你收到问题的回复时,如果回复是“让你再上网搜索或者查阅手册”,那么代表你把提问这件事搞砸了,而且通常这样的建议都是对的,你应该虚心的接受建议并且重新审视问题,寻找解决方案。

    提问与解决问题的能力

    提问与解决问题的能力是彼此促进的,好的问题可以促进人的思维运转、激励解决问题的想法产生;好的解决问题的方法无不蕴含着如何提问的智慧。因此,提出好的问题,对提问者和回答者都将大有裨益。

    相关文章

      网友评论

          本文标题:如何提问

          本文链接:https://www.haomeiwen.com/subject/oxaqhftx.html