这两天看了大卫张的《大卫谈学习》,对自己这几年的学历历程以及对学习的探索的感悟给表达出来了,也勾起我对学习的思考过程。
在大学的四年过程之后,我明白了为什么要上大学,大学里面要学习那些知识以及如何学习这些知识。相对于社会来说,大学选择的余地比较小,对学习的理解也仅仅限于学习知识,而知识主要就是本专业学科以及这些专业衍生的基本技能。
工作这么长,开始也一直按照大学的方式去学习,但是发现往往在达到一定程度之后,成长的速度开始减慢并且开始停滞,在漫长的摸索阶段,对学习重新了有了新的领悟。
就像哲学的三个本质问题一样,对于任何举行的主动学习行为,我们首先要明确三个问题,简称WWH:Why,What,How。
对于认识学习这个问题上,也比较适用,也就是说我们要明确三个重要的问题:
Why:为什么要学习
这个是自己人生价值观的一部分,也就是学习的目的。最基本的目的,就是知识改变命运。根据马洛斯需求层级模型,大多数人学习就是为了获得更好的生活质量,至少要实现社交的需求。这个也是大多数人学习的直接动机,赚钱则是学习的最基本目的。
然后,在能够达到自己期望的赚钱目标之后,一部分学习则是为了自己的兴趣,部分是为了了解这个世界本质,部分是充实自己的生活,等等。
价值观不同,对待学习的态度也就不一样,自己的选择也就不同。
What:学习什么
这个是选择问题。当你明确学习目标的时候,有太多的方法和途径能够让你达成自己的目标,从而影响你自己学习目标就是你的选择。我个人认为选择是人生中最重要的一个环节,因为人生也是一个不断选择的过程。就拿技术人员来说,有太多的技术可以学习,工作中也有不同的工作可以进行选择。可能很大部分人都是顺其自然,但是如果自己从未选择过,就很难有成长。
How:如何学习
这个是方法论,当选择确定之后,可以通过大量的获取知识以及方法论加以精炼,从而形成适合自己的方法论。大部分人都在追求如何学习历程,也就是方法论。人生的每个阶段,学习的内容不一样,学习的方法也就有差别。小学生,大学生,职场新鲜人以及职场老人都有所不同。每跳跃一个阶段,学习的重点和方式也就不一样。
当然,上面所说的比较虚,简单的对照上面的三个过程,谈谈自己的一些经历以及感悟
刚进入公司的时候,学习的目的是很简单的,就是能够掌握基础技术技能,适应公司的要求。这个时候目标明确,选择比较少,学习成长很快,有一些具体的技术可以去学习,例如spring,struts,ibatis,esb,xfire 等等。这一类学习比较简单,网上有太多的教程可以参考。
随着项目经验的增长,自己的基本技术技能以及业务经验已经完全能够满足公司的要求,自己也能够带团队做项目。这个阶段差不多是3年。这个时候也是面临选择的时候,可以选择基础技术,系统分析,业务分析,管理。个人选择不同,导致你学习的内容不同。就像大卫张说的,大多数人工作技能来自自己前三年的所积累的,如果重复三年前的工作,即使时间在厂,也不会给自己带来任何提升。
这个阶段,你满足的工作的基本技能都已经有很大的积累,要开始进行选择,选择的方向不同,学习的内容不同,从而影响自己思维模型以及行为模式。这个时候工作的方面就要进行重点选择。今天微博上有一个前端大牛说:“职场老人应该挑工作,如果这个工作只是以前的重复,应该进行选择,而不是想职场新人那样,任何工作就不拒绝”。我个人认为这种思想的出发点是好的,但是方法不太对,毕竟大多数时候,你很难拒绝领导给你的工作,如果每个人都是这么想的,公司就没有办法运行,垃圾活给谁干。对于重复的工作,做到60分及格即可,应该在这个工作过程中尝试新的思维或者对待这份工作的侧重点不一样。就拿现在自己工作举例,我参与了一个项目,由于做过太多的项目,我的重点就不是很漂亮的完成任务,得到表扬。而是在项目过程中,学习如何管理项目,如何和业务方沟通,如何管理风险以及团队部门的冲突,如何去和架构师PK,挑战自己的薄弱项,比如沟通表达能力,忽悠能力,思辨能力。
重复的劳动不会带来成长,这个和《程序员修炼之道》里面提到的dry原则思想——don’t repeat yourself。如果你发现你在做重复的劳动并且没有办法避免,那就没有必要花太多的精力在上面,60分即可,把自己精力花在对自己更会有价值的事情上。我向来不认同诸葛亮式的事必亲恭的做事方式,这是典型的重复。
要避免重复,就要开始进行选择。这个阶段对自己选择能力的一个挑战。要学会拒绝,学会取舍。领导给你的工作,如果对自己过去的重复,并且自己也没有在这基础上做的更好,就努力拒绝。在有限的时间内,你的精力是有限的,不可能每个方面都可以做好,选择出色的完成公司的kpi或者自己人生的kpi,也是你的选择,你要进行取舍。在我们公司,最典型的重复自己的工作就是 客户服务人员,kpi的衡量就是谁接的电话多,这完全是对工作的重复,有达到超出期望kpi所需要的时间,不如自己换一种方式去思考和学习来的实惠的多。
在如何学习上面,我觉得每个阶段都不一样,根据学习目标,学习的方法也不一样。我会进行看书,但是现在把书分为三类:
第一类是具体技术类的,主要介绍某一类具体的技术,如何使用,如何实现,以及使用场景的。这一类某一门具体的技术偏多,比如java语言设计,javascript等等。这个应该属于短期记忆性,现在都会大体翻过一遍,了解语法,基本功能,基本的设计思想等等,基本上不会话太多时间记忆,用的时候百度一下,属于短期记忆型的。
第二类是方法论方面:这一类知识比较抽象,是通过很多小case进行总结抽象出来的。背后会体现一种哲学思想。这一类书记争议比较多,因为介绍的方法论不一定是普遍适用的。学习这一类主要是训练自己的抽象思维能力以及思辨能力,久而久之,会形成自己的处事哲学。比如《六顶思考帽》,《软件设计架构模式》,《程序员修炼之道》,这些书都是要不断重复的去阅读,然后在实践中检验,从而加深理解。这类书会改变自己的思维习惯,是一种长期记忆行为。
第三类是社科哲学类:这一类主要是主要是对世界的理解,对人生的理解,提高自身修养的,扩展自己的见识。这方面的书籍比较虚,但是对自己影响是最大的,而且这一类书要选择自己认同的,因为没有正确与错误。目前自己在这个方面相对少一点,而中国人在这方面是比较弱的,可能和中国学生从小的教育有关。对一个人长期的思维习惯和行为模式则是通过这一类书影响的,这一类书我会定期的阅读,重复的阅读。比如《罗素的故事》,《大道至简》,《linux/uinx设计思想》,《暗时间》,《黑客与画家》
每个人要想往上提升,要对自己的抽象能力要求越高,就要改变自己的思维习惯和行为模式。改变思想习惯和行为模式,就需要慢慢训练长期记忆,而长期记忆则是通过对第二类以及第三类知识的学习。