今年夏天这个暑假,姐姐家的小朋友由于暑期实习,借住在我家。小朋友是一位零零后,今年大三升大四,马上就面临着考公、考研、找工作等等人生重要的节点。实习工作不算太忙,晚上吃完饭后还能坐下来聊聊天。因此我得以能和年轻的一代进行深入的交流,探讨学习、职业、未来、人生等话题,借此我也得以了解到年轻人的一些想法。
小朋友的专业学的是计算机,既憧憬着未来,又对未来感到焦虑。本次的话题围绕着圈子中广泛流传的 35 岁危机(中年危机)展开。
小朋友:舅,您现在还在写代码吗?
我:还在写代码啊,而且主要工作就是编程。
小朋友:您差不多有 50 岁了吧,怎么还在写代码?
我:我还没那么老,离 50 还差好几岁呢。你这话是不是包含两层意思?一层意思是都这么老了,还写代码,太丢人了。第二层意思是,年龄这么大,怎么还能写代码。
小朋友:我倒没想那么多,只是网络传闻程序员 35 岁就会下岗。对了,我正好问一问,如果您的领导比您还年轻,会不会觉得尴尬?
我:这么说吧,编程就是一份工作,在谁的手下干活不都是干活。再说,中国人受“官本位”思想影响很深,觉得一个人没做管理就很失败。只要想到这个世界大部分的人都不是管理者,就可以很坦然的面对。再说,你做再大的官,仍然要受人管。即使你是公司的老板,一样还是需要满足用户需求,迎合用户。
小朋友:如果领导比我资历老,我心服口服,但如果领导比我年轻,我觉得有点难以接受。
我:在你的同龄人中,或者比你年少的人当中,是不是有非常杰出的才俊?比如前段时间上热搜的华为天才少年,要是和他们比,那你确实会比较郁闷。
小朋友:这不能相提并论吧。首先他们只是特例,其次,他们离我比较远,感觉不明显。就像比尔.盖茨,年纪轻轻成为世界首富,但世上的人不会和自己过意不去,去和他比。但直属领导就不一样,每天都要面对。而且成为我的领导,应该不需要什么天赋吧。
我:那你是认为应该拼资历啰。如果 IT 行业是一个拼资历的行业,就不会有那么多年轻人涌入。这个行业高速发展,不能用传统行业的思维来考虑问题。退一步说,如果职位都被资历深的人占据,年轻人得不到上升的机会,那年轻人也会抱怨吧。人不能这样,年轻时希望打破世界秩序,到年老时又拼命维护旧秩序。
小朋友:也是,我之前看过一篇文章,讲到踏板效应:当拥挤的公交车在站台边停下时,车下的人会拼命的往车上挤,一边挤一边央求车上的人往里挪挪;而一旦挤上之后,就会试图阻止车下还在往上挤的人。
我:其实认识到这一点很重要,我当初选择 IT 行业,就是觉得它充满活力,充满无限可能,而这种可能也包含成为炮灰。虽然我最后也没能做出很好的成绩,但也能坦然接受这个结果。机遇、胆识、才能、毅力等等众多因素决定着一个人最终的成就,只要曾经努力过就行。再说,我也是凭借一技之长挣工资,不丢人。
小朋友:我还是希望以后能成为管理者,面子上好看一些。
我:哈哈,你这是没有受到社会的毒打,过十年再看吧。
小朋友:那网络上传说的 35 岁危机又是怎么回事?
我:先问你一个问题,编写代码是不是脑力劳动?
小朋友:嗯,虽然程序员喜欢自黑码农或者搬砖的,但编写代码的确主要费脑。
我:你看电影中,是不是有很多白发苍苍的科学家、研究员和教授,他们都属于脑力劳动者,年龄大了,照样可以做科研。
小朋友:舅,您这是在偷换概念。那些科学家都是顶尖人才,属于金字塔的顶端,当然不愁饭碗。像我这样资质平平,以后可能就是一个普普通通的工程师。这个道理我懂,不管在哪个领域,能做到顶尖当然出路都很宽广,但我更关心的是普通人面临的困境。
我:那些研究员也不是个个都是科学家啊!也有一些研究员只是一辈子做实验,并没有研究出什么成果。这样说吧,前段时间报道过一位日本老奶奶,58岁接触电脑,81岁自学编程,收到过苹果CEO蒂姆·库克的邀请参加WWDC大会。这虽然只是个案,但也说明,只要脑袋还在运转,写代码并非不可能。
小朋友:感觉这个例子还是不太恰当,我现在的困惑就是,新技术层出不穷,就拿 python 来说吧,每年都会冒出新框架,现在都感觉学不过来,等到年龄大了,不是更跟不上了?
我:你为什么会认为学习能力和年龄有关呢?
小朋友:年龄大了,记忆力会退化,反应也会变慢,这可是有科学根据的。
我:这个我承认。但学习不仅仅靠记忆,反应慢可以多投入时间。如果你读过有关学习的研究,应该知道,学习过程中最重要将自己所学的知识串联起来运用到实际中,将自己所学的碎片知识系统的连接到一起,形成系统化的体系。这样所学的知识不会遗忘。随着年龄增长,掌握的知识越来越多,在学习新知识时就越容易和以往的知识发生联结。比如说,你开始学习 C 语言,是不是觉得很难。再学习 python 语言时,是不是觉得编程语言无非就是变量、条件判断、循环、函数等等。如果在学习 python 的时候,回忆起 C 语言是如何做的,是不是同时也巩固了 C 语言。这时你再转过头去复习一下 C 语言,会不会理解更深。
小朋友:有点道理,但计算机行业确实发展很快。您看,这里有个数据:
在18世纪时,知识更新周期为80~90年。19世纪到20世纪初,缩短为30年。上个世纪60~70年代,一般学科的知识更新周期为5~10年。而到了上个世纪80~90年代,许多学科的知识更新周期缩短为5年。而进入新世纪时,许多学科的知识更新周期已缩短至2~3年。
我:不要听网上瞎掰活。我就问你,现实生活中,应用得最多的是不是经典物理,牛顿的三大运动定律在十七世纪就提出,距今已经有三四百年的历史。即使是像相对论、量子力学等大多数人都不懂的理论,也提出了一百多年了。我再问你,冯.诺依曼体系结构提出后,现在有变化吗?C 语言是哪一年发明的?C 语言仍然是使用最广泛的编程语言。
小朋友:但是,手机每年都会升级,操作系统每年也在更新,像 IOS 系统,都已经升级到 16 版本了。这说明,技术仍然迭代很快。
我:确实,手机更新速度很快。但是,更新的只是工艺更精良、速度更快,操作系统也是越来越炫酷,但并没有什么革命性的进展,我们也不需要时刻掌握革命性的新知识。如果你做 app 开发,也是不断打磨产品,增加新的 feature,留给你去开创性地开发一款新软件的机会并不多。
小朋友:话是这么说,要是被裁员了,怎么办?
我:这个话题比较大,等下次再聊吧。我想说的是,只要摆正心态,程序员这种职业,和以往的职业并没有什么两样,大胆做就是了。
小朋友:嗯,先做做看吧。