Beaver's Blog

Freedom Openness Inclusion

0%

谈一谈提问的智慧

前言

本文是根据GithubHow to ask questions the smart way一文整理而来。由于原文篇幅较多,本文仅摘取了原文我感兴趣或认为重要的一部分,放在这里。想看原文的,请点击这里

为什么学会提问很重要

在现实世界中,我们难以避免他人沟通交流。无论是面对面还是网络的形式。那在交流中,也总是会出现提问题的时候。好的提问题的方式,能够提高沟通的效率,降低交流的成本;而坏的方式,别人心里可能很有意见,敷衍你的问题,甚至不想回答这个问题。

实际中,我们可能或多或少的经历过低效沟通的痛苦以及高效带来的便利。

这个有哪些要注意的方面

提问之前

在你准备要通过电子邮件、论坛、贴吧等提出技术问题前,请先做到以下事情:

  1. 尝试在你准备提问的论坛的旧文章中搜索答案。

  2. 尝试上网搜索以找到答案。

  3. 尝试阅读手册以找到答案。

  4. 尝试去FAQ看看能不能找到答案。

  5. 尝试自己检查或试验以找到答案。

  6. 向你身边的有经验的人打听以找到答案。

  7. 如果你是开发者,请尝试阅读源码、查看日志等定位问题寻找答案。

当你提出问题的时候,请先表明你已经做了上述的努力;这将有助于树立你并不是一个不劳而获且浪费别人的时间的提问者。如果你能一并表达在做了上述努力的过程中所学到的东西会更好,因为人们更乐于回答那些表现出能从答案中学习的人的问题。

在你提问时

慎选提问的论坛

小心选择你要提问的场合。如果你做了下述的事情,你很可能被忽略掉或者被看作失败者:

  • 在与主题不合的论坛上贴出你的问题。
  • 在探讨进阶技术问题的论坛张贴非常初级的问题;反之亦然。
  • 在太多的不同新闻群组上重复转贴同样的问题。
  • 向既非熟人也没有义务解决你问题的人发送私人邮件或信息。

如果在错误的场合提问,可能不会有人回复这个问题,或者不够专业的人回复这个问题。当然,有人回答这个问题可能是出于好心,但是答案未必能解决你的问题,你也不想看到这样是吧。

描述问题

问题的描述同样重要,不够清晰的描述,难以让别人快速了解你的情况。问题描述应足够精炼,又能同时覆盖你的问题。

  • 使用有意义且明确的标题
  • 描述问题的环境(例如机器配置等),你在什么操作下出现的这个问题
  • 说明一下问题的详细情况,去掉无意义的描述。
  • 你在处理这个问题上做了哪些努力,尝试了哪些方案,都有什么样的效果。
  • 说明一下你的预期结果,再说你哪个过程出现了问题。

态度

不会有人喜欢无礼、傲慢的提问并要求得到回答,但也不应该过于低声下气的提问,这无益于让别人帮你解决问题。

这个过程中,大家应做到相互尊重,有理有据。

除非双方或大部分人都具备一样的知识背景,否则不应使用过于专业的术语交流。与陌生人交流,好的态度,别人才可能愿意进一步帮你解决问题。

问题解决后

当问题解决后,我们仍然有些补充性工作要做:

  • 向为你提供帮助的人表示感谢
  • 愿意的话,可以把这次问题及解决过程写出来,让别人知道这是怎么解决的。
  • 如果是bug的话,也可以提交给开发者,让他们知道并修复这个bug

总结

有几点我觉得是在这个过程中比较重要的:

  • 学会使用Google等搜索引擎,查询自己的答案,不要遇到问题就问。
  • 找合适的场合寻找问题答案,对技术性问题跑到生活板块下找,可能不会解决你的问题。
  • 对问题要有足够清晰的描述,以帮助别人能快速定位你的问题,不要问为什么会这样、我该怎么办等描述。
  • 和别人交流问题的过程中,要把握分寸,懂礼貌,不会有人喜欢无礼的人。

以上就是我根据Github仓库How to ask questions the smart way中摘取的一些。

其实,我们能够发现整个过程还是比较繁琐的,但这是必要的。可能寻找一个问题的答案,未必要完整按这个流程来,但是这给我们提供一个途径的参考。我也认为,解决问题的过程可能需要付出很多的“代价”,但这是值得的。

References