马拉松式学习与技术人员的成长性

  你的朋友圈里总有一些人具有某种特殊的技能点。比如我的一位铁哥们——波仔——就是这样的人。

  波仔,江湖人送外号——波哥,是我认识的程序员里面最能跑的。国内的马拉松赛事,他几乎一次不落地参加。只要哪个城市举办马拉松比赛,不管多远,他都一路飞奔过去。这不,前两天刚冒雨跑完了无锡的马拉松。虽然淋得跟落汤鸡似的,但感觉就一个字——爽!

  波仔年轻的时候曾是专业运动员,有着令无数少女尖叫的健康体魄。后来做了程序员,虽然跑步从此成了业余爱好,但仍然威风不减当年,很随意地就跑能个半马,紧接着再跑个全马,都是小菜一碟。我们搞程序的,谁没经历过没日没夜加班的日子。常言道,身体是革命的本钱。这说起来,好的身体也是程序员的核心竞争力之一呢。

  意大利「文艺复兴之父」彼特拉克曾经说过:「肉体和心智的能力必须大到足以满足文学活动和妻子两方面的需要。」如果换做程序员的角度,这句话应该修正一下:肉体和心智的能力必须大到足以满足熬夜写代码和女朋友两方面的需要。当然啦,这个说法也还远没有表达出生活真实的复杂性和严峻性。

  所以,跑步是锻炼身体很好的手段。但是马拉松,除了锻炼身体,同时也是对人性的考验。一件接近身心极限的事情,你的身体能否承受,你的精神能否坚持下来。

  波仔多次邀请我一起去跑个马拉松,都被我毫不犹豫地拒绝了。这身体条件,咱不能强求。没有准备的极限运动还是比较危险的。但是,对于有能力跑下来的朋友,我在精神上表示羡慕和支持。

  有时候我会把学习比作跑步。对于类似程序员这样的职业,新技术更新换代的速度确实比较快,这需要你总是保持在学习的状态。

  应该说,在一般情况下,程序员们对新知识进行学习的能力都还是比较强的。工作中碰到以前没做过的东西,只要能在网上找到对应的开发文档,仔细读一读,再看几个Demo,就基本能解决问题了。这种规模的学习过程,一般几天就搞定了,可以看做是一次「短跑」。

  当然,这种「短跑式」的学习过程,也只对于「一般性」的情况有效。而对于一些「专业性」的领域,我们就需要「马拉松式」的学习姿态了,做好充分的准备,并且长时间投入,半年,一年,甚至更长。

  实际上,编程这门工作,门槛说低也不低,说高也不高。很多学历不高或者非科班毕业的同学,也都能把这份工作从事得很出色。但是按技术领域来区分的话,编程还是可以分为「一般性」和「专业性」两大类的。对于「一般性」的技术领域,你只要具备一点计算机基础,懂得一门编程语言,能理解业务逻辑,就能胜任了。但是「专业性」的技术领域就不一样了,除了计算机基础知识之外,你更需要掌握一整套知识体系,可能对数学知识还有特殊的要求。这样的领域有哪些呢?比如说,分布式系统,数据库理论,音视频处理,3D游戏引擎,操作系统和虚拟化技术,大数据处理,还有最近火爆的人工智能技术,等等。

  对于「专业性」的这些知识,如果你打算涉足其中,就得需要拿出跑马拉松的精神了。据说马拉松跑到一半,很多人就会产生强烈的「想放弃」的想法,后半段就靠毅力支撑了。「马拉松式」的学习过程也是一样。可能一门「专业性」领域的知识,最开始吸引你的是兴趣,它非常有意思,可能听起来还很酷,但随着研究的深入,你就不可避免地遭遇很多沮丧时刻。你会发现,你学得越多,未知就越多。这时候你肯定会产生放弃的想法,甚至对自己是否适合做技术产生一丝怀疑,但是没有关系,每一个在某一领域走得足够远的人都会碰到这样的情况。只要你咬牙坚持下去,随后你得到的奖赏必然是恍然大悟或醍醐灌顶的感受。我相信 ,这与一场马拉松终于跑到终点的胜利喜悦是一样的。

  有长跑经验的人都知道,真正能在马拉松上取得好成绩的人,基本上都是匀速跑者。开始跑得多快并不关键,关键在于「后劲」足不足。我们的职业生涯也是一样,不管是程序员还是其他职业,这个道理都适用。

  我时常在想,不同技术人员之间的区别到底在哪。是在于工作经验,还是在于他们的聪明程度,或者是在于他们是否有名校的教育背景?为什么本来基础差不多的人,多年之后会产生巨大的差异?与此相关的一个很实际的问题是,我们在招聘新员工时,到底应该看重他们的哪些特点?我最后想到的答案是,决定不同技术人员之间的真正分野,在于「成长性」,也就是持续学习和提高自身的能力。换句话说,「后劲」足不足。一个人的成长过程,什么都可能随时变化,但成长性本身不应该有丝毫减弱。

  设想一个稍微极端一点的情况,假设你要自己创业,现在要物色合伙人的角色。你会怎么选?你必须考虑他们的成长性。你放眼四周,也许你周围的很多朋友都能帮你解决当前的问题。但你物色的人选,他们能否随着公司一起成长?他们身上有没有自我超越的基因?都说找合伙人比找对象还难,的确如此。跟不上公司发展节奏的合伙人,注定将是一场灾难。

  而创业公司的CEO,作为掌舵人,他自身的成长性其实要求更高,因为这决定了公司和团队的未来,责任极其重大。Facebook的CEO马克·扎克伯格,每周都坚持读一本新书,就是为了保持自己的成长性。有些自私的老板,他们忽略了这份责任,可能认为「我给你发工资你给我干活」是理所当然的事情。但是,确保团队成长的责任,和公司发展的责任,同样重要。

  实际上,凡是带团队的人,都有这份责任。如果你自己混日子,不能一步步成长,那你的团队成员又怎能获得突破自己的机会呢?职位越高,责任越大。当你的leader或某个机遇把你推到那个位置的时候,你为进一步的成长做好准备了吗?估计很多人是想不到这一点的。还听说有些极端的团队leader,甚至整日担心下属会超过自己,不但不给团队成员创造成长的机会,还打压下属。真是不理解这些人是怎么想的。所以,跟对人很重要。

  投资人是否会投资一家公司,看重的是公司的成长性;我们买股票也是一样,都会选择成长性好的股票。甚至女孩子找老公,也希望找个「潜力股」。所有这些选择,都是在追求「成长性」带来的升值。

  只要想明白这一点,我们就不再会为一些不必要的担忧而烦恼。比如,很多人担心年龄大了就再也做不好技术,或者担心年龄大了之后的职业发展问题。显然,年龄并不是决定成长性的关键因素,这顶多是一个心理因素。成长性更应该是一个人的本质特征,是他所具备的基因。人与人的不同究竟在哪里?具体技能总是会变化的,但基因是不变的,也不应该随着年龄的变化而变化。

  人的可贵之处就在于学习和塑造能力,这是造物主赋予我们的可贵品质。

  甚至现在的人工智能模型也要以学习的方式来训练,才能产生它需要的职能。一个复杂的模型,需要大规模的训练,喂给它很多数据和模式,才能让它获得新的知识,不断提高「智能」。

  我们可以想象,人脑其实也是一个智能模型,只不过这个模型更庞大,参数更多,容量更大;训练它需要的数据更多,时间也更长。如果你想成为某方面的专家,就需要花费很多年的精力来进行专业训练。

  一个人,要想在某方面获得睿智,唯一的办法就是持续地学习、调整、提高、成长。这个过程需要耐力和坚持,而最终你会收获成功和乐趣。

  一句话,保持学习,保持「后劲」,保持成长。

你可能感兴趣的:(程序员,程序人生)