提问的艺术-简洁版
PS:主要面向群聊.
摘自:https://lug.ustc.edu.cn/wiki/doc/smart-questions/
在提问之前
当你打算通过群聊/论坛/电子邮件提出技术问题时,请确保做到以下事情:
- 尝试在该论坛的旧文章中搜索答案.
- 尝试上网搜索答案(使用谷歌/必应等搜索引擎).
- 尝试查找相关文档以找到答案.
- 向朋友打听答案.
- 自行思考尝试分析解决.
当你提出问题时,请先表明你已经做了上面的事情,树立一个自己不是不劳而获,并且不会浪费他人时间
的提问者人设是最首要的一步.并且,回答者往往更加愿意帮助那些更喜欢从解决问题中学到知识
的人.
在使用搜索引擎的时候,请使用一些策略,尝试使用简短且更为关键的词语进行搜索,并在提问时给出你的努力(搜索过程),也许你的问题换一个搜索方式就可以了.
准备好你的发言,一个草率的提问只会得到草率的回答,甚至引来嘲讽(这在技术圈子里很正常),你越能表现出你自己对这个问题的努力,就越有可能得到帮助.
别问错问题,如果你的问题基于错误的假设,某个普通黑客(J. Random Hacker)多半会一边在心里想着蠢问题…
,一边用无意义的字面解释来答复你,希望着你会从问题的回答中汲取教训.
绝不要自以为够格
得到答案,你没有;你并没有.毕竟你没有为这种服务支付任何报酬
.你将会是自己去挣到一个答案,靠提出有内涵的、有趣的、有思维激励作用的问题.
另一方面,表明你愿意在找答案的过程中做点什么是一个非常好的开端。谁能给点提示?
、我的这个例子里缺了什么?
以及我应该检查什么地方
比请把我需要的确切的过程贴出来
更容易得到答复。因为你表现出只要有人能指个正确方向,你就有完成它的能力和决心。
当你提问时
注意选择场合,否则你很有可能被忽略或者被看做失败者:
- 在与主题无关的场合(群聊/论坛等)提问.
- 在进阶/专业的论坛提出初级的问题,反之亦然.
- 向没有任何义务与理由解决你的问题的人发送私人消息.
黑客会剔除掉那些搞错场合的问题,以保护他们沟通的渠道不被无关的东西淹没。你不会想让这种事发生在自己身上的。
因此,第一步是找到对的论坛.Google 和其它搜索引擎还是你的朋友,用它们来找到与你遭遇到困难的软硬件问题最相关的网站.通常各种网站都有自己的FAQ等,也许你能够找到帮助.
确定你的问题主题,不要在无关的场合提一个其他方面的问题—在一个软件开发的群聊提一个如何修电脑的问题看起来很傻(除非有人感兴趣).
使用有意义的标题
使用关键信息来吸引专家的注意力,而不是使用诸如帮帮忙
、跪求
、急
、救命啊!!!!
这样令人反感的字眼,一般没人关心你的急迫.
精确地描述问题
注意,在解决一个根本性的问题之前,你可能自己找到了一些步骤,并且卡在了这些步骤.
允许的话,请给出你原始的问题,并将你查找到的解决步骤也一并提出,因为你卡住的步骤也许根本就是错误的甚至毫无意义.
另外,在问题描述中,请:
- 仔细、清楚地描述你的问题或 Bug 的症状。
- 描述问题发生的环境(机器配置、操作系统、应用程序、以及相关的信息),提供经销商的发行版和版本号(如:
Fedora Core 4
、Slackware 9.1
等)。 - 描述在提问前你是怎样去研究和理解这个问题的。
- 描述在提问前为确定问题而采取的诊断步骤。
- 描述最近做过什么可能相关的硬件或软件变更。
- 尽可能地提供一个可以
重现这个问题的可控环境
的方法。
不要低声下气,也不要高高在上
别用原始灵长类动物的把戏来浪费你我的时间。取而代之的是,尽可能清楚地描述背景条件和你的问题情况。这比低声下气更好地定位了你的位置。有时网页论坛会设有专为新手提问的版面,如果你真的认为遇到了初学者的问题,到那去就是了,但一样别那么低声下气。
礼多人不怪,而且有时还很有帮助.没人不喜欢礼貌的聊天,彬彬有礼,对他人保持礼貌,让大家都知道你对他们花时间免费提供帮助心存感激.
另外,比较建议的是,事前道谢,不代表解决后可以不再进行任何回复感谢,在问题解决后,记得回复道谢.
不该问的问题
以下是几个经典蠢问题,以及黑客没回答时心中所想的:
问题:我能在哪找到 X 程序或 X 资源?
回答:就在我找到它的地方啊,白痴 —— 搜索引擎的那一头。天哪!难道还有人不会用 Google 吗?
问题:我怎样用 X 做 Y?
回答:如果你想解决的是 Y ,提问时别给出可能并不恰当的方法。这种问题说明提问者不但对 X 完全无知,也对 Y 要解决的问题糊涂,还被特定形势禁锢了思维。最好忽略这种人,等他们把问题搞清楚了再说。
问题:如何设定我的 shell 提示??
回答:如果你有足够的智慧提这个问题,你也该有足够的智慧去 RTFM,然后自己去找出来。
问题:我可以用 Bass-o-matic 文件转换工具将 AcmeCorp 文件转换为 TeX 格式吗?
回答:试试看就知道了。如果你试过,你就知道了答案,就不用浪费我的时间了。
问题:我的{程序/设定/SQL 语句}没有用
回答:这不算是问题吧,我对要我问你二十个问题才找得出你真正问题的问题没兴趣 —— 我有更有意思的事要做呢。在看到这类问题的时候,我的反应通常不外如下三种
- 你还有什么要补充的吗?
- 真糟糕,希望你能搞定。
- 这关我屁事?
问题:我的 Windows 电脑有问题,你能帮我吗?
回答:能啊,扔掉微软的垃圾,换个像 Linux 或 BSD 的开源操作系统吧。
注意:如果程序有官方版 Windows 或者与 Windows 有互动(如 Samba),你可以问与 Windows 相关的问题,只是别对问题是由 Windows 操作系统而不是程序本身造成的回复感到惊讶, 因为 Windows 一般来说实在太烂,这种说法通常都是对的。
问题:我的程序不会动了,我认为系统工具 X 有问题
回答:你完全有可能是第一个注意到被成千上万用户反复使用的系统调用与函数库文件有明显缺陷的人,更有可能的是你完全没有根据。不同凡响的说法需要不同凡响的证据,当你这样声称时,你必须有清楚而详尽的缺陷说明文件作后盾。
问题:我在安装 Linux(或者 X )时有问题,你能帮我吗?
回答:不能,我只有亲自在你的电脑上动手才能找到毛病。还是去找你当地的 Linux 使用群组者寻求实际的指导吧(你能在这儿找到用户群组的清单)。
注意:如果安装问题与某 Linux 的发行版有关,在它的邮件列表、论坛或本地用户群组中提问也许是恰当的。此时,应描述问题的准确细节。在此之前,先用 Linux
和所有被怀疑的硬件作关键词仔细搜索。
问题:我怎么才能破解 root 帐号/窃取 OP 特权/读别人的邮件呢?
回答:想要这样做,说明了你是个卑鄙小人;想找个黑客帮你,说明你是个白痴!
如何更好地回答问题
态度和善一点。 问题带来的压力常使人显得无礼或愚蠢,其实并不是这样。
对初犯者私下回复。 对那些坦诚犯错之人没有必要当众羞辱,一个真正的新手也许连怎么搜索或在哪找常见问题都不知道。
如果你不确定,一定要说出来! 一个听起来权威的错误回复比没有还要糟,别因为听起来像个专家很好玩,就给别人乱指路。要谦虚和诚实,给提问者与同行都树个好榜样。
如果帮不了忙,也别妨碍他。 不要在实际步骤上开玩笑,那样也许会毁了提问者的设置 —— 有些可怜的萌新会把它当成真的指令。
试探性的反问以引出更多的细节。 如果你做得好,提问者可以学到点东西 —— 你也可以。试试将蠢问题转变成好问题,别忘了我们都曾是新手。
尽管对那些懒虫抱怨一声 RTFM(Read The Fucking Manual) 是正当的,但能给出文档的链接(即使只是建议个 Google 搜索关键词)会更好。
如果你决定回答,就请给出好的答案。 当别人正在用错误的工具或方法时别建议笨拙的权宜之计(workaround),应推荐更好的工具,重新界定问题。
正面地回答问题! 如果这个提问者已经很深入的研究而且也表明已经试过 X 、 Y 、 Z 、 A 、 B 、 C 但没得到结果,回答 试试看 A 或是 B
或者 试试 X 、 Y 、 Z 、 A 、 B 、 C
并附上一个链接一点用都没有。
帮助你的社区从问题中学习。 当回复一个好问题时,问问自己如何修改相关文件或常见问题文件以免再次解答同样的问题?
,接着再向文件维护者发一份补丁。
如果你在研究一番后才作出了回答,展现你的技巧而不是直接端出结果
。毕竟授人以鱼不如授人以渔
。
截图而不是拍照
群聊中经常有提问者认为有人帮助他们代表着也愿意去费力分析自己提供的模糊不堪的照片.
一旦你使用类似这些回复:
我觉得不模糊啊
,但是照片清楚不清楚和我的问题有什么关系
,我的电脑没有装xxx,不方便截图
你很有可能被视作小丑而被忽略甚至挨骂.
记住,你能不能提供清晰的截图和信息是你自己的事情
,提问者只是从百忙之中抽出空闲时间无偿地提供帮助,没有任何义务去迁就你.
好用的截图工具有这些:
windows下:
- 微信/QQ截图,自行设置快捷键,一般为
ctrl+alt+A
- PixPin,一个新软件,十分方便的截图工具
- Windows自带的截图工具
Win+shift+S
,Alt+PtrSc
- 注意使用
ctrl+v
来粘贴截图