提问的艺术

April 16, 2020 默认分类

图片来源:https://www.amazon.com/dp/B07PHXB5LC,本人与此卖家无关。

我不是技术人,但是我十分能理解那些技术人的痛苦——当他们被迫给一群大爷大妈修电子设备的时候。大爷大妈可能会存在一些沟通上的困难和问题,使得帮助的过程变得十分痛苦。

如果一个人想向另一个人提问题,并且前者期待一个有意义的解答,而不是一句抖机灵的话,或者是不明不白的“就这?就这?就这?……”,那么前者应该,而且是有义务提供一些后者需要的信息。

一个很具体的技术问题,通常包括系统版本、环境信息、重现条件、期待结果和实际结果。比如 VueJS 的这个工单,是我从它的 GitHub Issues 里面抽取的,是诸多 issue 当中的一个。私以为提问的方法是比较规范的。此外,为了引导提问者,GitHub 还推出了工单模板,在 issue 里预先填入一些框架性的内容,这样用户只需要做填空就可以了。

态度问题暂且不论,就问题本身的好坏而言,第一,提问者不应该在不提供或拒绝提供完整的必要信息的情况下,让其他人帮他回答问题。不提供必要信息,这就是对问题本身的不尊重,因为提问者不当地以为,这个问题是如此简单,以至于连信息都不需要完整提供。回答者天生就应该知道我在说什么。不论提问者对回答者本人是否尊重,这种认识本身就是无益于问题的解决的。

第二,在提问者不提供完整信息,致使回答者做出不当判断,或者根本无法解决问题的情况下,如果提问者认为“这是回答者水平不到位”或者“回答者人品有问题”,甚至就此开始长篇大论地演讲,那么只能说明,提问者的脑洞清奇,难以让人理解。

第三,先自己读文档。在提问的时候,告诉对方自己看了哪些文档,做了哪些尝试,在哪里卡住了。不这样做,对方根本搞不清你的思路是怎样的,甚至不知道你做了什么,想达到什么目的。用网上的一句话说,就是“能问谷歌(百度)的就不要去问别人”。当然,如果提问者连辜狗和百度都不会,还自称“网民”,我也就无话可说了。