开源代码分析技巧之四——国外技术社区提问

   一、笔者邮件提问经历


     由于在高校有一次国外提问成功的例子,所以,笔者并不恐惧提问。个人认为,老外不论科研、技术方面都比较严谨。只要你的问题够具体、够有技术深度、难度、不涉及安全领域及知识产权等,老外基本多少都会回复。


      二、向官网邮件群组提问


      就开源代码而言,不是一成不变的。他们会有升级更新,比如Samba源码现在的4.1.2版本是2013年11月22日(昨天)刚发布的。而升级的推动源一般是用户的使用反馈。所以,开源代码都会有技术问答邮件群组,用于搜集大家使用中遇到的难题,技术发烧友甚至源码作者会就问题进行专门解析。


      Samba技术邮件群组:samba-technical@lists.samba.org;


      Kerberos技术邮件群组:krbdev-request@mit.edu;


      邮件一般是群发,不是专门针对某个人的。并且,注册以后,你也会每天收到别人的提问及解答,从中也能学到知识。


二、邮件提问经验总结


      个人总结的提问内容技巧,包括但又不限于以下几条:


      (1)标题明确——一句话概括出你的问题本质。


      (2)简要背景知识介绍——避免“直奔主题”,交待什么情况下遇到了问题,可以将自己搭建的环境说一下。必要的时候,可以画个简图,更直观。


      (3)说一下研究进展——比如在背景的基础上,自己研究到哪了,说一下个人的分析和认知。


      (4)着重介绍抛出的问题——这是核心,多详细都不为过。说一下自己怎么遇到这个问题的,自己目前的困惑是什么。


      (5)备注个人信息——以高校科研名义的话,回复会较快。


        注意点:英文不一定多漂亮,也不一定100%语句非常流畅,但至少不要有单词拼写错误,不要有中文字符。这点,可以Google翻译校正。只要不太烂,老外都能看懂的。


      三、国外技术问答社区也是很好的选择


      国内的技术论坛,如CSDN论坛、ChinaUnix、51cto等也是较好的选择。但就个人提问对比而言,就samba、kerberos的研究,国内这方面的专家还相对较少。远不及C++、MFC、网络通信、Linux技术问答模块的回复热度之高。


      对比之下,国外的StackExchange下网站问答更为高效、专业些。


      (1)*——最火的技术语言问答平台,供程序员互相解答编程问题的问答网站。


      (2)ServerFault——服务器类、架构类、网络管理员的问答平台。


      (3)InformationSecurity——专业的网络、信息安全问答平台。


      …….


      以上三个网站,笔者都有使用。感觉的确很专业、效率高、回复较靠谱。提问的问题都要有水准,否则,问题会被“下架”,会被减分。问得好、并且有回复,自己满意后会加分。良好的互动这点国内还很空白。有多家网站模仿,但是结果你懂的。


      四、提问小结


      提问不是“万能钥匙”,个人建议除非凭自己之力、团队之力无法解决的问题,再去提问。为什么这么说呢?


      一、时间不允许。笔者曾尝试用英文说清楚一个问题,前提是先大段写好了中文问题并多次阅读没有问题,光翻译校正就是2个小时的时间。所以,提问是耗时的。建议,抽业余整的时间去写,这样,思路会很连贯、清晰。


      二、如果所有问题都提问,势必会形成依赖,丧失了独立思考的能力。


      一旦有了答案,要自己分析“答案”的利弊,不要“拿来主义”,有自己的判定和思考,吸取“答案”的精髓利用到自己的研究或者源码分析中实为王道。


      所以,提问固然好,但要“三思而后行”!


      2013-11-23 am10:59思于家中床前


         


推荐阅读:


【1】开源代码分析技巧之一——打印调用逻辑


http://blog.csdn.net/laoyang360/article/details/12676131


【2】开源代码分析技巧之二——gdb单步调试


http://blog.csdn.net/laoyang360/article/details/14102181


【3】开源代码分析技巧之三——老外如是说


http://blog.csdn.net/laoyang360/article/details/16897117


【5】开源代码分析技巧之四——高效Windows源码分析


http://blog.csdn.net/laoyang360/article/details/18186529


上一篇:健身不忘编程序,阿里巴巴工程师研发“代码单车”


下一篇:如何设置Fiddler来拦截Java代码发送的HTTP请求,进行各种问题排查