随着移动互联网,人工智能,机器学习,大数据等等不断崛起,程序员也成为了一个非常受热捧的职业。我们经常会听到,阿里巴巴给应届毕业生的月工资可以开到2万,华为给应届毕业生可以开出28.8万的年薪,似乎程序员就是一个高薪的职业。这个相对于一些刚毕业只有3000或者5000月薪的应届生而言,似乎是一条巨大的鸿沟。
为什么华为,阿里巴巴等可以对应届生开出这么高的工资?为什么程序员相对于其他职业,在刚毕业这个点上有这么大优势呢?最近我翻越了一本书《程序员的思维修炼》,在这里我找到了一些答案。这本书以程序员为切入点,站在计算机思维的角度,诠释了如何有效学习,如何有效提升思维力,如何由新手成为专家等等。全书共有9章,接下来将分10次,以每章一篇,来领读这本书。
《程序员思维修炼》第一章:这个社会你觉得什么能力最重要?
1
前几天,我在公司里和老板因为意见不合闹了点不愉快,我这人就是这样,一感到不舒服脸上就会马上显露出来。其实,事后我回到家,仔细想想,也没什么大不了的事。有一个项目,我自己花费了很多的时间,一直在做debugging,事情已经有了很大进展,已经有了结论,但是我想把其中的来龙去脉再花点时间整理一下,搞的清楚一点,还需要点时间,不过项目的时间节点快到了。这时候,领导就比较急,他说:”不管怎么样,你赶紧把这个项目给我结掉“。
由于我自己一个人,也搞了好几天,有点疲惫,而领导又这样发布命令的样子,我心里有点不舒服。我就直接说:“我们作为研发,需要的是积累一些经验,部门要长远发展也是需要有积累的。如果只是为了结束这个项目,我觉得很简单,我写一个报告就可以了“。这时候,领导觉得自己的权威受到挑战,也有点不高兴了,从脸色上明显可以感受到的。
回到家里后,我越想越来气,自己辛辛苦苦加班把这个难题给破了,领导不仅不理解自己,还要给自己下命令。后来,身边的一个朋友跟我说,你这有啥好气的,你这是不会沟通。你如果站在他的立场上,想想如果他的领导也一直催促他,他当然急了。况且他如果认为自己的权威受到挑战,当然面子也过不去,自然不会有好脸色了。
我的这位朋友接着又说:其实这事挺好处理的!如果我是你,我一般会这样说:“领导,这个事情是这样的,这个项目的解决方案已经有了,但是考虑到其中还有一部分收尾工作,是否可以这样:我先整理一个报告,你可以拿这个报告汇报。但是我再花个2天时间,再做一些实验,把一些还有点模糊的地方再梳理一下,然后我会整理一份复盘笔记,作为我们部门今后学习的经验资料”。我觉得,你不能跟领导硬碰硬,这样大家都两败俱伤,你要学会观察,要给领导做选择题,而不是去评判领导的对错。
听这位朋友这么一说,还真是这么一回事。我发现自己确实太不会说话了,太不懂得沟通了。自己付出了很多的努力,但是不会说话,自然这些努力也就无法得到好的认可。因此,在这个社会,沟通能力真的是太重要了。在《程序的思维修炼》第一章节的绪论部分,作者就提到:沟通能力不仅是软件行业,而且是我们整个人类社会生存和发展的最重要能力。
沟通能力为什么这么说呢?因为我们每个人都是独立的个体,都拥有自己的思想,而每个人的思想有可能是相容的,也有可能是相斥的。要想思想达成一致,要想让各个人的思想朝着一个方向流动起来,就必须沟通。沟通的本质就是构造这样一个流动的环,沟通效率越高,那么这个环就会转动得越快,自然产生的能量也就会越大,形成的团队协作合力也就越强。
从上面可以看出,沟通的本质是跨越非连续性,是让思想在不同的个体之间流动起来。但是个体与个体之间本身是分离的,要跨越非连续性,就得有一个媒介。比如两个不连续的陆地,有一片大海,就需要船来跨越这个非连续性。同样我们的思想也需要类似的船,来实现思想的连续性,这就是我们的语言或者文字。 船本身也很重要,如果船质量不好,就可能到不了对岸的陆地。但是比船更重要的是人,是掌握船舵的人。因为,船本身是受控于开船的人。人可以决定船行进的方向,可以决定如何避免大风浪等恶劣天气,人可以选择最优的路线行进,人可以控制船。
同理,沟通的文字或者语言也很重要,优美的文字和语言,本身就能够让思想更加优雅,更加富有能量。但是思想本身比语言和文字更加重要,好的思想可以让语言的表达更加流畅,更加富有美感,好的思想能让表达既简洁又中肯。
因此,从上面的逻辑来看,这个社会最重要的一个能力是沟通能力,沟通的本质是跨越非连续性的思想,沟通能力依赖于文字和语言这个媒介,沟通的效果依赖于思想本身。
学习思考能力2
沟通效果的好坏最重要的是取决于思想本身。那这个思想本身是怎么产生的呢?或者说怎样能够产生更好的思想呢?在《程序员思维修炼》第一部分,作者给出了答案:那就是学习和思考。对,沟通能力的强弱,其实本质上是个体学习能力,思考能力的一种反应。
回到一开始,我们提到阿里巴巴和华为等公司愿意支付那么高的薪资给应届毕业的程序员,其中最关键的一部分原因是程序员这个职业的特殊性。
自从信息革命,自从移动互联网发展起来后,很多的新技术不断涌现,很多新的知识不断增加,程序员他们的工作就是要去学习这些新的技术,就是去运用这些新的知识来解决新的问题,就是要用新的思维来破除一些老的难题。他们设计程序的过程,其实就是解决问题的过程。因此不断学习,不断思考,不断设计程序,不断优化程序,不断发现问题,不断解决问题,这些就是他们的工作。华为等企业选拔了那些会学习,会思考,会解决问题的人,自然工资也就会开得高一点。
我们如果不是搞程序开发,也需要去了解程序员的思考方法,也需要去了解计算机的思维方法,而《程序员思维修炼》这本书,就为大家开了一扇小门,让我们有机会透过它,可以一窥程序世界的思考逻辑。
这时,也许有些人会问,那该如何提高自己的学习和思考能力呢?下面结合自身的理解,谈谈我的两点思考。
第一,由一个点开始。最近我关注了弘丹老师,发现她从2015年开始坚持每天写作,已经累计写作1200多天,并且通过写作这个点扩散,出版了两本书《时间的格局》和《从零开始写作》;通过写作,创办了有了自己的写作训练营;通过写作,有了自己的拆书精品课程;通过写作,有了自己的青橙学院;通过写作,受邀了湖北之声采访;通过写作,创建了自己的个人品牌。也许有的人会说,这些与学习和思考有什么关系吗?
有。因为弘丹老师以写作为中心,通过写作把学习的成果转化(开发写作课程:拆书课);通过写作,把自己的思考输出,形成知识的晶体(两本书);通过写作,把学习思考和个人品牌结合起来,让学习思考本身有了更大的意义和价值。所以说,从写作一个点出发,弘丹老师,不仅让学习和思考有了输出通道,而且还让它们有了更高层级的意义-那就是人生的梦想和价值。
写作第二,跨学科学习。这也是我最敬佩的大师查理芒格所提倡的。我们可以从多个学科中汲取智慧。比如,本书中提到的通过程序的思维,来看看计算机世界的思考方式。比如得到王立铭老师的生命科学专栏,从生命的思维来看世界。比如,王东岳老师提到的佛教文化,从佛学的视角来看世界。这样的学科很多,很多。我们可以选择感兴趣的来深究,来研习。我记得爱德华德博诺博士曾提出了水平思考的概念,他说:“在一个房子的四周,站着四个人,他们各自只能看到房子的四个角落。但是如果这四个人围绕着房子四周走一圈,他们就可以看到整个房子四周,就能更加清楚的看到房子的样子。”
同样,其实学习和思考也是一个道理。我们如果只是利用自己的专业视角看世界,我们就会被局限在房子的一个角落,我们需要借助其他的学科,比如生物学,物理学,佛学,计算机科学,数学等等,这样我的的视角就可以流动起来,就类似达到绕房子走一圈的效果,就能更好更清晰地看由这些学科围绕的整个世界。
3
随着社会分工的不断细化,学科门类越来越齐全,系统越来越复杂,人与人之间的合作越来越紧密,为了保证合作的效率,沟通能力成为现代社会最重要的一项核心能力。但是沟通能力本身并不简单,它是嫁接在学习和思考能力之上的,它本质上是我们学习和思考后的一种输出,所以我们更紧迫的是提升学习力和思考力。那怎么来提升呢?上文我们谈到两种方法,一种是单点突破,一种是多点聚焦。单点突破,就是有一个点发散,形成多维度的输出。多点聚焦就是,跨学科平行学习,掀开穿着不同外衣背后的底层逻辑。说到这里,也许有的人会说,逻辑是这样,但是能否说的再具体一点,容易执行一点的?有,我们会在下一章提到一个从新人到专家的模型,叫德雷福斯模型,它将会阶梯地告诉我们如何实现一级一级的跨越。
网友评论