新科学想法 学术文库 学术文献 浏览文献

有读书笔记有附件A Quick Guide for Developing Effective Bioinformatics Programming Skills

4 quwubin 添加于 2010-4-26 23:49 | 2970 次阅读 | 2 个评论
  •  作 者

    Dudley JT, Butte AJ, Lewitter F
  •  摘 要

    Bioinformatics programming skills are becoming a necessity across many facets of biology and medicine, owed in part to the continuing explosion of biological data aggregation and the complexity and scale of questions now being addressed through modern bioinformatics. Although many are now receiving formal training in bioinformatics through various university degree and certificate programs, this training is often focused strongly on bioinformatics methodology, leaving many important and practical aspects of bioinformatics to self-education and experience. The following set of guidelines distill several key principals of effective bioinformatics programming, which the authors learned through insights gained across many years of combined experience developing popular bioinformatics software applications and database systems in both academic and commercial settings [1]–[6]. Successful adoption of these principals will serve both beginner and experienced bioinformaticians alike in career development and pursuit of professional and scientific goals.
  •  详细资料

    • 文献种类: Journal Article
    • 期刊名称: PLoS Computational Biology
    • 期刊缩写: PLoS Comput Biol
    • 期卷页: 2009  5 12 e1000589
    • ISBN: 1553-7358
  • 学科领域 生物医药 » 生物学

  •  标 签

    Coding 
  • 相关链接 DOI URL 

  •  附 件

    PDF附件A Quick Guide for Developing Effective Bioinformatics Programming Skills 
  •  quwubin 的文献笔记  订阅

    1. 了解各个语言的优劣 (e.g., R for statistics, Lisp for artificial intelligence),选择适合自己的编程语言(我选Python)。
    2. 推荐开发基于Apache等web server(网络服务),这样容易被大多数的生物学家接受和使用,从而得到他们的反馈并进一步提高和改进软件质量。
    3. 充分了解、利用好开源社区,了解、学习、使用、参与、贡献Biopython, BioPerl等社区。
    4. 掌握必要的Unix操作技巧,不仅仅是由于大多数的生物信息学软件只有Unix版本,更为重要的原因是Unix下面的cat, grep, '|'等工具可以极大的简化生物信息学分析任务。
    5. 注意命名规范和统一,做好必要的注释。
    6. 使用代码管理器(如Git)管理、备份自己的代码;并且及时备份自己的系统。
    7. 积极拥抱并行计算,因为并行程序写起来相对比较复杂(需要考虑任务松紧度),但随着多核计算机的普及以及Google MapReduce技术的推广,并行计算,甚至云计算将成为一种趋势。
    8. 将数据结构化并存贮在数据库中,除了常见的关系型数据库之外,key/data model的数据库如BerkeleyDB,也值得关注,尤其对于基因、SNP等具有unique ID的信息存贮比较方便。
    9. 了解计算机的硬件性能,也许你的计算机支持GPU加速。
    10. 注意支持并遵守标准,支持互操作性。
    11. 时间无价,正确权衡编码时间,不要过度优化代码,切记过度追求完美,“the perfect is the enemy of the good”,要求太高反难成功。大部分的休息生物信息学软件只对某一任务有效,这也就是Unix的KISS原则。

     

     

管理选项: 导出文献|

评论(2 人)

facelist doodle 涂鸦板

Copyright;  © 新科学想法 2016-2017   浙公网安备 33010202000686号   ( 浙ICP备09035230号-1 )