24小时热门版块排行榜    

CyRhmU.jpeg
查看: 120  |  回复: 0
当前主题已经存档。

ms98

[交流] 【转帖】提问的智慧(二)

使之更易回复
    以“请向……回复”来结束问题多半会使你得不到回答。如果你觉得花几秒钟在邮件客户端设置一下回复地址都麻烦,我们也觉得花几秒钟 考虑你的问题更麻烦。如果你的邮件客户端程序不支持这样做,换个好点的。如果是操作系统不支持所有这种邮件客户端程序,也换个好点的。
    在网页论坛,要求通过电子邮件回复是完全无礼的,除非你确信回复的信息也许是机密的(而且有人会为了某种未知的原因只让你而不是整个论坛知道答 案)。如果 你只是想 在有人回复线索时得到电子邮件提醒,可以要求论坛发送。几乎所有论坛都提供诸如“留意本线索”、“有回复发送邮件”的功能。

    使用清晰、语法与拼写正确的语句
    经验告诉我们,粗心与草率的作者通常也粗心与草率地思考和编程(我敢打赌)。为这些粗心与草率的思考者回答问题没有什么好处,我们宁可将 时间花在其它地方。
    清楚、完整地表达你的问题非常重要。如果你觉得这样做麻烦,我们也觉得注意(你的问题)麻烦。花点额外的精力斟酌一下字句,用不着太僵硬与正式──事实 上,黑客文化很看重能准确地使用非正式、俚语和幽默的语句。但它必须很准确,而且有迹象表明你是在思考和关 注问题。
    正确地拼写、使用标点和大小写,不要将“its”混淆为“it's”,“loose”搞成“lose”或者将    “discrete”弄成 “discreet”。不要全部用大写,这会被看成无礼的大声嚷嚷 (全部小写也好不到哪去,因为不易阅读。Alan Cox[注:著名黑客,Linux内核的重要参与者]也许可以这样做,但你不行 )。
    一般而言,如果你写得象个半文盲似的傻子,多半得不到理睬。如果象个小孩似地乱写乱画那绝对是在找死,可以肯定没人会理你(或者最多 是给你一大堆指责与挖苦)。
如果在非母语论坛中提问,你的拼写与语法错误会得到有限的宽容,但懒惰完全不会被容忍(是的,我们通常看得出其中的差别)。同时,除非你知道回复者 使用 的语言,请使用 英语书写。繁忙的黑客一般会直接删除用他们看不懂语言写的消息。在互联网上英语是工作语言,用英语书写可以将你的问题不被 阅读就被直接删除的可能降到最低。

    使用易懂的格式发送问题
    如果你人为地将问题搞得难以阅读,它多半会被忽略,人们更愿读易懂的问题,所以:
    •        使用文本而不是HTML(超文本标注语言) ( 关闭HTML 并不难)
    •        使用MIME(多用途互联网邮件扩展)附件通常没有问题,前提是真正有内容(譬如附带的源文件或补丁),而不仅仅是邮件客户端程序 生 成的模板(譬如只是消息内容的拷贝)。
    •        不要发送整段只是单行句子但多次折回的邮件(这使得回复部分内容非常困难)。设想你的读者是在80个字符宽的文本终端阅读邮件, 设置你的行折回点小于80列。
    •        但是,也不要用 任何固定列折回数据(譬如直接传送的日 志文件或会话记录)。数据应该原样包含,使回复者确信他们看到的与你看到的东西一样。
    •        在英语论坛中,不要使用'Quoted-Printable' MIME编码发送消息。这种编码对于张贴非ASCII语言可能是必须的,但很多邮件代理程序并不支持。当它们分断时,那些文本中四处散布 的 “=20”符号既难看也分散注意力。
    •        永远不要指 望黑客们阅读使用封闭的专用格式编写的文档,诸如微软公司的Word或Excel文件等,大多数黑客对此的反应就象有人将还在冒热气的猪 粪倒在你门口时你的反应一样。即使他们能够处理,他们也很厌恶这么做。
    •        如果你从使用视窗的电脑发送电子邮件,关闭微软愚蠢的“聪明引用”功能,以免在你的邮件中到处散布垃圾字符。
    •        在网页论坛,勿滥用“表情符号”和“html”功能(当它们提供时)。一两个表情符号通常没有问题,但花哨的彩色文本倾向于使人认为 你是个无能之辈。过滥地使用表情符号、色彩和字体会使你看来象个傻笑的小姑娘。这通常不是个好主意,除非你只是对性而不是有用的回复更有兴趣。
    如果你使用图形用户界面的邮件客户端程序(如网景公司的Messenger、微软公司的Outlook或者其它类似的),注意它们的缺省配置不一 定满足这些要求。大多数这类程序有基于菜单的“查看源码”命令,用它来检查发送文件夹中的消息,以确保发送的是没有多余杂质的纯文本文件。

    描述问题应准确且有内容
    •        仔细、清楚地描述问题的症状
    •        描述问题发生的环境(主机,操作系统,应用程序,任何相关的),提供销售商的发行版和版本号(如:“Fedora Core 2”、“Slackware 9.1”等)
    •        描述提问前做过的研究及其理解。
    •        描述提问前为确定问题而采取的诊断步骤。
    •        描述最近对计算机或软件配置的任何相关改变。
    尽最大努力预测黑客会提到的问题,并提前备好答案。
    Simon Tatham写过一篇叫 如何有效报告臭虫 的文章,我强烈推荐各位阅读。

    多不等于准确
    你应该(写得)准确且有内容,简单地将一大堆代码或数据“倾倒”在求助消息中达不到目的。如果你有一个很大且复杂的测试样例让程序崩溃,尝 试将其裁剪得越小越好。
