程序员不好好写报告的结果是很严重的

转载 2017年02月22日 15:18:06

转自:http://blog.sciencenet.cn/blog-404304-884328.html

倒腾了很久的代码,结果测试也通过了,然后现在要写报告了,心情的表情马上从呲牙变成咧嘴。

倒腾了一上午,一直在摸索怎样在linux平台上把报告怎么快速搞出来,然而这个对我来说好像太不效率了,好了,不搞逗了,老老实实作报告吧。谨以下文,安慰我这种兔子乱跳的心情。

按惯例先讲点废话。对于生信的各种指责,其中有一条看起来既合理、又致命:你用的测序仪等设备是老外做的,你只是做做计算,因此没有原创性。这个指责流传之广、影响之深,以至于很多老先生也认为这样的指责是合理的。在兄弟我看来,这个指责因为恶意的混淆了一些基本概念,所以本身存在致命的问题:没有搞明白生信是做什么的。第一,搞生信的不是机器猫,所以你不要老是觉得搞生信的就应该是哆啦A梦,你想要啥生信就必须给你啥。要有期望,但不要像你个窝囊废一样什么都指望别人。做人,要靠自己。第二,生信的研究范畴里,新仪器设备的研发,不是必须的。那么,测序仪等设备的研发,是哪个领域该做的事情?答:生物医学工程。那么生物医学工程领域的学者在做测序仪不?答:一直在做,例如,东南大学正在开发设计三代测序仪,如“东南大学第三代人类基因测序关键技术有突破”。东南大学的生物医学工程专业在国内首屈一指,比我们华工的生物医学工程要强。那么咱华工的生物医学工程是不是就是废物点心、啥事儿不干呢?当然不是,咱华工有强悍无比的光学成像,例如,“华中科大研发‘大脑地图’”,后来发了Science,做了十几年了还在做。另外,咱华工的数字PET,“【华中科技大学】数字PET国家重大仪器专项正式启动”,那也是拿得出手的设备。

所以,第一,兄弟我历来认为,专业学者不要随便跨行,该谁的事情,自己解决。第二,搞测序仪是否需要生信?需要。例如东南大学咱生信领域的前辈孙老师,就是在东南的生物医学工程学院。不然你测出数据之后没人分析,咋知道你测序仪做的好不好?重点在于:生信很重要,但做测序仪这事儿是否搞生信的一定要抢生物医学工程的饭碗?那人家大嘴巴子扇过来怪我们多管闲事咋办?第三,足球运动员内裤卖的好当然很重要,比如C罗,但卖内裤不是成为顶级球员必须的,例如煤老板。因此,请继续忠于理想,但偶尔也得面对现实。

讲正事。昨天还是前天,华大发布BGI Online,主要是为测序数据分析提供一站式的服务。紧接着,国内迅速有帖子质疑华大的BGI Online抄袭美国的七桥公司 (Seven Bridges):“华大发布基因组数据分析云平台被质疑抄袭七桥基因”,主要的指责有两点:第一,安全白皮书基本上是抄了七桥公司的,并且有图有真相;第二,分析流程抄袭了七桥公司。那么两个指责是否正确?或者说:华大有没有抄袭?

先讲第一个问题。从质疑帖子的截图来看,华大基因应该是抄了七桥的白皮书,而且不是小抄,基本上是直接把人家的白皮书搬了过来。为什么华大会抄别人的安全说明书呢?我仔细的考虑了5秒钟,明白了。原因很简答:程序员们都不喜欢写文档,全球都如此。写程序做软件对于程序员们是乐事,但辛辛苦苦写一些绝对不会有人看的说明书,那是相当的无聊。我和胖子合作做了一堆软件,历来都是认认真真写使用指南,不过胖子后来做了统计,发现说明书的下载量基本接近于零。所以胖子整天抱怨说没有人看说明你还整那玩意儿干啥的?我说那也得整啊,要讲规范好吧。第二个原因是:华大的程序员们,想来英文水平也不咋地。咱写说明书英文写的都是一塌糊涂,我不相信写文档能优美到哪里去。所以综上两个原因,华大的程序员应该是偷了个懒,就把人家的东西搬了过来。因此这个指责没有问题。当然华大反应也是够快,以迅雷不及掩耳盗铃之势就更换了白皮书,不相信可以跟七桥的白皮书比较一下,已经基本上不一样了 (这一步骤花了足足25秒钟的时间)。当然对于这个问题,第一,华大应该就抄人家白皮书这件事儿公开道歉。错了就是错了,你改的快那也还是犯了错不是?第二,以前人家不关注你,你抱怨大家不关注;现在大家关注你,你要犯错也别怪大家痛批你。第三,这个其实也就是个小问题,程序员习惯的问题,一是写文档的程序员要罚写500字检讨,面壁俩小时;二是华大应该以此为契机,规范一下程序员的工作习惯。毕竟已经是全球领先的大公司,不能老拿自己当小混混。

