面试官:你是如何进行学习的?

一、思考的由来

近期参加技术类面试,经常被问到自己是如何学习的。第一次被问到,稍稍迟疑了一下,就开始跑火车现编,尽量显得有条理。

后来也开始思考,我们到底应该怎么学习,不管是一门语言(例如Java、Python)、一门学科(例如数据库),还是一个方向(例如机器学习),我们一开始接触的时候,应该如何恰当的入门和深入?

也就是说,是否存在一些通用的学习方法,能够指导我们去学习新的事物?

答案是肯定的。

二、抽象学习

人与人的智力差距是恒定差距是存在的,但是如果抛开智力和努力程度,我们还是能看到,不同的人所取得的进步,还是不尽相同,我想在这个过程中,学习的方法是一个很重要的因素。

多般反思之后,渐渐意识到自己其实走了很多弯路,学习的方法也比较低效,希望之后能够多从优秀的人那里学习到先进的学习方法。同时这里做一个复盘,以求总结出一个套路、一个学习的方法。

我们首先来列举几个关键词。

兴趣、动力、时间、激励方式、外界指导、一本书、教程(或一个老师?)、实践等等

再来尝试串起来,在一个 系统性教程 的指导下,带着 动力 且使用投入大量的 时间 通过合理的 激励方式,去学习一件新的事物,并通过 实践 应用所学以求提高。

三、学习过程

1.明确动力

学习的动力是什么?兴趣?工作需要?感觉很酷想要学?增长技能?

明确动力其实很重要,因为有可能你发现,你其实不一定要非要进行这次学习,所以你大可在这个阶段取消学习计划。

而我们往往会忽略这个过程。

2.系统性教程

这个过程,可以用谷歌百度,选取排名靠前的推荐链接,或者去知乎寻找高赞回答里面的推荐。再或者通过身边的靠谱朋友、老师,进行推荐等等。(这样的说法也许显得幼稚,但是对于一些基础知识的获取,往往能够得到事半功倍的效果。)

这个教程,可以是书籍、课程、权威教程等,重点在于先获得high level的认识,之后再来填充细节。

3.激进的计划

我们要通过确定一定的激进的激励计划,来帮助我们完成学习过程。例如,如果完成了今日任务,是否可以有奖励?如果没有完成,是否有惩罚?

预期的完成时间?是否需要做哪些预先准备?可能会遇到的困难?

如果有必要,可以配合一些工作法,例如番茄🍅工作法等,这个过程一定要明确清晰,进展或困难要及时记录,要能时刻看到自己的成长或困难。

4.投入时间

你确定了初期的计划,这时候可以参考一万小时定律,当然我们并不一定是一万小时。你需要投入足够多的时间,来持续的完成这件事情。

任何完美的机会,没有时间的推动,都只是计划,无法落实。

5.实践

我猜想,入门之后,进一步提高的方法就是实践了?

读高质量的代码并努力理解,尝试自己动手写一些代码,进行一些深层次的尝试。

限于自身水平,这个层次我尚且不能解读。

四、总结

所以总结来看,学习,无论是何种方式的学习,都会存在一套最朴素的方法论,虽然简单,但是抽象出来之后,再遇到新的东西,眼界会更加广阔,入门的速度相信也会有所提高。

最后,不妨抄录王国维《人间词话》中的一段话:

“古今之成大事业、大学问者,必经过三种之境界:‘昨夜西风凋碧树,独上高楼,望尽天涯路’。此第一境也。‘衣带渐宽终不悔,为伊消得人憔悴。’此第二境也。‘众里寻他千百度,蓦然回首,那人却在灯火阑珊处’。此第三境也。”

曹真 wechat
欢迎关注公众号:一时博客