打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
如何更聪明的提问问题?

【回复“1024”,送你一个特别推送】

最近看了一篇文章,深有感触,决定写一下自己的感受,因为我也经常遇到这样的困扰,那就是很多人加我个人微信号,给我发邮件等提问问题。但是提问人问问题的水平真的是太差劲了,决定写一篇文章,聊一聊如何更好的提问问题,以及更加容易获得被提问者的答案。

其实,很多人可能不知道,提问者渴望得到别人的答案,更多的取决于你提问问题的方式和你提问问题的难度。现在开源已经很普遍,在 GitHub 上开源的库不计其数,但是可能每个人开源的库,并不能完完全全满足使用者的需求,或多或少可能有些差距,需要使用者自行查看源码修改,也或许开源库本身存在某种 Bug,所以很多人可能会提 Issues ,或者给开源者发送邮件,提问问题。

也有很多博主写了很多技术博客,分享了很多技术文章,在关于界面留下了自己的联系方式,而很多看文章的程序员或者读者读完文章可能不明白,也可能按照博主的思路,并没有实现自己想要的效果,出问题了,报错了,这时,可能就会给博主发邮件,留言问问题了。

但是,很多问的问题并没有等到回复或者答案,其实大多数原因是提问的方式和问题的难度不对。

首先要理解的是,技术大牛们实际上喜欢棘手的,发人深省的一些问题,如果这个问题足够有趣,作为技术极客肯定会引起好奇心去解决的。好的问题是一种刺激和一种礼物。好的问题能帮助他们发现问题,提高他们的理解和能力,而且有可能会揭示他们可能没有注意到的问题。要知道,在咱们程序员的眼中,“问得好”这也是一种强烈而真诚的赞美。

不知道你们有没有这样的感受,就是当一个初学者或者不是特别熟悉的人,向你问一个特别简单的问题时,你有没有耐心回答呢?顺口一问,你可能就就会顺口一答,但是像这样的初学者,会接下来再发问的,接二连三的来,你肯定就会很暴躁了,就犹如你回家过年,七大姑八大姨让你这个程序员修电脑的感受差不多。

说实话,很多人来问你问题的时候,尤其是在开源社区里提问的时候,他们对你开源的库的技术实现细节可能没兴趣,他们仅仅只是想使用罢了,但是呢,又不会完全使用或者完全让他们满意,然而他们只是把你的开源库或者开源软件当做一种工具。这时候的提问,就显得很苍白了,因为这样的人基本上不会提问出任何有价值的问题。正常的大部分技术人会喜欢并积极回答那些有兴趣并且愿意积极参与解决问题的人的问题。

作为技术大神,极客,他们从繁忙的工作和生活中抽出时间来回答问题,有时会被这些问题压垮,因为问题很多,所以一切简单的问题,就会被无情的过滤。以便更有效地利用自己回答问题的时间。

所以啊,我们在问问题的时候,可能没有对他们开源的技术和软件有足够的关注,但我们有必要展示出一种态度,这种态度会导致我们的能力——警觉、体贴、善于观察、愿意成为一个积极的合作伙伴来解决问题。以一种平等的方式来积极的探讨问题,这种方式会让你更容易获得回复,甚至是得到答案。

问问题之前

刚才说了,我们可能对技术没那么强,但是要有足够的态度, 以一种平等的方式来积极的探讨问题,这样更容易得到答案,那如何准备,才能让你显得是以一种平等的方式来探讨问题呢?这就需要我们精心准备了。

我认为我们在提问问题之前,应该做好以下几种工作:

  1. 试着通过在技术社区,论坛搜索你的问题找到答案。

  2. 试着通过 Google 等网络搜索引擎找到答案。

  3. 试着通过阅读手册找到答案。

  4. 试着通过阅读FAQ来找到答案。

  5. 试着通过 debug 或检查来找到答案。

  6. 试着通过问一个相关方面经验的朋友来找到答案。

  7. 试着通过阅读源代码来找到答案。

当然了,如果你通过上面的七种手段已经找到问题答案了,那么恭喜你,你已经掌握了自己解决问题的能力,不用再去问那些技术大牛了。

当我们在问问题之前,首先要展示你已经通过上述手段已经为解决问题做了很多事情,这证明你不是一个懒惰,完全依赖别人,只会索取的人,而且你已经做了很多工作,实在走投无路了,所以才迫不得已麻烦大神,技术大牛的。更好的是,展示你从做这些事情中学到的东西。技术大牛们喜欢回答那些已经证明可以从答案中学习的人的问题。

比如:使用类似于 Google 搜索的方法来搜索你所得到的错误信息,如果没有找到问题答案,说“我用谷歌搜索了下面的短语,但没有得到任何看起来有希望的东西”,把你的搜索的关键字得到的链接,在提问问题的邮件内容中附件上,这样也有利于技术专家,大牛们理解问题。认真准备问题,你做的越多,就越能证明你在寻求帮助之前已经想方设法的在解决了,你就越有可能得到帮助。

而且花时间不要指望能用几秒钟的谷歌搜索就能解决一个复杂的问题。认真理解问题,好好查找 FAQ ,坐下来,放松,在向专家提出问题之前先思考一些问题。相信我,他们能够从你的问题中分辨出你做了多少阅读和思考,如果你准备好了,他们会更愿意帮助你。这样问题之前的准备工作,可以让你充分理解问题,也不至于问错问题。如果你问一个基于错误假设的问题,那么将会得到一个毫无用处的回答。这仅仅只是得到你所要求的,而不是你所需要的,这将会给你一个教训。所以提问问题之前这些工作,不是无用了,对你也会很有帮助,也能让你学到很多技术和知识。

