科研新手之路线选择

谢益辉 2018-08-29

去年有人想请我去 ISCB 在袋鼠国的一个会议,给处在职业早期的科研工作者分享一下如何选择科研之路。我嫌路远就没答应,不过我说也许我可以写一篇日志。转眼快一年过去了,我估计这样一篇日志也没戏了,但我还是简略说一下当时我的即时想法,尽管我并不是搞科研的人。关于如何做出有影响力的工作,我的想法有二:

  1. 不用看远方,就看你自身能感受到的非常痛苦的问题。如果你能解决自己的一个非常痛而且频繁出现的痛点,那么有相当大的概率你也会造福别人,从而产生重大影响。

  2. 解决的问题越基础越好,比如大家常用工作流程中必经的一步,这一步也许已经有现成解决方案了,但每个月总有那么三十来天让你对这个解决方案感到不满。越基础的问题,影响的人群就越广

邀请我的人想让我讲的是 knitr 的开发经验,以上就是核心经验(某种程度上也都是废话)。当年我写 knitr 包只是为了更方便地写我的作业,碰巧做数据分析的人都要写报告,而 knitr 可以写作业,也可以用来写数据分析报告。在 knitr 之前有 Sweave,我用了好几年,刚开始觉得很兴奋,用着用着就到了四处碰壁的状态,觉得一个绝妙的想法不幸得到了一个蹩脚的实现。因为 Sweave 是国企下属单位,等它进化到我理想中的样子不知道要等到什么时候,所以还不如自立民企、推倒重写算了。

在每个学科中,又痛又基础的问题好找吗?肯定不好找,但从软件实现的角度可能相对容易一些,因为软件实现通常是最后一步,在这里摘果子的猴子数量相对少一点。而理论、方法层面的东西,若还有剩下的果子可摘,那应该一定是极难摘取的。

这样的经验分享有用吗?也许有那么一丁点吧,我估计用处不大。为啥呢?一是因为无论成功者怎样分享成功的经验,成功者总是少数(这是定义),多数人都只能接受平庸的现实;二是成功的运气因素真的也是太重要了,而运气好的人也是少数。