至少有三个理由支持这点。第一,让别人看到你在努力简化问题使你更有可能得到回复。第二,简化问题使你更有可能得到有用的回复。第三,在提纯臭虫 报告的过程中,你可能自己就找到了解决问题的方法或权宜之计。

    别动辄声称找到臭虫
    当你在一个软件中遇到问题,除非你非 常、非常的有根据,不要动辄声称找到了臭虫。提示:除非你能提供解决问题的源代码补丁,或者对前一版本的回归测 试 表现出不正确的行为,否则你都多半不够完全确信。对于网页和文档也如此,如果你(声称)发现了文档的“臭虫”,你应该能提供相应位置的替代文本。
    记住,还有许多其它用户未经历你遇到的问题,否则你在阅读文档或网页搜索时就应该发现了(你在报怨前已经做了这些,是吧?)。这也意味着很有可能是你弄错了而不是软件本身有问 题。
    编写软件的人通常非常辛苦地使它尽可能完美。如果你声称找到了臭虫,也就暗示他们做错了什么,而这几乎总会使人不快──即使你是对的, 在主题中嚷嚷“臭虫”也是特别不老练的。
    提问时,即使你私下非常确信已经发现一个真正的臭虫,最好写得象是你做错了什么。如果真的有臭虫,你会在回复中看到这点。这么做的话,如果真有虫子,维护者就会向你道歉,这总比你弄 砸了然后欠别人一个道歉要强。

    低声下气不能代替自己应做之事
    有些人明白他们不应该粗鲁或傲慢地行事并要求得到答复,但他们退到相反的低声下气的极端,“我知道我只是个什么也不是、什么也不懂的失败者, 但……”。这既使人困扰也没有帮助,当伴随着对实际问题含糊的描述时还特别令人反感。
    别用低级灵长类动物的策略浪费大家的时间,相反,尽量清楚地表述背景事实和你的问题,这比低声下气更好地摆正了你的位置。
    有时,网页论坛设有单独的初学者提问区域,如果你真的认为遇到了初浅的问题,到那去就是了,但一样别低声下气。

    描述问题症状而不是猜测
    告诉黑客你认为是什么导致了问题是没有用的(如果你的诊断理论是了不起的东西,你还会向他人咨询求助吗?)。所以,确保只是告诉他们问题的原始 症状,而不是你的解释和理论,让他们来解释和诊断。如果你认为陈述你的猜测很重要,清楚地说明这只是你的猜测并描述为什么它们不起作用。

    愚蠢:
    我在编译内核时接连遇到SIG11错误,怀疑主板上的某根电路丝断了,找到它们的最好办法是什么?

    明智:
    我组装的电脑(K6/233 CPU、FIC-PA2007主板(威盛Apollo VP2芯片组)、Corsair PC133 SDRAM 256Mb内 存)最近在开机20分钟左右、做内核编译时频繁地报SIG11错,但在头20分钟内从不出问题。重启动不会复位时钟,但整夜关机会。更换所有内存未解决问 题,相关的典型编译会话日志附后。

    按时间先后罗列症状
    刚出问题之前发生的事情通常包含有解决问题最有效的线索。所以,记录中应准确地描述你及电脑在崩溃之前都做了些什么。在命令行处理的 情况下,有会话日志(如运行脚本工具生成的)并引用相关的若干(如20)行记录会非常有帮助。
    如果崩溃的程序有诊断选项(如-v详述选项),仔细考虑选择这些能在记录中增加排错信息的选项。
    如果你的记录很长(如超过四段),也许在开头简述问题随后按时间先后罗列详细过程更有用。这样做,黑客在读你的记录时就知道该查哪些内容了。

    描述目的而不是步骤
    如果你想弄清楚如何做某事(而不是报告一个臭虫),在开头就描述你的目标,此后才描述为此采取的措施所遇到的问题。
    经常有这种情况,寻求技术帮助的人在脑袋里有个更高层面的目标,他们在自以为能达到目标的特定道路上被卡住了,然后跑来问该怎么走,但 没有意识到这条路本身有问题,结果要费很大的劲才能通过。

    愚蠢:
    我怎样才能让某图形程序的颜色拾取器取得十六进制的RGB值?

    明智:
    我正试图用自己选定数值的颜色替换一幅图片的颜色表,我现在唯一知道的方法是编辑每个表槽,但却无法让某图形程序的颜色拾取器取得十六进 制的RGB值。

    第二种提法是明智的,它使得建议采用更合适的工具完成任务的回复成为可能。

    别要求私下回复
    黑客们认为问题的解决过程应该公开、透明,此过程中如果更有才能的人注意到不完整或者不当之处,最初的回复才能够、也应该被更正。同时,作为 回复者也因为能力和学识被其它同行看到而得到某种回报。
    当你要求私下回复时,此过程和回报都被中止。别这样做,让回复者来决定是否私下回答──如果他 真这么做了,通常是因为他认为问题编写太差或者太肤浅 以 至于对其它人无意义。
    对这条规则存在一条有限的例外,如果你确信提问可能会导致大量雷同的回复时,那么“给我发电子邮件,我将为小组归纳这些回复”将是神奇的句子。试图 将邮 件列表或新闻组从洪水般雷同的回复中解救出来是非常有礼貌的──但你应信守诺言。

    问题应明晰
    漫无边际的问题通常也被视为没有明确限制的时间无底洞。最有可能给你有用答案的人通常也是最忙的人(假如只是因为他们承担了大多数工作的话),这些 人 对于没 有限制的时间无底洞极其反感,所以他们也倾向于讨厌那些漫无边际的问题。
    如果你明确了想让回复者做的事(如指点方向、发送代码、检查补丁或其它),你更有可能得到有用的回复。这可以使他们集中精力并间接地设定了他们为帮 助你需要花费的时间和精力上限,这很好。
    要想理解专家生活的世界,可以这样设想:那里有丰富的专长资源但稀缺的响应时间。你暗中要求他们奉献的时间越少,你越有可能从这些真正懂行也真正很 忙的专家 那里得到回答。
    所以限定你的问题以使专家回答时需要付出的时间最少──这通常还与简化问题不一样。举个例,“请问可否指点一下哪有好一点的X解释?”通常要 比“请解释一下X”明智。如果你有什么代码不运行了,通常请别人看看哪有问题比叫他们帮你改正更明智。

    别张贴家庭作业
    黑客们善于发现“家庭作业”式的问题。我们大多数人已经做了自己的家庭作业,那是该你做的,以便从其经历中学习。问一 下提示没有关系,但不是要求完整的解决方案。
    如果你怀疑自己碰到了一个家庭作业式的问题,但仍然无法解决,尝试在用户组论坛或(作为最后一招)在项目的“用户”邮件列表或论坛中提问。尽管 黑客们会看出来,一些高级用户也许仍会给你提示。

    删除无意义的问题
    抵制在求助消息末尾加上诸如“有人能帮我吗?”或“有没有答案?”之类在语义上无任何意义东西的诱惑。第一,如果问题描述还不完整,这些附 加的东西最多也只能是多余的。第二,因为它们是多余的,黑客们会认为这些东西烦人──就很有可能用逻辑上无误但打发人的回复,诸如“是的,你可 以得到帮助”和“不,没有给你的帮助”