另外,永远不要以为你有资格得到答案。毕竟,我们根本不需要为这项服务付费,如果得到了帮助更好,没有得到帮助也不要抱怨。帮你是人情,不帮你是本分。

当你问问题时

我们提问问题时,最常用的一种方式就是在技术社区或者技术论坛发布自己的问题,迫不得已时可能会找技术大牛或者专家直接提问。

技术社区

那么我们先来看第一种方式,我们一定要仔细选择技术社区或者论坛。

首先,你选择的技术社区和论坛一定要看有没有流量,活跃率怎么样?一定要在一个流量高,活跃好的专业技术社区发布问题。其次,问的问题,一定要有公共性,一般来说问一个具有公共性,普遍性的问题比一个私人问题更容易得到答案。因为技术大牛们更愿意回答那些教育许多人的问题,而不是只提供少数人的问题。再次,提问问题时,不要把社区内所有的专题或者频道都发一遍,那样很容易引起别人的方案,反而不容易得到答案。最后,问的问题,在发布时,要把关键字写在标题上,使用有意义的、特定的主题标题。比如:

不要在社区上发布:我遇到了一个空指针bug,这样的标题没有任何意义。

聪明的问法是这样的:Socket 连接丢失导致 IO 流的 Java NullPointerException 。这样的标题的关键字是:NullPointerException,然后还有问题描述,这样的问题清晰,也很容易引起大家的注意和兴趣。

详细的内容方面,一定要把这个 bug 产生的过程描述清楚,而且如果你想把 log 信息贴出来,那么一定要注意格式整齐,不要显得那么乱,否则回答的人很容易暴躁的,本来想回答问题的,但是一看里面描述不清,代码格式混乱,眼花缭乱,直接把回答问题的心情就搞没了。

提问技术大牛

很多情况下,我们可能在看某一篇技术大牛的博客或者在 GitHub 上用某个大神的开源库,但是没看懂或者看明白,遇到了问题,正常情况下是在博客底下留言或者直接提 Issues 。但是有些程序员很着急,急需,这时候就有可能找到作者介绍,开始加他们的即时通讯工具或者私信,发邮件等找他们解决问题,这时候就要注意了,加他们的个人账号好友,一次申请就行。很多人,一看没马上通过,就频繁申请,发送请求,这非常不礼貌,没通过可能是在忙,没在用,邮件回复不及时可能在忙,没时间看。只有你着急的事,大神们不更忙吗?要理解。

如果想要更容易得到答案,像技术大牛问问题,发邮件或者私聊的时候,一定要保持平等的对话,以探讨问题的方式更好。为什么要这样呢?我给大家举个感同身受的例子,你们就会理解了。

你们大家肯定和测试打过交道吧。如果测试在测出 bug 的时候,会说:我发现了一个bug,点击这里崩溃。你作为程序员的第一反应是什么?你会说:不可能,肯定是你环境的问题。你会以各种理由,不承认这个 bug ,对不对?但是如果测试在哪里突然自言自语的说:点这里怎么崩溃了?是我的问题吗?这时,作为开发者你听到后,肯定心里想:难道不成这里有 bug ,我一定要查一下看看。

明白了吧?这就是以探讨的方式,平等对话。玩的都是心理套路。如果你遇到的问题,找技术大牛提问,私聊或者发邮件的时候,你这样做,很容易得到答案:

  1. 把自己遇到的问题,在我说的上述七种手段基础上认真寻找答案,如果没找到答案,就把相关的问题链接和你搜索到的答案整理一下。

  2. 把整理到的问题和你遇到的问题联系一下,看看有没有想通的地方,认真理解一下遇到的问题,争取提问的时候,别提问错了。

  3. 以探讨的方式,提问问题,并描述清楚问题出现的前因后果,以及你为此付出的努力,把周边搜索的内容也整理发送过去。

以探讨方式提问问题,举个例子:

我在看你开源库的时候,看到这里,这一段代码的时候(然后贴上代码片段,要整洁,格式化),感觉可能逻辑上出问题了,是我没看明白吗?如果你方便的时候,可以抽空看一下。如有不对,请指正。

如果你是开源库的作者,你收到这样的邮件,会不会心里发问呢?这段代码哪里错了,你就会赶紧去看看,看完了,自然就会回答提问者了。

你如果和作者私聊,一对一的沟通,肯定更得准备充足了,因为是探讨,所以不要直接发问,感觉在求人。和大神探讨,你有没有为此付诸努力,一聊便能看出来。有些人很多简单的问题上来就问,明明一搜就有的答案还来问,肯定没人浪费时间去回答。自己没有付诸努力就想着找捷径,就是在浪费别人的时间,这是自私。

看完这篇文章,就知道你问的问题为什么没人回答了吧?记住:要学会聪明的提问问题。另外,记得给回答者说一声谢谢

粉丝福利

扫描二维码加入免费的 Android 分享群,不定期会有 MVP 架构设计,NDK 音视频解码 Open GL,Open CV,AR 等免费直播分享课。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
提问的智慧
提问的艺术
程序员,你会问问题吗?
提问前,请先让自己成为值得被教的人
教育技术论坛
如何提出一个好问题?
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服