
-
生物通官微
陪你抓住生命科技
跳动的脉搏
专家讲解如何进行生物信息学分析
【字体: 大 中 小 】 时间:2015年08月11日 来源:生物通
编辑推荐:
并不是每次遇到问题都需要编程的,可以尝试调用一些已经完成的命令行简单脚本,也就是Bash……
生物通报道:今天的世界大不同,表现在生命科学研究领域,就是一切都开始进入了大数据时代,无论是DNA序列,显微图片,还是质谱数据,研究人员都越来越需要对这些庞大的信息进行收集、整合、处理和诠释。
近期The Scientist杂志联系了几位科学程序员,了解他们所使用的工具是什么,如果是菜鸟需要进行哪些训练等。
如何使用命令行
并不是每次遇到问题都需要编程的,可以尝试调用一些已经完成的命令行简单脚本,也就是Bash,“Bash可以用于处理文件,”Brown解释说,“移动文件,循环访问,重命名等”。使用Bash可以将预生成的工具组装成自动化工作流程,例如可以利用Bash从一组测序数据中筛选高质量读长数据,然后链接到一个新文件中,将这一文件传递到一组预定义参数分析程序中。
值得参考的命令行工具:cli.learncodethehardway.org/book/.
调试工具
新手程序员通常会避免使用复杂的调试工具,如用于描述程序所处的某个点(X代表现在进入这段代码)的一些代码。但是调试工具能帮助程序员在某个特殊的代码上停止软件运行,看看情况,调整错误代码,这在寻找bug的时候尤为关键,“每种语言都有一个调试器,这些工具总是值得学习如何使用的,”来自加州大学欧文分校生态学和进化生物学副教授Kevin Thornton说,目前也有一些在线教程,“因此Google会是你最好的朋友。”
使用版本控制程序
Rachel Slaybaugh是来自加州大学伯克利分校的一位核工程学助理教授,她使用C++ 和Python 开发了一种能模拟中子传递的计算方法,同时她也研发了他们实验室最好用的一套代码训练方法,但她表示这需要确认实验室中的版本控制。
版本控制程序(Version-control software),如最受欢迎的 Git (git-scm.com)软件,能帮助程序员精确的了解一个程序版本与另外一个版本之间的区别,而且关键在于,如果需要的话还能调转回去。Git程序是一种免费的开放程序,方便团队之间的合作,可以分享代码,利用“fork”,程序员能在无需破坏现有代码的前提下就能验证新的运算法则,追踪并融合这些版本差异等等功能。
Git托管服务器GitHub提供无成本分享,分发和在线存档代码的服务,而且也能为你提供指向你软件的稳定链接。如果需要升级,那么就需要每月付出7美元(当地价格)。
虽然Git只是一段复杂的程序,但是这“极为重要”,Buffalo说,“而且更重要的是,这种程序有时能力挽狂澜,如果我的程序中出现了一个bug,我就会去旧的版本中找出它来,然后一个一个版本测试,看看它什么时候出现的。”
还有一些研究人员倾向于选择版本控制程序Mercurial (mercurial.selenic.com) ,其服务器是BitBucket (bitbucket.org),这对前五位使用者免费,其中包括无限制private repositories.