-
Notifications
You must be signed in to change notification settings - Fork 964
正确的提问方式
这篇文章来自萧大
能有效解决问题的提问方法
我觉得很棒,就转载到这里,下面是原文:
不会提问就很难通过问问题解决问题,
失败的提问无论对于你还是对于看问题的人来说是严重的身心伤害。
我不常问问题,但我是身经百战了,见的低质量问题太多了,
今天我感觉很有必要传授一点提问的经验。
方法很简单,就是按如下五点原则来提问
注意,这五点原则不仅适用于技术问题,也适用于其他问题):
- 描述你需要完成的需求以及目的(目的就是为什么要做这个需求)
- 描述你的想法或思路
- 描述具体的实现过程
- 描述遇到的问题,包括正确信息,报错信息或得到的不正确的信息
- 有条件则贴出具体实现代码
五点原则的解释:
-
为什么要描述你需要完成的需求以及目的?
你的做法可能是错误的,描述需求可以帮助他人发现你南辕北辙的解决方案。
你的需求可能是错的,给出目的可以帮助他人发现你错误的需求。 -
为什么要描述你的想法或思路
描述思路有助于他人搞懂你在做的事情、搞懂你遇到的问题
你解决问题的想法和思路可能是错的,描述清楚有助于发现错误 -
为什么要描述具体的实现过程
描述实现过程有助于帮助他人理解你的具体问题 -
为什么要描述遇到的问题,包括正确信息,报错信息或得到的不正确的信息
对具体信息的描述可以帮助他人分析具体问题,所以要给出错误的具体、完整的信息,而不是残缺的截图或者零散的几句描述 -
为什么要贴出具体实现代码
如果不尽量给出完整、简化、可运行、可重现问题的代码,他人很难定位具体问题,也就无从解决问题了
范例一则:
反例一则:
[还未学会正确提问的楼主]: 萧大 你有web服务器 方面的资料么 想用Python 构建一个 web服务器
[萧井陌]: 打开百度 输入 python web 服务器 做个预研再来问人吧....... 不要把别人当搜索引擎
[还未学会正确提问的楼主]: 我知道 搜索过 不会犯 这种低级错误 都老司机了 我想让你推荐个 比较系统的web服务器 理论上的 书籍之类的
[萧井陌]: 你意思是你想造一个web服务器? 那为啥不能直接问呢?
[还未学会正确提问的楼主]: 是的 想造一个简单的 web服务器 轮子
[萧井陌]: 你就搜 用python写web服务器或者直接看flask初版源码
[还未学会正确提问的楼主]: 搜了 找到一个老外的 伯乐网翻译的 正在看
[萧井陌]: 那你还有什么问题呢?
[还未学会正确提问的楼主]: 想问你 有木有更系统一点的
[萧井陌]: 没有 这个世界上最系统的东西就是教育部的大纲、教材和配套习题 因为政府收税 并且有责任心 如果你能把你的话一次性描述清楚 还需要这么麻烦地浪费双方的时间吗? 「我想自己用python造一个web服务器的轮子,通过搜索我找到了一个外国教程的中文翻译版,我想问一下是否有更系统的资料?」 你如果这样问 不就可以一次性解决你的问题了 你开心别人也开心 这样的话我就可以直接回你 没有 而不用诱导性地问出所有的前置条件 不要觉得我是在敷衍打压你 这是很重要的技能 如果你能认真思考这段话,将会得到一笔宝贵的财富