第二个问题,分析流程有没有抄袭?我花了整整1分钟的时间来比较BGI Online七桥公司分析流程的异同。七桥的核心分析流程有5个,包括基于BWA+GATK的全外显子组分析、基于BWA+GATK的全基因组分析、基于CuffdiffRNA-Seq差异表达分析、基于TopHatRNA-Seq比对,和基于STARRNA-Seq比对。BGI Online的核心分析流程9个,除了上述5个之外,还有4个新的,包括基于ELSA/BALSA的全基因组和全外显子组分析,第一作者叫罗锐邦,所以这是华大自己搞的新流程;然后是两个经过华大优化之后的全外显子组和全基因组分析流程;第四个是华大修改过之后的RNA-Seq分析流程,其中一个工具SOAPnuke,这显然是华大看家工具集SOAP系列之一。那么与七桥公司相同或者非常相似的5个流程,有没有抄袭呢?兄弟我的回答:没有必要。这是因为,第一,程序员们一般不抄别人的东西,主要是别人写的代码一般都看不懂,改别人代码与自己重新写一遍的工作量是差不多的;第二,七桥公司的这几个流程不是秘密,而是全球搞测序数据分析的生信学者都应该知道的东西,并且各家都会根据自己的需要再做调整。第三,为什么七桥公司的这几个流程不是商业机密?OK,你只需要看看他用的软件,例如BWA, GATK之类的,这都是早发表过并且连火星人都知道的东西,没有自己的核心技术,有何秘密可言啊?咱搞蛋白质不做测序,可如果需要的话,搭一套这种分析流程最多24小时。无非下载几个常用软件,写几个脚本连接一下输入输出也结了。当然后面再调整那就费时间了,要调到最优或者自己用起来最优,不是这个领域的行家就搞不定了。并且就算是领域的行家,各人做的流程也五花八门不统一。第四,为啥华大要实现跟七桥一样的流程呢?这个简单:你有的,我得有;我有的,你没有。第五,那七桥公司没有啥呢?答:没有核心技术。软件都是人家的,你搭个流程没有创新。第六,华大有创新?呃,起码有一个:SOAP系列,我数了一下是14个软件。所以SOAP是华大的看家法宝,这也就是为什么华大历来说自己是生物信息学公司,而不是测序公司。这俩是有本质的区别。第七,华大做的SOAP,是垃圾软件吗?这个咱不做测序分析,所以可以看看咱生信领域的超级明星Richard Durbin的论文,可以看看图2SOAPdenovoVelvet, AbySS,以及Durbin自己开发SGA拼装基因组的性能是相当的。SOAPdenovo,VelvetAbySS用的是DBG算法,而SGA用的是OLC算法,若你真想批评华大的SOAP是垃圾软件,OK,你先读懂这俩算法再说。第八,还不服?那咱再说一个,你知道RNA-Seq测序数据服从的是负二项分布而不是高斯分布?不知道,对吧?你也不知道要用最大斯然性估计MLE来求负二项分布的均值和方差吧?所以,不懂没有关系,隔行如隔山,但不懂还嚷嚷别人没创新,那是不是应该被鄙视?因此综上所述,分析流程这个一是没有抄袭的必要,二是华大自己有东西何必去抄别人的破烂玩意儿?华大这么做,目的就一个:吃掉你。

结论:第一,白皮书这个已经死无对证了吧?抄个没有人看的说明书多大的事啊?既然已经更正了,那这件事儿就这么过去吧。第二,5个分析流程抄袭的可能性接近于零。搞测序数据分析就那么几个软件好用,大家用相似的流程说明不了任何问题。

