真正的编程能力是什么?解决问题的能力,就是编程能力

Posted 生信技能树

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了真正的编程能力是什么?解决问题的能力,就是编程能力相关的知识,希望对你有一定的参考价值。


我们生信技能树招实习生也有一年半了,,宣传文案里面并没有写太清楚对实习生的要求,主要是考虑到有缘人不够多,怕门槛太高,大家都不敢报名!

其实要求只有一条,就是要有解决问题的能力和意愿!与编程学习的宗旨不谋而合

没有严格意义上的真正编程能力,只有解决问题的能力。你解决的任何问题都依赖于别人解决过的子问题,所以不存在绝对的原创还是复用。


真正的编程能力其实并不是对语法细节的理解,也不在于手写或者复制粘贴,更不在于对什么操作系统的使用,或者常用库的api的记忆。而是找出解决方法的能力,把现实问题转换为代码逻辑的能力。这个是最重要的。语法很好学,只要看一看,再不行网上搜一搜都有,但是解决问题的能力,在网上搜不到,找不来,谁也帮不了。只能在长期的分析问题解决问题的过程中得到。


编程能力是一种解决问题的能力。如果问题没能被很好地解决,知道再多也没用。编程能力是一种运用机器解决问题的能力。首先是要判断问题在什么程度上可被机器解决,比如理论计算机科学会告诉我们什么可做、什么理论上不可做、什么理论上可做实践上不可做。然后是让机器更好地理解问题,比如计算机都是(图灵-冯诺依曼模型)等价,但不同的问题可能会适用不同的编程语言。再后是让机器能更高效率地解决问题,比如同样的问题可能会有效率差别巨大的算法。


编程能力是一种预见未来的能力。目前的方案有哪些假设和局限性,在何种情形下会遇到问题甚至崩溃。在未来出现问题时问题是否需要重新定义,系统是否需要重新设计,代码是否需要重构或优化等等都需要未雨绸缪。


其实不管是复制黏贴也好,自己手写也好,关键的是解决问题。编程最终还是个生产工具,目的是解决问题,不能解决问题的,一切都是空中楼阁,毫无价值。

后记

如果你具备这样的能力,那么请不要犹豫,哪怕你没有任何的生物信息学基础,我也希望可以招你做实习生!

工作地点:广东省珠海市横琴新区横琴小镇

福利:可以免费参加每周末的各路生信牛人给学员及学徒的小班教学授课

工作内容:根据我构建的生物信息学知识体系来系统性整理收集资料。

要求:实习期 > 3个月,来信请详细描述你的职业或者学业规划

福利:免费住宿+不定期餐补 

还可以和优秀学徒或讲师、实习生面对面接触,一起学习:



文末友情宣传

强烈建议你推荐给身边的博士后以及年轻生物学PI,多一点数据认知,让他们的科研上一个台阶:

  •  ,你的生物信息学入门课

  •   ,你的生物信息学成长宝藏

以上是关于真正的编程能力是什么?解决问题的能力,就是编程能力的主要内容,如果未能解决你的问题,请参考以下文章

什么才是真正的编程能力

如何提升自己的Python编程能力?

抽象能力决定编程能力

什么才算是真正的编程能力?如果只会写一些代码,那就 out 了!

附加作业

一名普通的大学生编程如何从入门到大神