技术脑洞 ------ thoughtworks面试反思录(一)

两年前开了个“码农”培训讲习舍,先先后后有两批学生去thoughtworks面试了,反馈不尽理想,不及预期,4个里面录取了3个,一个是非常优秀的,两个是擦边球。第三批面试的人员有三个人,正在进行中。

今早在睡梦中回忆想到自己,我从小痛恨老师这个职业,命运弄人自己却成为了一名老师,不尽想起初中老厉跟我们讲,“一个人聪明不聪明是看大脑中的褶皱的”,知道昨天我也没有理解他说的这个褶皱是什么,而今天这个褶皱要说的脑洞,在此感谢我的初中老师。

这个褶皱应该就是大脑中的神经元回路,回路帮助你建立起来思考的捷径。

如果把我们大脑空间看作一个宇宙的话,里面可以存放无数的神经元,假设每个神经元对应一个知识点认知,那么从神经元“地球”到神经元“月球”是非常近的知识点认知,我们学习的时候会很轻易学习到这种知识,我们称为学习的舒适区。

如果我们跨度比较大的从神经元“地球”到神经元“土星”,就不那么容易过去了,更远的到银河系外的某个神经元就更难过去了。

现实中人类希望虫洞的技术来穿越于宇宙之间,而我们需要通过脑洞的形式穿越与神经之间,即神经元回路,也是我们希望讲的脑洞,也可以称为链接。

我们如何通过我们的知识点建立属于我们自己的链接呢?

首先我们要清楚我们知道的知识点有什么,我通过画技术栈画出了自己理解的知识,

如图:



接下来我们就可以通过技术栈建立链接,链接分为两种:技术引深的链接、技术对比的链接。

首先我们讲如何建立一条技术引深的链接?

我们建立一条技术引深的链接,拿windows的启动来说,启动过程离不开汇编语言,那么windows的启动可以和汇编语言是可以建立联系,

接下来就能提出来几个最基础的问题,问题可以根据知识点的名称,时间,地点,干了什么来和为什么这么干发问,例如:

汇编语言(名称)在windows启动未看到界面前(时间、地点)做了什么(干了什么)?
汇编语言是如何在启动过程切入到保护模式的?
windows进入了cpu保护模式下又做了什么?
windows为什么要运行在保护模式呢?

有了这些问题我们就有建立了一条技术引深链接的基础了,接下来我们通过google、书籍回答这些问题,当我们觉得我们对问题的认识足够深刻的时候,我们就可以认为我们建立了链接。

我们就可以标记在图中,一方面是方便我们以后复习或者进步一反思使用,另一方面方便我们以后做统计,如图:




接下来我们讲如何建立一条技术对比链接

非常明显函数式编程与面向对象编程是两种不同的编程思想,他们两个可以进行对比,我们对比可以通过提取共同特征、方式的优势劣势、使用场景来帮助我们进行发问,问题如下:

函数式/面向对象都是为了完成什么样的编程思想呢?他们有什么共通的地方呢?(功能特征)
函数式/面向对象编程的优势、劣势分别是什么呢?(优势劣势)
我们什么时候用函数式编程会更好,什么时候用面向对象更好呢?(使用场景)

有了这些问题我们就有建立了一条技术对比链接的基础了,接下来我们通过google、书籍回答这些问题,当我们觉得我们对问题的认识足够深刻的时候,有自己的主张,有自己的建议,我们就可以认为我们建立了链接。

我们就继续标记在图中,如图:



通过这种方式我们可以知道自己对知识的把握程度如何,我们学过有N个知识点,通过数学的方式,可以知道两个知识点之间最多能建立多少链接,通过C(N,2),我们自己建立了多少链接也可以通过画图的出来或者列表的知,然后相除就可以知道链接覆盖率了,此数字仅供参考,因为有些知识点可能是完全独立的。

画了一部分自己建立的链接,实在有点画不下了,不过也可以从我的图里看出来实际上在学习中的linux和刚刚开始使用的web开发链接比较少也是我应该多思考的地方



链接可以量化一部分我们思考的深度,让我们得知自己理解问题覆盖量。

另一方面链接是我们做出快速反应的基础,经常建立链接可以让我们学习新知识更加快速,因为迅速的和旧的知识建立了链接。

以上思考在面试体现出我们对技术的热爱,对知识见解的深度,也是面试中最能展现自己的地方,也是目前状况下我们教授学生们的不足之处

但是每个人对自己是否已经链接这个问题,是仁者见仁智者见智,很难评断,这也是这个思考模型中没有量化的问题。譬如:a可能认为自己已经建立了链接,而对于经验老道的b来说,他并没有建立这个链接,就会认为他理解不够深刻,这个是模型中暂时不完善的部分,希望以后的总结能够量化这个问题。

猜你喜欢

转载自xyooyy.iteye.com/blog/2182077