发布于 

掌握好的学习方法,让你在职场更有竞争力

程序员是一个需要终身学习的职业,其实不止是程序员,各行各业都在内卷,掌握好的学习方法,学习更多的技能,会有更大的竞争优势,也会让你在未来有机会到来的时候,能够承接得住。

一年前写过一篇《程序员是终身学习的职业,应该怎么学习?》,讲到了费曼学习法和一万小时理论,一年过去了,有了更多的思考和感悟,本文是延续和补充。

在那篇文章中曾提到过一些困惑,就是很努力地去学习了,但看不见成效,其原因就是有一颗渴望学习的心,但没有好的学习方法。

经过最近一年的学习和思考,我认为学习有这么几个步骤:

1、不能排斥学习,这是一切的基础,找到学习的兴趣和乐趣;

2、学什么?要明确目标;

3、怎样学?找到学习方法;

4、人都有惰性,怎么样能战胜自己,坚持下去?

众所周知,学习是逆人性的,是一件不那么令人愉悦的事情,大多数知识都是枯燥的,理解和记忆的过程很艰难,我们在整个过程中的感受决定我们是否有动力持续下去。

最近学习到两个概念,峰值和终值,这是心理学家丹尼尔·卡尼曼提出的,峰值是指在一个学习过程或运动过程的最高峰的感受,包括正向和负向;终值是指在过程结束后我们的感受。如果在一个过程中,峰值和终值都是正向的,我们就比较喜欢去做。

举几个例子:

有朋友约出去打一下午篮球,因为喜欢,打球的过程是愉悦的,过程中的峰值是正向的,结束后,出一身汗,感觉非常舒服,终值也是正向的,所以对于打球这个事情来说,不会排斥。

早上起床出去跑五公里,整个过程非常枯燥,有可能还需要有强大的意志力才能坚持跑完,这个过程的峰值就是负的,但跑完后大汗淋漓,整个人神清气爽,终值是正向的。因为负的峰值持续时间长,很难和正向的终值抵消,下一次还是大概率会找各种借口逃避掉。

我们决定学习一门技术,一天下来网上看了很多资料,也找了相关书籍进行参考,还看了很多教学视频,到了晚上一回顾没什么收获,整个过程中因为是积极主动的,峰值是正向的,但结果不好,会有挫败感,终值是负向的,这样慢慢会打消学习的积极性,最终虎头蛇尾。

我们要尽可能让峰值和终值都是正向的:

  • 峰值的正向,需要在过程中穿插点自己擅长喜欢的事情,让过程变得相对愉悦,比如在跑步过程中听听音乐,听听樊登读书等,或者采用跑 500 米,快走 500 米的方式来进行适应
  • 终值的正向,需要有规划有产出,规划不能太大,得是我们能做到的,完成后做总结,输出成一个具体化的东西,一篇总结文章、画一个思维导图、或者写个 PPT 和团队分享下都可以,这些就能带来正向的反馈

学习需要有明确的目标,否则就是无头苍蝇到处乱撞。

比如想学习一门编程语言 Python ,可以按照下面的步骤来规划:

1、花多长时间来学习,学习完成后期望能达到什么样的效果?

2、在整个过程中可以拆分一些小的里程碑,可以方便进行结果验证,和及时调整方向;

3、每天需要规划固定的时间进行学习,循序渐进。

最怕的就是今天上网看到说 Python 语言不错,突击下 Python ,明天看到说 Go 是发展趋势,就又去“学习” Go ,最终就是感觉自己每天都在学习,但什么都没学会,这就是所谓的「伪勤奋」。

上面第一点说的是制定计划,曾经制定过很多的计划,立过无数的 Flag ,最终都半途而废,主要原因就是计划过于长远,过于宏大,中间如果有一些阻碍导致没有连续执行就很容易放弃了。

制定计划可以遵循 SMART 原则:

  • Specific:具体的,比如一周内了解 Redis 的基本概念和使用
  • Measurable:可以衡量的,就是说有数据化的支撑,比如将 Redis 的基础概念整理成思维导图、找出在 dotNET Core 中操作 Redis 的类库并对比差异、选择一个类库编写一个示例程序进行基本操作等
  • Attainable:可以达到的,这个目标只要我们努力是完全可以达成的
  • Relevant:和大的目标存在相关性
  • Time-bound:有明确的截止时间,毕竟 deadline 是第一生产力

让计划能够顺利执行的一个方法就是具体细节不要求每天都严格执行,对齐大目标就可以,大的计划拆解后,按照每天来进行监督完成,这样每天完成后会有成就感,也就没有整体计划没有连续执行的焦虑感。

比如跑步,目标是一个月要完成 150 公里的跑量,拆解到每天就是每天至少 5 公里,如果计划是每天早上 5 点起来跑步,如果有一天没起来,就很容易坚持不下去了。盯住每天的小目标,如果早上没起来,也不必焦虑,安排到晚上完成就好了。

关于怎么学在《程序员是终身学习的职业,应该怎么学习?》中介绍了费曼学习法、10000 小时理论等,但很多人会说,工作那么忙,还有家里各种事情,到了周末又想放松下自己,哪有时间学习啊?

鲁迅说过:时间就像海绵里的水, 只要愿意挤,总还是有的,所以我们要学会在平时的工作生活中挤时间。其实每天有很多时间可以被挤出来的:

  • 早上可以训练自己可以起早床,对于喜欢睡懒觉的朋友来说需要一段时间的适应。我现在每天早起跑步,每天 5 点半起床,晚上大概 11 点左右睡觉
  • 家离公司较远的,路上的通勤时间也可以利用起来,可以听书或者看书,积少成多,还是很客观的
  • 早到公司也是一个不错的选择,比如我上班时间是 9 点,我通常 8 点左右就到公司,不用花时间找停车位,也没人跟我一起挤电梯,到了公司至少还能有半小时时间做一些自己的事情
  • 晚上睡觉前花 10 到 30 分钟看看书,除了能学习知识还能促进睡眠

有了时间,学习了很多的方法,不能坚持也是不行的。

我个人最喜欢用的方法就是倒逼法,在之前的文章中也有提到过。拿我最近的一个例子来说,一个夏天过去,体重涨了 10 几斤,便下决心要减肥了,我用的方法就是跑步,再加上饮食的控制,是最健康的一种方法了。9 月 1 号开始每天 5 点半起床跑步,计划坚持 100 天,每天在朋友圈打卡,而且拍了初始照片,就等着 100 天后制作对比照在朋友圈炫耀了。现在已经坚持了 5 天:

iShot2022-02-02 08.25.12

还有一种方法就是时不时给自己一些新鲜的刺激,暑假女儿写作业是一个老大难的问题,后来给她装了一个番茄钟的 APP ,效果特别好,每天上午就很自觉的把当天所有任务都完成了,一是因为新鲜感,还有就是每完成一个任务就会被划掉一项,会带来成就感。

学习的时候,我们需要带着问题,带着自己的思考去执行,学生时代老师经常说的课前预习起的就是这个作用。平时的工作中我认为学习东西最快的时候就是解决疑难问题的时候,所有的资料查询、复盘、验证等都是围绕着这个问题。

好了,就谈这么多吧,希望对您有所帮助!