一位40岁“老程序员”的经历,给你们说一些我的真实想法

作者 | Ben Northrop
前言我是个Android程序员 , 还有2个月40岁 。
记得某个周六的早晨 , 我老婆在家里带孩子 , 我自己跑去参加一场技术会议 。 当时这个会议的主题是 React Native , 主讲人一直想给我们灌输一种 React Native 将成为移动开发领域“下一个大事件”的印象 。
一位40岁“老程序员”的经历,给你们说一些我的真实想法文章插图
但在我看来 , 它跟 15 年前的 JSP 其实挺像的 , 连演示代码中的逻辑都一模一样——但我觉得可能是自己“老了” , 有点“没跟上节奏” 。
主讲人一张一张放着幻灯片 , 那些实时编码画面让人眼花缭乱 。 接着就是演讲里有名的“掉书袋”环节 , 主讲人一口气说起六款我前所未闻的支持工具 , 其中有一款叫 Pepperoni ——对 , 就是意式辣香肠那个词 。
我坐在现场感觉自己像个傻子 , 真心希望台上能讲得慢一点 , 简单一点 。
但其实这一切又让我生出种熟悉的感觉 。 过去二十年里 , 我经历过不少什么浪潮啊、什么变革的 。 其实感觉还行 , 一样样“颠覆”总是来了又去 , 拽着从业者们的神经不断亢奋 。
这让我自己也有了技术创新社区的归属感 , 觉得我也能为让一切变得更轻松、更快、更干净、更好而做出点努力 。
但这一天 , 面对即将到来的四十岁 , 我必须承认自己有点疲惫了 。 我知道 , 要想继续挣到可观的薪水 , 我就得跟上时代的变化、抛弃一些以往自己深信不疑的知识 , 为下一场旅程做好准备 。 这些我都知道 。
但我转念一想 , 其他行业的专家其实并不需要像我这样熬过自己的编程生涯 。
【一位40岁“老程序员”的经历,给你们说一些我的真实想法】就说四十岁的医生们 , 他们不用担心自己对于心脑血管系统的知识突然就过时了 。 律师、水管工、会计师或者英语老师也是一样 , 虽然每个职业都有自己的独特之处 , 但着眼于职业生涯的中期 , 总有一些积累下来的知识应该相对稳定 , 同时也成为他们获得尊重与报偿的根源 。 但在编程方面 , 二十年的从业经验似乎没那么值钱?
两股力量当然 , 编程这行里也有不少积极向上的从业者 , 他们热爱编程工作带给他们的一切 。 但单从无休无止地自我否定、自我颠覆这事上看 , 编程似乎或多或少有着自己的独特性 。
但我不禁疑惑 , 这种独特性真的成立吗?编程真的跟其他所有行业都不一样吗?如果是真的 , 为什么?这又会给我们的职业生涯带来怎样的影响?我个人想从两个角度 , 分享自己的一点思考 。

  • 首先就是知识衰减 。
我们所知晓的一切 , 包括编程之外的很多认知 , 终将过时 。 我在 16 岁的时候就学会了开车 , 直到现在这门手艺还是能发挥作用 。 由此来看 , 开车算是衰减速度很慢的知识类型 。 对其他一些专业人士来说 , 他们的知识衰减速度也比较慢。 虽然医学上的新发现可能会取代一部分现有程序 , 但我们对于生物学的理解恐怕不太可能出现全面颠覆 。 在这样的基础上 , 知识的累积才真正具有效力 。 多从业一年 , 医生们的知识储备就更丰富一些 , 因为这 12 个月里他们学到的新知识会叠加在原有知识之上 。
但先不说是好是坏 , 在编程领域 , 情况完全不同 。 说句不负责任的话 , 我认为:
程序员有半数知识都将在未来十年内失效 。
也许这话并不靠谱 , 但结合个人经历 , 我是比较认同的 。 换句话说 , 就算从现在开始我什么新知识都不学 , 那么到 2026 年 , 我也还是有大概一半的知识能发挥作用 , 另外一半则没准毫无用处 。
我肯定会继续学习 , 用新知识替换掉旧知识 , 但这就够了吗?到 2026 年 , 我脑袋里头仍然有效的知识 , 会比现在更多吗?


推荐阅读