一般来说,避免提“是或否”类型的问题,除非你想得到 “是或否”类型的回答。

    不要刻意标明问题紧急
    这是你自己的问题,不要我们的。宣称“紧急”极有可能事与愿违:大多数黑客会直接删除这种消息,他们认为这是无礼和自私地企图得到即时与特殊的关 照。
    有一点点局部的例外,如果你是在一些知名度很高、会使黑客们激动的地方使用程序,也许值得这样去做。在这种情况下,如果你有期限压力,也很有礼貌 地提到这点,人们也许会有足够的兴趣快一点回答。
    当然,这是非常冒险的,因为黑客们对什么是令人激动的标准多半与你的不同。譬如从国际空间站这样张贴没有问题,但代表感觉良好的慈善或政治原 因这样做几乎肯定不行。事实上,张贴诸如“紧急:帮我救救这个毛绒绒的小海豹!”肯定会被黑客回避或光火,即使他们认为毛绒绒的小海豹很重要。
    如果你觉得这不可思议,再把剩下的内容多读几遍,直到弄清楚了再发贴。

    礼貌总是无害的
    礼貌一点,使用“请”和“谢谢你的关注”或者“谢谢你的意见”,让别人明白你感谢他们无偿花时间帮助你。
    坦率地说,这一点没有语法正确、文字清晰、准确、有内容和避免使用专用格式重要(同时也不能替代它们)。黑客们一般宁可读有点唐突但技术鲜明的臭 虫报告,而不是那种礼貌但含糊的报告。(如果这点让你不解,记住我们是按问题能教我们些什么来评价一个问题的)
    然尔,如果你已经谈清楚了技术问题,客气一点肯定会增加你得到有用回复的机会。
    (我们必须指出,本文唯一受到一些老黑客认真反对的地方是以前曾经推荐过的“提前谢了”,一些黑客认为这隐含着事后不用再感谢任何人的暗示。我们的 建议是 先说 “提前谢了”,事后再对回复者表示感谢。或者换种方式表达,譬如用“谢谢你的关注”或“谢谢你的意见”)。

    问题解决后追加一条简要说明
    问题解决后向所有帮助过的人追加一条消息,让他们知道问题是如何解决的并再次感谢。如果问题在邮件列表或新闻组中受到广泛关注,在那里追加此消息比 较恰当。
