打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
尬聊系列之一---生信编程初学

出发点

大半年了,我没事就会在课题组内发一些脚本需求,希望通过这些需求来驱动课题组内成员的编程学习与提升,争取尽快能找到一个可以替代我的人。稍有进展,但仍不太快。转念一想,是否组内真的需要有能替代我的?故有此文。

学习生物信息到底要不要学编程

生物信息专业的朋友便无需考虑这个问题,毕竟是本行。而对于其他生物相关专业的朋友,事实上,不会有太少是不得不,更或者随大流地进去生信学习大军。到底需不需要学编程。我个人觉得,这一块的朋友在科研成果上,往往是干湿结合;那么如果侧重的是分析,则可能真的不得不学一些非常基础的;而如果侧重的是实验,则正好相反,需要做的可能是了解清楚并使用已有的工具,有必要的情况寻求科研或者商业合作。毕竟,每个人发挥擅长的,或许才是最有成效

编程要学到咋样?

目前市面上,各种生信N个任务,或者生信M个题目…我个人其实不感兴趣,毕竟我似乎没有认识的某某是通过刷这些题目而写一首好脚本的。相对而言,我觉得所谓的生信编程题目,最适合的并不是作为训练,而是作为测验,亦即,如果你会,那么你行;如果你不会,那么你需要更多的学习,而不是来刷题。
这似乎跟某些技能的日常应用和考试是一个逻辑。类比一下,你的六级考试666,然而你却说不好英语。
我个人觉得编程学习的逻辑应该是,了解一门语言,如果是第一门语言,应该是看经典的入门书(或者适合自己的入门书),刷书里面的题,随后再做一些带有自身需求的生信编程项目。这个说法似乎跟前述的生信N个任务或者M个题目有所矛盾。
其实没有。一本经典的编程入门书,往往是一版再版。后面的题之所以设置,事实上是带有训练意义,也往往是书本作者教学经验的归纳。相比之下,目前可见的生信N任务与N题,自然是有适合生信入门的朋友所需要的。但是否是合适的编程规范和思维形成,则并不说。
这也可以让我们看到存在部分公众号,为了某种商业化目的,其实本身初学并指示掌握了软件的使用,即推出各种绘图教程,如经典案例,某某用了Y叔的clusterprofiler,除了一个其实诡异的富集气泡图。对于真正要学习的人,到底是好是坏,更不谈各类培训班。有时候,我想想,到底是谁给你的自信?
看完书之后,要做些自身存在需求的或者课题组有需求的项目,而不是刷别人的题。我本身是做非模式生物较多的,所以并不是别人给的题目就适合自己的需要,更或者回事我们最终需要掌握。

编程的学习也需要一个正反馈过程

做自身有实际需求的项目 与 所谓刷题 ,所最大区别,事实上即是 完成之后的正反馈。
此点才是促进个人进步的最大动力。
想想为什么有些人会继续写博客,有些人会持续不断的开发新的工具,有些人会热衷论坛与公众号的运营,
一方面是兴趣(这点是扯淡的),更重要的是另一方面,存在一些持续的正反馈

那么我的想法

所以生物背景的朋友学习编程,我觉得需要确定的可能有

  1. 到底需不需要学习

  2. 到底要学习到什么程度

  3. 找到兴趣或者放弃

  4. 看书,完成一些有趣的项目

  5. 完成一些自己有需求的项目(当然可以参考从一些生信M题),但最重要的还是从课题组出发

  6. 最后,还是自我定位 ==》 我与课题组的师妹聊过之后发现,她的定位很清晰,以后开展科研是要像现在课题组PI一样,那么其实,我给她在编程上的建议,大部分其实并不需要或者不合适的。

生信学习,其实真的不要相信任何人,应该相信自己,审视所有人的建议,包括这篇推。

再声明

  1. 本推文出发点就是……个人觉得有趣

  2. 本推文已尽可能地保证零基础的朋友能在windows下完全重现,但不保证每个人都能重现。毕竟我没有义务。所以最好不要针对本文的步骤向我提问(星球的朋友除外),近期赶课题,木有时间。

(另,个人时间和精力有限,大群可以学习交流,但我不一定会回复(也没有义务),直接私信我讨论交流的朋友,请先微信转账或附图支付宝转账-)。

参与讨论交流

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
每日一题037
学编程可是写不出来?这样学编程,才有效果!
2017高考各科考试答题规范:生物
中考命题原则
手把手教你学perl编程之题目篇(一)
生信编程直播课程优秀学员学习心得及作业展示3
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服