一个故事告诉你,学习编程是否需要天赋?
有的时候我也会怀疑我自己,我到底适不适合学习编程呢?感觉身边的同龄人都好牛X:
1、985/211
2、阿里/百度/腾讯/美团
3、……
说真的,我真的很羡慕,有的时候就觉得,这才是一个程序员该有的嘛,而我嘞:
1、不知名三本(俗称花钱买学历)
2、混迹于各个小厂,薪资待遇强度,不堪……
3、……
就是在熬着呗!
有段时间,每天早上醒来,我都痛苦万分,为啥,真的,不想去上班了……
现在的年轻人好像都是熬夜党,我也是,为什么熬夜呢?我看过一句深得我心的话语:
每一个不愿早睡的年轻人,都是有一个不想过去的今天和一个不想面对的明天!
不知道你是不是这样,其实吧,每天晚上上床睡觉的时候可以说是我一天当中最幸福的时候了,什么也不用想了,可以躺在床上好好放松休息了,那种感觉真的很棒,可是,一般我都习惯晚睡,有的时候,不是不想睡,而是不敢睡,因为睡着了,也就是一眨眼的功夫,就要起床了,然后,各种事情……就来了……
曾经有段时间,我一直告诉自己,现在还是因为自己技术能力跟不上,所以在工作中会比较吃力,我一定要多多学习,想必只要自己的技术能力提升上去了,那工作起来就如鱼得水,每天就不会那么累了……
可是实际上呢?我觉得自己也努力了,也学了,可是日复一日,感觉自己始终如此,技术能力还是弱的一批,依旧每天是在熬着……
我真的适合编程吗?我是不是没天赋啊?
2、学习编程,真的需要天赋吗?
那么学习编程,是不是真的需要有天赋呢?如果没有天赋,是不是就不适合学习编程呢?不知道你是否思考过这个问题。
那好吧,你先来看下,你是否有这样的困惑呢?
1、觉得自己学了很多东西,但是就是技术能力不见涨
2、有些知识看似会了,就是写不出来,一看就会,一写就废
3、让你写代码写不出来
4、同样的知识点,就是没有别人理解的快
5、同样的功能,你写的代码就是垃圾,可能还写不出来
6、……
怎样,你是否有过上述这些问题呢?当遇到上述这些问题,你是否也怀疑过,自己到底适不适合编程呢?是不是在编程这块,自己真的没什么天赋呢?
至少我这样自我怀疑过……
3、天赋是什么?
那你有没有思考过,什么才是天赋呢?
天赋即天分,是成长之前就已经具备的成长特性。在某些的事物或领域具备天生擅长的能力,而使其可以在同样经验甚至没有经验的情况下以高于其它人的速度成长起来,而且有它的独一性,特殊性。如果这个人具有的成长潜力和可能性已经在他的人生中表现化了的话,那么他就具备了该方面的天赋器量。
天赋也可以被理解为人从小到大被动接受和养成的人格特点,根据小时候还没发育完全的大脑受所在环境的诱导和影响来分类的话,天赋值也有所不同。而这个天赋是不可逆的。
以上是摘自百度百科对“天赋”一词的解释,其实说真的,我就觉得,天赋这个玩意有点玄学的感觉,着实让人摸不着头脑,觉得云里雾里,不知道天赋是个什么东西!
那我就简单点说!
有句话是这么说的,实现梦想没有捷径,努力也是一种天赋,说起努力,想必大家就不那么陌生了,所以啊我觉得,与其说想学习编程是否需要天赋,倒不如说成是:
一个人拥有什么特质,比较适合编程,比如耐得住寂寞(有的时候,编程是需要你独自一个人干到深夜两三点的……)
当然,努力是必不可少的,而努力,每个人都可以,所以,编程嘛,其实每个人都可以!
所以啊,要想弄明白学习编程,是否真的需要天赋,首先要清楚,这个天赋到底指的是什么,我觉得,比较直观的来说,这个天赋指的就是比较适合编程的一些特质。
比如说以下这些特质:
1、比较喜欢编程,感兴趣,觉得敲代码是一件很酷的事情
2、细心,有耐心,做事情认真
3、勤于思考,善于总结
4、喜欢用实践来验证理论
5、爱学习,坐得住,能钻研
6、……
那么,只要你拥有以上这些特质中的一二,你就是适合编程的,没什么不可以的,你完全可以从事这个行业。
4、人和人之间还是有差别的
不过,我们不能不承认的一件事情就是其实人和人之间还是有差别的,我们在学习编程的过程中,基本每个人都会遇到的一个共性问题就是,很多知识,学了就忘,那么要在用的时候,自己就可能记不起来了,但是,我们会发现,现实生活中,有些人的记忆特别好,同样的知识,也许你看了就忘了,但是人家却可以记住很久。
那你说,这是不是就是编程的天赋呢?
记忆好,不单单是编程的天赋,如果你记忆力超群,我想,在任何一个领域,它都会成为你的天赋,那么现实中,这样的人毕竟还是少数,也就是说,即使你记忆力一般,平均水平,但是你对编程感兴趣,能够坐得住,沉下心的去学习编程,那么我认为,你完全是适合学习编程的,也可以说,你有编程的天赋。
因为有些人,很难静下心来去学习一些新知识,比较有难度的知识的,没耐心的,那么在学习编程这件事情上,可能就比较费劲了
我们再来举一个例子:
假如小明同学记忆力好,看过的API和一些知识点都会记得很清楚,不会那么快容易遗忘,而小红呢?记忆力一般般,但是英语比较好,基本上编程学习看的都是英文版的第一手资料,可以掌握一些最新的技术,那么你说,小明和小红哪个更有编程天赋呢?
小明和小红两个人之间是有差别的,但是对于编程这件事情上,可以说两个人都比较适合,而像记忆力和英语这些能力,其实都是可以通过后天培训训练学习增强的。
所以,“学习编程是否需要天赋”我觉得说成“学习编程,应该具备哪些特质比较好”更有意义,而这些所谓的特质,大多都不是天生就有的,都是可以后天形成的,也就是说:
通过一定的学习和培训,大部分都可以学习编程,都是适合的!
5、天赋是可以秒杀其他人的能力
那你是否认天赋的存在吗?
其实还真不是,我这个人相信人和人之间是有智商差别的,同样,我也相信某些人在某些方面确实有天赋,而这个天赋的存在几乎是碾压同级别对手的。
比如我们都知道的“乔布斯”,神话般的存在,我想,他在科技技术这块一定是拥有非同寻常的天赋存在的,几乎碾压99%的人,但是,我想说的是,又有多少个乔布斯呢?这个世界上,其实还是普通人多!
而普通人真的都到了要拼天赋的时候了吗?不是有这样的一句话嘛:
以大多数的努力程度之低,还轮不到拼天赋的地步!
我是觉得这句话说的挺有道理的,不知道你怎么看?因为的确存在很多人真的只是看起来很努力而已,也就是所谓的“伪勤奋”
对于这句话,我在网上看过这样一个不同的观点:
“说天赋没用只要努力就行的也是够了。天赋就是相同的努力程度,有天赋的人能两天理解一个新框架 /语言 /业务流程,没天赋的人一个月也入不了门。没天赋就不要用只要努力就行来安慰自己了。而且天赋也不是用来拼的,天赋的存在是让你不用拼。”
这个听起来貌似也很有道理,哈哈,我觉得再说就要扯到老子的阴阳说了。
我不否认天赋的存在,也即是说我相信有些人确实在某方面做某些事情非常擅长,也就是说拥有所谓的天赋,当然,对于编程也是一样的,但是,这个天赋我觉得是个很虚的东西,与其说,学习编程是否需要天赋,倒不如说“拥有哪些特质,更加有利于你学习编程”
如果你想成为乔布斯那样的人,光凭努力够吗?我觉得远远不够,没有天赋,你很难达到!
可是又有多少人能成为乔布斯那样的人呢?
即使没有乔布斯那样的天赋,即使你很普通,但是,只要你通过一定的学习和培训,你就能从事编程,而且,只要你持续的投入时间,持续学习你就可以超越很多人。
要知道,要成为一代宗师和普通人中的佼佼者,需要的相关条件是真的不同的,一代宗师是极少数中的极少数,普通人中的佼佼者才应该是我们追求的!
6、为什么我觉得别人比我聪明
是不是因为他比我更加有天赋呢?
可能你会说了,为什么我就觉得他比我聪明呢?同样的一段代码,我就是看不懂,或者需要花很长时间才能搞懂,而他只要看一下,差不多就搞懂了,或者是实现一个功能,他能很快写出来,而且比我写的还优雅,这真的是我没有天赋吗?
其实我觉得不是,我认为主要的原因有两点:
1、你不够细心
2、你缺乏经验
什么意思呢?先来说第一点,想必你一定深有感触,如果自己在某段时间内比较毛躁的话,是很难静下心来去做一件事情的,而这个心情有的时候是无法把控的,那么关于第二点我举一个例子:
大家逛知乎的想必都知道一个大神级的人物就是“轮子哥”,很多人觉得轮子哥太强了,想到自己就会感叹道,人和人,差别咋就那么大呢?
你要知道,轮子哥人家上大学之前就有四五年的编程经验,你咋跟人家比,另外你也知道,编程这个行业,一般工作年限高一点的话,薪资就会高点,为啥,核心不就是“经验”二字吗?
所以有的时候不是因为你没天赋,而是你相比他人,缺乏经验而已,很多人的努力你是看不见的,你最后看到了他的成果,你说他很有天赋!
其实啊,说到底,编程就不是个简简单单的写代码,它有很多写代码之外的事情,比如说,你得勤思考,善总结,持续投入时间,不断练习,对于编程上的工作而言,只要你有兴趣,够用心,工作上的事情基本都能搞定。
7、卖油翁的故事
我想,一定有很多人想学习编程,但是又怕自己没这方面的天赋,担心自己学不会,那我就给大家说一个故事,看完这个故事,应该能给你吃一颗定心丸了。
这个故事就是卖油翁,不知道有没有人知道,《卖油翁》是宋代文学家欧阳修创作的一则写事明理的寓言故事
这篇文言文大概讲了这么一个故事,康肃公陈尧咨善于射箭,世上没有第二个人能跟他相媲美,他也就凭着这种本领而自夸。有一次,他在家里射箭,有个卖油的老翁放下担子,站在那里斜着眼睛看着他,很久都没有离开。卖油的老头看他射十箭中了八九成,但只是微微点点头。
陈尧咨问卖油翁:”你也懂得射箭吗?我的箭法不是很高明吗?”卖油的老翁说:“没有别的奥妙,不过是手法熟练罢了。”陈尧咨听后气愤地说:“你怎么敢轻视我射箭的本领!”老翁说:“凭我倒油的经验就可以懂得这个道理。”于是拿出一个葫芦放在地上,把一枚铜钱盖在葫芦口上,慢慢地用油杓舀油注入葫芦里,油从钱孔注入而钱却没有湿。于是说:“我也没有别的奥妙,只不过是手熟练罢了。”陈尧咨笑着将他送走了。
(故事解读来源网络)
那这个故事啥意思呢?想必聪明的你已经猜到了,用一个成语足以概括,那就是“孰能生巧”,当你做的多了,就积累了大量的经验,自然就会觉得心应手
8、那学习编程需要天赋吗?
看到这里,不知道你明白了没有,学习编程需要天赋吗?
我觉得,有了更好,有可能你能成为一代宗师,没有也无所谓,你依然可以通过一定的学习和培训去学习编程,从事编程,而且,后期,只要你持续投入时间,持续学习,你依然有可能超越大多数人。
也就是说,不需要天赋,有天赋更好,你只要稳扎稳打,把相关的知识学扎实,依然可以用代码实现相关功能,当然,你也需要在工作和学习中,不断的学习总结,力求不断的提高自己的代码能力。
相信苦心人,天不负,百二秦关终属楚,有志者,事竟成,三千越甲可吞吴!
编程其实也是门手艺,孰能则生巧,卖油翁不是已经说了嘛!