写在前面
这大半个月我都在医院待着,确实无法做太多事情,于是选择看一些文献。选择的是目前开发最完善,且可以说是在IGV-GSAme【之前我改造的IGV版本】出现之前的唯一一款基因结构注释人工矫正软件-Apollo。
这个软件的开发历史比较有趣,或许以后我也会忘记,所以记下来。
项目需求驱动下的开发
Apollo的前身可以说是Artemis和Clonecurater,见上述的前两篇文章。这两个软件主要功能均是基因组浏览器。矫正基因结构注释在了解基因组的人眼中是非常重要的工作,于是软件团队【注意是团队,跟具体的作者似乎毫无关系,在paper中可以看到We,然而在作者列表中,看不出来有哪个作者在两个团队中出现,有点诡异】开发了Apollo。这个Apollo文章发表在2002年,那会还没高通量测序什么事情,所以基本支持的是比较常见的注释信息文件和Blast等软件的结果,甚至还支持了两物种的共线性区域可视化。毕竟近源物种的注释事实上却是也可以辅助注释。这个时候,Apollo是一个桌面软件,类似桌面版本的IGV。
伴随数据类型的变化开发
就这样,过了七年。在此期间,Apollo团队为了更好的管理基因结构注释信息,提出了Chado等数据库框架【于是发了paper】。在2009年,发表了新版的Apollo。我们很清楚哈,02年到09年,此时国内的高通量测序热潮尚未完全起来,但芯片早已席卷全世界。当然,国外高通量测序也不差。整体上,表达量数据已经有挺多的。所以Apollo的这一版本,主要整合了表达量等track,另外就是Chado的应用和撤销编辑操作,随后则是GFF3文件导入的支持,当然,还有支持远程数据的获取,类似现在的IGV远程数据。总的来说,那会 illimuna测序还在跟454 solid的拼杀,并没有那么大量的读段数据,所以,这个版本并不支持read alignment track....
高通量数据技术改变了一切
09年到13年,四年的时间,高通量技术飞速发展,测序与技术服务公司遍地开花。在这一趋势下,Apollo团队似乎放弃了已有的桌面框架,直接使用网页基因组浏览器明星JBrowser作为开发基础,将Apollo的界面需求实现为JBrowser的一个插件。当然,后台,或者针对基因结构注释信息矫正的业务逻辑,应是继承原有设计。由于使用了JBrowser,作者团队就直接避免了各类高通量测序数据可视化的处理逻辑,而只需要关注好如何做好基因结构注释 矫正的Track,可以说,机智无比。
当然,成为网页版,确实还是有一定的好处,所以这一版本的Apollo文章,名为Web Apollo,亦即网页版的Apollo【现在,桌面版的都完全找不到了,其实找到了也没用,因为旧版本的...根本带不动大的基因组或者大的数据文件】。网页版,于是开始支持多人异地同时矫正基因结构注释,可以说,这是一个非常优秀的操作。当然了,网页版有好有坏,网络响应速度呢?这是一个非常有趣的问题。
比起网页,我个人觉得这一版本的一个有用的地方或许是,不仅可以矫正注释 ,还可以矫正序列!这一特性非常有用,尤其是在基因组组装序列存在大量SNP或者序列上有错误的情况下。
这四年间,其实还有一款也号称可以矫正基因结构注释的浏览器发布了,GenomeView。这块软件,讲真的,我觉得似乎比IGV更加优秀,作者是当今世界数位【或者说两位?】比较基因组大牛之一的Yves Van de Peer团队。这款浏览器从文章上来说,覆盖了各种基因组浏览器需求。文章中提到了可以做基因结构注释 信息矫正,当然,可惜的是。。。似乎只能通过右键菜单,坐标数值修改。
基于我个人下载并测试的体验,其实,我觉得似乎很不错,感觉比IGV还优秀...当然,似乎使用的人不多。文章是12年发表的,而18年仍然有在更新。或许今年还有?
基因组浏览器总是很多的,但是如果一款软件写出来,而很少人用的话,那么其实或许确实不会有人愿意继续写下去。
持续的用户意见收集与优化
活着的软件,总是优秀的。12年发表的Web Apollo。七年后,亦即今年,Apollo团队再次发表了Apollo的更新版本。事实上,从表象来看,并不能看到Apollo有明显的变化。但从作者的行文以及我个人对软件开发的理解来说,事实上,作者对底层做了大量的优化和改进,然而,真的是很难写出到底在哪里更好。
当然最有趣的是,作者在讨论部分提出接下来的开发方向之一是,使用Graph Database。早期作者使用的是Naive的数据库,后来用Chado。费劲千辛万苦,现在说Chado不要了,准备用新的。
事实上,仅仅是优化,而没有提出新的亮点,文章总是不好发的。可以从这几篇Apollo文章的发表期刊看端倪。
当然,接下来会如何,那就只能等几年之后再来看看了。
写在最后
看了这几篇文献,Emmm....果然,我搞不了各位张口闭口的生物信息。