编程 40 年
编程中的长久性与乐趣
- 许多评论者表示自己有 30–50 年以上的编码经历,从早期家用电脑(C64、ZX Spectrum、Tandy、Amiga)一路走到现代网页和后端工作。
- 很大一部分人至今仍每天写代码,而且真的很享受,甚至有人已接近退休或已经退休。
- 也有人虽然仍然喜欢底层或嵌入式工作,却对现代“软件开发”文化感到倦怠。
经验对技能与招聘的影响
- 长期经验被认为主要体现在判断力上:知道什么 不该 做,能够说明权衡取舍,并能迅速阅读陌生代码(包括自己多年前写的旧代码)。
- 有人表示到了 50 多岁,深厚的专业能力常常让他们很难被解雇,并带来顾问机会。
- 也有人描述自己因为年龄歧视和对技术栈的迷恋而很难被雇用,尽管背景很广泛。
职业路径、管理与金钱
- 几位中后期职业的开发者有意避开管理或最高级的“staff”岗位,以保持亲手写代码并减少会议和压力。
- 一些人把领导角色描述为情绪成本很高,伴随着倦怠和持续的上下文切换。
- 讨论了薪酬的双峰分布:低于 10 万美元 vs 20 万美元以上;提到的因素包括 FAANG 与其他雇主、地理位置/生活成本,以及一个人是优先追求金钱还是写代码的乐趣。
不断演变的技术与实践
- 提到的一项重大变化是:从盒装软件转向 24/7 服务,带来值班和持续更新。
- 对“编程本身”变化了多少看法不一;有人认为基础与抽象能力是稳定的,而框架和范式则不断更替。
代码的简单性、复杂性与维护
- 大家强烈认同:要写出“简单、明显”的生产代码 很难;复杂代码很容易写,也很容易出错。
- 资深开发者经常被要求去救火那些没人敢碰的可怕遗留代码。
- 许多人强调要为“未来的自己”而写,保持清晰的结构和文档。
单人工作 vs 团队协作
- 讨论“有趣且重要”的软件是否必须由团队构建。
- 有人认为大多数现代重要系统都需要团队;也有人举出历史和现代的一两人成功案例(包括游戏),并预计工具/LLMs 会扩展个人能力。
会议、沟通与流程
- 多个故事描述了低效会议:没有记录、没有决定、人数众多、浪费时间。
- 一些回应者会刻意做并分享简洁笔记,或实时编辑共享文档,以统一理解。
- 另一个分支讨论把“无用工作/会议”与全民基本收入的论点联系起来。
多样性与文化
- 文章对人权和多样性的立场引发了争论。
- 有人认为拥抱多样性与宣称某些道德观点不可妥协之间存在张力;也有人认为优先保障基本人权与多元视角并不矛盾。
更广泛的反思
- 几位评论者反思软件日益增长的社会影响,觉得它越来越是在控制人,而不是服务人。
- 尽管有诸多挫折,许多人仍对自己一生都在从事的、富有创造性的编程职业心怀感激。