《提问的智慧》摘要

来源:互联网 发布:中国体制 知乎 编辑:程序博客网 时间:2024/05/29 15:29

jyy的调试公理:

The machine is always right. (机器永远是对的) Every line of untested code is
always wrong. (未测试代码永远是错的)

小百合系版”有像我一样不会写代码的cser么?”回复节选:

我们都是活生生的人, 从小就被不由自主地教导用最小的付出获得最大的得到, 经常会忘记我们究竟要的是什么. 我承认我完美主义,
但我想每个人心中都有那一份求知的渴望和对真理的向往, “大学”的灵魂也就在于超越世俗, 超越时代的纯真和理想 –
我们不是要讨好企业的毕业生, 而是要寻找改变世界的力量. – jyy 教育除了知识的记忆之外, 更本质的是能力的训练,
即所谓的training. 而但凡training就必须克服一定的难度, 否则你就是在做重复劳动, 能力也不会有改变.
如果遇到难度就选择退缩, 或者让别人来替你克服本该由你自己克服的难度, 等于是自动放弃了获得training的机会,
而这其实是大学专业教育最宝贵的部分. – etone

对黑客而言,“问得好!”是发自内心的大力称赞。

我们不想掩饰对这样一些人的蔑视–他们不愿思考,
或者在发问前不去完成他们应该做的事。
这种人只会谋杀时间–他们只愿索取,从不付出,无端消耗我们的时间,
而我们本可以把时间用在更有趣的问题或者更值得回答的人身上。
我们称这样的人为“失败者”。

别向黑客乞求 如果你决定向我们求助,当然不希望被视为失败者,
更不愿成为失败者中的一员。立刻得到有效答案的最好方法,就是象胜利者那样提问
—— 聪明、自信、有解决问题的思路,只是偶尔在特定的问题上需要获得一点帮助。

= 提问之前 =

在通过电邮、新闻组或者聊天室提出技术问题前,检查你有没有做到:

  1. 通读手册,试着自己找答案。
  2. 在FAQ?找答案(一份维护得好的FAQ可以包罗万象:)。
  3. 在网上搜索(个人推荐google~~~)。
  4. 向你身边精于此道的朋友打听。

当你提出问题的时候,首先要说明在此之前你干了些什么;这将有助于树立你的形象:你不是一个妄图不劳而获的乞讨者,不愿浪费别人的时间。如果提问者能从答案中学到东西,我们更乐于回答他的问题。

周全的思考,准备好你的问题,草率的发问只能得到草率的回答,或者根本得不到任何答案。越表现出在寻求帮助前为解决问题付出的努力,你越能得到实质性的帮助。

小心别问错了问题。如果你的问题基于错误的假设,普通黑客(J. RandomHacker)通常会用无意义的字面解释来答复你。

决不要自以为够资格得到答案,你没这种资格。你要自己去“挣”回一个答案,靠提出一个有内涵的,有趣的,有思维激励作用的问题–一个对小区的经验有潜在贡献的问题,而不仅仅是被动的从他人处索要知识–去挣到这个答案。

另一方面,表明你愿意在找答案的过程中做点什么,是一个非常好的开端。“谁能给点提示?”、“我这个例子?缺了什么?”以及“我应该检查什么地方?”比“请把确切的过程贴出来”更容易得到答复。因为你显得只要有人指点正确的方向,你就有完成它的能力和决心。

= 怎样提问 =

  • 用辞贴切,语法正确,拼写无误
    • 使用含义丰富,描述准确的标题
  • 精确描述,信息量大
    • 谨慎明确的描述症状
    • 提供问题发生的环境(机器配置、操作系统、应用程序以及别的什么)
    • 说明你在提问前是怎样去研究和理解这个问题的
    • 说明你在提问前采取了什么步骤去解决它
    • 罗列最近做过什么可能有影响的硬件、软件变更
    • 尽量想象一个黑客会怎样反问你,在提问的时候预先给他答案
  • 话不在多 只说症状,不说猜想
  • 按时间顺序列出症状 明白你想问什么
  • 别问应该自己解决的问题
  • 去除无意义的疑问
  • 问题解决后,加个简短说明
  • 谦逊绝没有害处,而且常帮大忙
  • 如果你不是很理解答案,别立刻要求对方解释
  • 象你以前试着自己解决问题时那样(利用手册,FAQ,网络,身边的高手),去理解它。如果你真的需要对方解释,记得表现出你已经学了点什么

=三思而后问 =

RTFM和STFW