type
status
date
slug
summary
tags
category
icon
password
各位老朋友,时隔一年多,在《程序员职场生存指南》这门新课程中,我们又见面了。新课程包含十一部分,它们分别是:学习、技术、工作、规划、跳槽、面试、晋升、管理、副业、创业、心态,涵盖了职场各个方面的软技能。对比我之前写的其他技术课程,希望这个课程能给你带来不一样的收获,也欢迎你多多留言与我互动!
课程的第一部分讲学习。有些人看到之后,可能会说,这跟职场有什么关系?!
实际上,学习不仅仅只存在于校园,恰恰相反,进入职场才是真正学习的开始。在职场中用到的很多技术,都是在学校里老师不会教的,都需要我们在职场中重新学起。除此之外,在这个高速发展的互联网时代,技术日新月异,特别是对于我们IT从业者,没有人可以学一个技术用一辈子。故步自封、不持续学习,那么,随着年龄的增大,终究会被行业淘汰。
职场混得好坏,核心还是看你的持续学习能力,看你是否能够持续进化。
鉴于学习的重要性,因此,我把学习放到的课程的第一部分。这部分内容包含学习方法、学习能力、学习心态、学习本质、终身学习这5节课,重点讲清楚为什么学习、怎么学习、学习什么这几个问题。今天,我们就讲其中的怎么学,也就是:学习方法。
从小到大,我们身边不乏各种学霸(当然,我也是其他人眼中的学霸),他们花同样的时间,却学得比其他人更好。抛开智商的因素(这个我们下一节讲),根据我自己的学习经历,以及对身边学霸的观察,我觉得,学霸的制胜法宝无外乎就是这样几点:高质量刻意练习、跳出舒适区;以结果为导向、变被动为主动;发现知识盲点、杜绝似懂非懂。
高质量刻意练习、跳出舒适区
之前有读者问,为什么算法大牛,特别是参加过ACM比赛(有个比较出名的大学生算法竞赛)的算法大牛,能够轻松做出特别难的题目,而他却毫无思路,尽管那些算法、解题套路都会,但就是用不上?
实际上,会和熟练是两码事。那些参加ACM比赛的大牛,做了大量的算法题目,长期的刻意练习,形成了肌肉记忆,题目对应的解题套路了然于心。当他们看到新的题目的时候,大脑会自动检索自己做过的类似的题目,自然而然的就联想到了解法。这就好比踢球,只有对某个动作反复训练,形成肌肉记忆,在真正比赛这种高强度的对抗和压力下,才能用得上。
实际上,这也符合著名的”一万小时定律“,”一万小时定律“所表达的核心意思是:要成为某个领域的专家,你需要至少付出1万个小时的刻意练习。如果每天工作八小时,每周工作五天,那么,一万小时就是差不多五年的时间。博士要读五年,在阿里升为P7(技术专家)也至少需要5年,你看,很多事情都符合这个定律。
当然,一万小时的刻意练习并不代表机械的重复。呆在舒适区的重复永远都不会有提高。
我举个我自己孩子的例子。我儿子现在一年级,平时经常会做些数学试卷当做练习。试卷上大部分题目都很简单,一眼就能看出咋做,但也总会有几道提高题比较难。每次遇到难题,他看一眼不会做就会来问我,让我给他提示,但是,我总是会拒绝。简单题千道也抵不过难题一道!
做简单题目能让他保持水平不下降,但真正能让他有提高的、有进步的,实际上是那几道难题。不能怕浪费时间而不去做,学习是一个先慢后快的过程,第一次花半个小时解决它,下次再遇到类似的题目,就只需要10分钟了。沉住气多花点时间慢慢去思考,哪怕最终解决不了,这也是一种锻炼。如果遇到难题就逃避,只愿意呆在舒适区,那么,得不到高质量的锻炼,永远只在低水平上徘徊。
实际上,其他方面的学习亦是如此。很多读者在刷算法题的时候,每当遇到不会的题,5分钟做不出来就去看答案,还自我洗脑,觉得这是一种高效的刷题方法。当然,对于新手来说,还处于知识积累阶段,很多题型、套路还不熟悉,这样做是可以的,但等到过了这一阶段,如果还是如此,那就会导致,在真正笔试或面试的时候,看到新题,大脑本能的反映是:太难不会、要去看题解,根本就没有深入思考的能力。
5分钟不会就看答案,一天能做十道题,成就感满满,但这种低质量的练习,对于能力的提高,作用不大。毕竟解决算法题目,不仅仅考验的是算法知识,更重要的是考察脑力,比如逻辑思维能力、举一反三能力、抽象能力、推理能力等等。这些能力的锻炼,只有跳出舒适区,刻意练习才能提高!
以结果为导向、变被动为主动
我读大学的时候,还算用功,每次期末考试,都会提前一个月复习,但我的另一位大学同学于浩,只提前一个礼拜复习,便可以考得比我好。现在回想起来,原因还是在于学习方法不同。我喜欢把书多看几遍,然后再去做题,看书会花费很长时间,时间耗上去了,但效率却很低。而于浩正好相反,因为时间有限,他一般先看往年题目,拿着题目再去对照着书本复习,目的性更强,以结果为导向,变被动为主动,学习效率更高,效果更好。
我再举一个我家孩子的例子。儿子上一年级,学校每天都会布置家庭作业,其中,英语作业一般是「读某篇课文5遍」这样子。我家孩子很排斥做这种重复的事情。每次都是很不耐烦的去读,中途还会讨价还价,说能不能少读几遍 ,而即便读了这么多遍,当我再去考察他,跟他用英语句子对话,或者中英互译,他还是有很多不会的。我总是说他读书「不过脑子」,读了跟没读一样。
于是,我就换了一种学习方式,让他自由决定读几遍,哪怕不读也可以,只要通过我的考察就行,如果不通过的话,需要他自己想办法,直到通过为止。实际上,不管采用哪种学习方式,最终读的遍数都是差不多的,但后者以结果为导向,变被动为主动,他学起来就更带劲,而且极其认真,每次考察都回答的很好。
实际上,类似的情况还有很多。有些读者采用集邮式的学习方法,泛泛的看很多书或者专栏,自己忙的不亦乐乎,而正所谓不要假装努力,结果不会陪你演戏。通过这种方式来学习,不能说一点收获都没有,但收获甚少,对知识的积累,短期有效长期无用。如果平时闲来无事,这样学没啥问题,但如果还是想要高效一点,这样就是纯属浪费时间。
那么,你可能会问我,我是怎么学习的?实际上,大学的时候,我也是偏被动学习,漫无目的的看很多书,但好在学生就时间多,可以随便浪费,但工作之后特别忙,基本上都是带着问题去学习,这些问题要么是项目中遇到的问题,要么是写课中遇到的知识盲点,很少会将某本书没有目的地从头读到尾。从我的个人感受来看,这种学习方法的效率确实要更高。
当然,你可能说,我既不写课,项目也没那么多问题,那就不学习了吗?当然不是。实际上,我们只需要对之前的学习过程,稍加调整,加上一个环节,即制定学习目标,效果就会大不相同。注意,学习目标要具体且能量化。假设你要学习kafka,那么,你的目标可以是梳理Kafka的架构图、设计思路,又或者聚焦在某一技术点去研究Kafka怎么实现的(比如Kafka为什么那么快)。这样学习起来更加专注,成就感更强,跟泛泛的看书相比,收获会更多!
发现知识盲点、杜绝似懂非懂
不知道你有没有发现,有时候你觉得对某个知识点已经很懂了,但当别人问你的时候,还是有很多说不清楚的地方,被问到的很多问题都是之前没有想到过的,对很多知识的理解也都是似懂非懂。这就好比,上学的时候,上课听老师讲得头头是道,似乎都听懂了,但是,下课自己做题,就又各种不会。
出现这种问题的原因是,在学习的过程中,你是跟着书籍作者或者老师的思路来思考,对于某个知识点,比如A到B之间的推导过程,老师有可能想当然的觉得你会,便一笔带过,而你在跟随作者或者老师的讲解的过程中,也不假思索的假设A就可以推导B。于是,在跟随学习的过程中,你会觉得思路是连贯的,没有任何不清楚的地方,但一旦自己再去重新梳理思路,就会发现有很多知识盲点。
那么,怎么来解决这个问题呢?我觉得最好的办法就是输出。当然,输出的形式有很多,可以是用它来解决问题,又或者是跟身边的人讨论或讲述,还可以是写博客、写文档等等。很多人觉得我逻辑清晰,写的课程通俗易懂又不失深度。实际上,在写之前,我对某些知识点的了解,也并不是很透彻。在写的过程中,我不断发现自己的知识盲点,进而再去查大量资料、反复思考、补充完善。写完之后,我自己也收获很多,比之前对这块知识的了解要深入、全面好几个量级。
实际上,这门课的学习也是如此。如果你只是花上几分钟把这篇文章读完,那么,也只停留在「看了就等于会了」的层面,但如果你强迫自己去输出,评论区说说自己的思考、或者针对我的某些观点发表一些看法,那么,收获就不一样了。输出倒逼输入,这也是被动学习变主动学习的一种方法。
最后
好了,今天的内容就到此为止。这里我也只是抛砖引玉,讲了我自己认为的好的学习方法。学习方法千千万,适合的才是最好的。你也可以讲讲,你认为的或者平时经常用到的好的学习方法,你是用什么样的方法来提高学习效率和质量的呢?
- 作者:leiax00
- 链接:https://blog.leiax00.cn/article/lesson/wangzhen/180
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。