最理想的方式是向最初提问的线索回复此消息并在主题包含“已解决”、“已搞定”或其它同样意思的明显标记。在人来人往的邮件列表里,一个看见线索 “问题X”和“问题X-已解决”的潜在回复者就明白不用再浪费时间了(除非他个人觉得“问题X”有趣),因此可以用此时间去解决其它 问题。
    你追加的消息用不着太长太复杂,一条简单的“你好──是网线坏了!谢谢大家──比尔”就比什么都没有要强。事实上,除 非解决问题的技术真正高深,一条简短而亲切的总结比长篇大论要好。说明是什么行动解决了问题,用不着重演整个排错的故事。
对于有深度的问题,张贴排错历史的摘要是适当的。描述问题的最终状态,说明是什么解决了问题,在此之后才指明可以避免的弯路。应避免的 弯路部分应放在正确的解决方案和其它总结材料之后,而不要将此消息搞成侦探推理小说。列出那些帮助过你的名字,那样你会交到朋友的。
    除了有礼貌、有内容以外,这种类型的追帖将帮助其他人在邮件列表、新闻组或论坛文档中搜索到真正解决你问题的方案,从而也让他们受益。
    除上述而外,此类追帖还让每位参与协助的人因问题的解决而产生一种满足感。如 果你自己 不是技术专家或黑客,相信我们,这种感觉对于你寻求帮助的老手和专家非常重要。问题叙述到最后不知所终总是令人沮丧的,黑客们痒 痒地渴望看到它们被解决。“挠痒痒”为你挣到的好报将对你下次再次张贴提问非常非常的有帮助。
    考虑一下怎样才能避免其他人将来也遇到类似的问题,问问自己编一份文档或FAQ补丁有没有帮助,如果有的话就将补丁发给维护者。
    在黑客中,这种行为实际上比传统的礼貌更重要,也是你善待他人而赢得声誉的方式,这是非常有价值的财富。

    如何解读回答
    RTFM和STFW:如何知道你已完全搞砸
    有一个古老而神圣的传统:如果你收到了“RTFM”的回复,发信人认为你应该去“读读该死的手册”。他多半是对的,去读一下吧。
    RTFM有个年轻的亲戚,如果你收到“STFW”的回复,发信人认为你应该“搜搜该死的网络”。他多半也是对的,去搜一下吧。(更温和一点的说法是 “Google 是你的朋友!”)
在网页论坛,你也可能被要求去搜索论坛的文档。事实上,有人甚至可能热心地为你提供以前解决此问题的线索。但不要依赖这种好心,提问前应先搜索 一下文 档。
    通常,叫你搜索的人已经打开了能解决你问题的手册或网页,正在一边看一边敲键盘。这些回复意味着他认为:第一,你要的信息很容易找到。第二,自已找 要比别人喂到嘴里能学得更多。
    你不应该觉得这样就被冒犯了,按黑客的标准,他没有不理你就是在向你表示某种尊敬,你反而应该感谢他热切地想帮助你。

[ Last edited by ms98 on 2009-6-15 at 13:39 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 ms98 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见