你真的50岁的时候还想干这一行?
我不得不承认,大量高强度的编代码工作是年轻人的游戏。
这是蠢人的游戏,并且绝大多数傻瓜是男性,当然比例也没有达到100%。我今年55岁,从大概1973年就开始编码,那时我还在上学。1981年开始从事专业编码工作。我的经历让我深深相信编一辈子程序一点儿都不值得。
最近我的文章“为什么我们都不应该无偿加班”自发表以来一直非常受欢迎,充分说明我并不是唯一一个觉得死磕代码等于浪费生命的人,文章的具体内容就不在这里重复了。
对于为什么55岁还要搞编程这个问题,从我个人来说,我这么做是因为我喜欢挑战,喜欢思考复杂的问题并且找到解决方法。每天早晨,我会浏览一些专业技术和编程的网站,获取最新信息,估计等我不做程序员的时候我对新鲜的事物也就不再感兴趣了。从我第一份编程工作开始,早上阅读的习惯都没有改变过,在不能上网的时候我也会看一些杂志或者书籍。
记得在我工作的第一家公司(通用动力公司)上班的时候,我被要求让我们系统运行在新的IBM电脑上。这不是我唯一的工作,但这是个新的东西,没有人知道可能需要什么。于是我读了我手头上所有的资料,包括IBM的产品说明书。不久,IBM的销售代表都来咨询我如何把不同的产品配置组合在一起。我不是必须要学习这些东西,但它确实是非常有用的知识,直到今日我还是非常珍惜各种学习机会,对我来说它们很有趣,虽然它们看起来并不一定很有用。
如果你对编程以及相关技术领域并没有一颗好奇心,那么你的编程生涯不会持续很久。大多数我上大学时认识的获得计算机学位的人基本不再编任何程序了,他们或失去了兴趣,或停止学习,最终被技术发展的巨轮狠狠碾过。而我在大学学习的是化学专业。
这些年来我的研究方向变来变去,就像电影里的狼人一样(实际上狼人也是我在高中时期的外号)。
直到今日,我觉得最重要的一点是,工作投入的时间不是越久越好,而是工作的时候需要动脑筋。随着年龄的增长,你不再能一天编20个小时的程序,假设你能编20小时,代码的质量也不会很高。要编写出一个有质量的软件,真有一个每天你应该工作多少小时的限制吗?也许吧,随着年龄的增长,也许真的你每天能高效编程的时间越来越少,但只要你坚持学习如何更巧妙地编程,在很少咖啡因的陪伴下也能写出高质量的代码。
如今的编程环境跟我当年刚步入这个行业时比发生了巨大的变化,现在我们有着各种各样的编程语言,开发工具,开发平台,开发方法可供我们选择。一个人 不再可能把这些知识全部都掌握,即使压缩到一个很窄的领域,比如我学习的IBM PC方面的知识,那也是很难的。此时最重要的就是具备从众多选项中作出明智的选择的能力。我最喜欢的电影台词出自《夺宝奇兵3》,在坏人被打败那一幕,老骑士说:“他的选择太糟糕”。太多东西闪闪发光地迷惑着你,但只有一些是实际可用的。
丰富的经验有时候会让你更好的把握节奏,知道什么时候该去追求,什么时候该放缓脚步。而年轻会让你觉得任何事情都充满新鲜感,也不会担心失败。
这两种情况各有好处,年轻的史蒂夫•乔布斯有很多绝妙的想法,但并没有实现,当年老时,他却利用这些想法做出惊天动地的一番事业。从这点上讲,岁月本身就是一种资源,年轻时保持一种好奇心和闯劲,慢慢的随着年龄的增长,再把阅历和一种长远的眼光融合进来,你永远都不会被淘汰。
所以,如果你到55岁的时候还想当个程序员,你永远不能停下求知的脚步,并且要高效地获取更优质更简明扼要的信息。一旦你失去了这种进取的锋芒,快速运转的技术车轮会越来越让你感到压迫,直到最终你只能靠做一些平淡无味的事情过活。
在我24岁的时候,我从来没有考虑过在我的第一个工作岗位上干到55岁是什么样子,但我知道我必须时刻关注这个行业并且要走在前列。
在未来的31年里,编程会一直存在吗?这是一个很好的问题。等我到86岁的时候还能继续编程吗?如果它可能实现的话,我还是可以继续。那时我应该可以做到在30分钟内做完一整天的工作。
如果不是这样,我会告诉我的机器人朋友替我做,然后继续呼呼大睡!
查看英文原文: Do You Really Want To Be Doing This at 50?
感谢魏星对本文的审校。