「InfoQ」代码没人懂,一个bug导致千万损失,程序开发者去世( 三 )


在生产环境中安装最新的Linux发行版 。
在一些情况下 , 依赖关系会过时 。 这时就需要考虑整体迁移到新的架构 。 例如:
从SPARC迁移到x86;
从Solaris迁移到Linux 。
同样 , 保持开发人员的战斗力 , 可对应用做如下更新:
修复顽疾和一些边缘用例 。
加固自动测试套件 。
清理技术债务 。
做性能优化 。
实现新特性 。
增量重构代码库 , 改进可读性 。
上述变化势必会带来暂时性风险 , 并产生看似“不必要的”支出 。 开发人员难免会犯一些错误 , 甚至引入新的错误 。 面对这些代价时 , 人们很容易退而求其次 , 认为“如果还没有破裂 , 就不要修复 。 ”
对于一个业务价值不大的系统 , 这可能是合理的做法 。 但对于任何关键任务系统而言 , 忽略问题将仅会掩盖较小的瞬态风险 , 而没有解决永久的灾难性风险 。 一旦有一天需要紧急调试或更新系统 , 那么企业将无所适从 。
对于任何关键任务系统 , 至关重要的就是维持实操知识和能力 。 做到这一点的唯一方法 , 就是不断地开展实操 。 企业的大脑和肌肉一样 , 不使用 , 就会失效 。
作者简介
RajivPrabhakar , 毕业于密歇根大学和斯坦福大学 , 之后曾在Intel和SunMicrosystem公司工作五年 , 参与了Jaketown、Skylake和SPARC设计团队 。 之后转向软件相关工作 , 先后任职于Amazon、Google、EngineersGate , 并数次自己组建创业公司 。
参考阅读:
https://software.rajivprab.com/2020/04/25/preventing-software-rot/
为你推荐
InfoQPro是InfoQ专为技术早期开拓者和乐于钻研的技术探险者打造的专业媒体服务平台 。


推荐阅读