当然这件事情也提醒大家:该写的文档还得认认真真自己写啊!

一位工作了10年的程序员总结了这10个血的教训

1.不要轻易换笔记本电脑,不要跟潮流,不要买过多的电子产品,不要过于频繁的更换手机这方面我的经验教训也是惨痛的。我大概前后购买过 5-6 个笔记本,以前的都是 1 万多元一台,最近买的这台 1 万多是...
  • Bg70PVnyBv1
  • Bg70PVnyBv1
  • 2017年12月25日 00:00
  • 501

程序员述职报告

述职报告 尊敬的领导: 您好!我是吕金含。我于2017年3月15日成为公司的试用员工。 目前在研发四部OA项目组工作,作为一名新进员工,我在同事们的帮助下很快地适应了研发四部开发的相关工作。初来...
  • lvjinhan
  • lvjinhan
  • 2017年06月04日 17:24
  • 950

程序员生存定律--管理向左,技术向右

程序员生存定律这系列的目录在这里:程序员生存定律--目录喜欢从头瞄的,可以移步。------------------------------------------------------------...
  • leezy_2000
  • leezy_2000
  • 2014年06月20日 02:13
  • 19424

爸爸说我学不好数学,干不了程序员。

    我的父亲基本算得上是个农民,高中毕业,参军,没怎么摸过枪,做了部队文书。复员回家种田,恢复高考时面对同村另外一个高中生的死命复习,父亲看不起他,不屑与他为伍。并坚持不让母亲参加高考。    父...
  • axcozy
  • axcozy
  • 2007年01月15日 14:31
  • 2171

低学历又如何?这样的程序员照样可以逆袭

本文来自作者 Tamic 在 GitChat 上分享「程序员如何提高加速度,两年做到待遇 20K+」,「阅读原文」查看交流实录 「文末高能」 编辑 | 短笛 今天分享的这个主题,...
  • GitChat
  • GitChat
  • 2017年10月27日 00:00
  • 12100

试用期程序员应该了解的事儿

3.3试用期程序员应该了解的事儿3.3.1我们应该得到的刚进入公司的程序员心情是复杂,浑身干劲儿的同时有对未来生活的憧憬,也有对陌生环境的恐惧,更有进入新公司的不知所措和迷茫。太多人只是知道要努力工作...
  • jobchanceleo
  • jobchanceleo
  • 2009年11月06日 07:04
  • 10732

毕业五年,一位IT外包女程序员的心酸史和无奈

01 不知不觉已在IT行业里混了五年了,这五年来,每天如同勤劳的蚂蚁搬默默地搬砖。写这篇文章,主要是想和大家分享一下自己的成长心得,避免有些人跟我一样,走了很多弯路。 其实,做程序员并不是我最初的...
  • zwjweb
  • zwjweb
  • 2017年12月22日 14:05
  • 330

送给家庭条件一般的程序员们

“学好数理化,不如一个好爸爸。在中国是这样,在美国也是这样。”我的初中政治老师站在讲台上说着,声音里带着三分讥讽、三分怨忿甚至是三分义愤。 我完全理解他的话,不然我不会今天还记得。但我又没有完全理解他...
  • kuanxu
  • kuanxu
  • 2012年02月18日 20:30
  • 2958

关于游戏程序员的职业规划

为什么做游戏程序员:乐趣、梦想、财富、成就感 我们的绰号:“程序猿”、“码农”、“IT民工” 现状: 1.  经常加班,薪水不高,项目不好 2.  亚健康,近视,缺乏锻炼,蓬头垢面,没有活力,容易...
  • unknowm
  • unknowm
  • 2014年05月31日 14:09
  • 4141

一个程序员的工作总结

第一. Java程序员需要不断的学习; 貌似这一点适应的行业最广,但是我可以很肯定的说:当你从事web开发一年后,重新找工作时,才会真实的感受到这句话。 工作第一年,往往是什么都充满新鲜感,什么都...
  • u011690685
  • u011690685
  • 2013年08月15日 10:48
  • 3145
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:程序员不好好写报告的结果是很严重的
举报原因:
原因补充:

(最多只允许输入30个字)