PinnedPinnedPrivate
how.complexsystems.fail

How Complex Systems Fail

复杂系统失败通常不是单个错误造成的,而是许多平时看似无害的小故障在特定时刻叠加。交通、医疗、发电这类系统天然带有危险,因此才会发展出备份、流程、培训、监管等多层防线。灾难发生时,人们容易寻找一个根因或一个犯错的人,但这种解释遮蔽了真实机制:系统长期在带缺陷的状态下运行,靠冗余和一线人员的持续调整维持安全。事后知道结果,会让旁观者误以为风险当时显而易见,从而低估操作者面对的不确定性。人既要完成生产,又要阻断事故,这两个角色经常冲突。改变也不总是让系统更安全,新技术可能消除常见小问题,同时打开罕见但严重的新失败路径。安全不是某个零件或部门的属性,而是整个系统在变化中不断被人创造出来的结果。没有故障经验的人,也难以识别系统边界在哪里。

PinnedPinnedPrivate
apenwarr.ca

技术债务隐喻的极致主义

很多人不这么认为,但我认为这是因为他们要么没有把这个比喻延伸得足够远,要么是因为他们没有正确理解金融债务。这在第一年就能获得90万美元的利润!(不包括折旧) 有盈利的长虹公司承担债务是有原因的,而且随着时间的推移,债务总额往往增加而不是减少。利率第二高的是普通用途的信用卡,如Visa或Mastercard。技术债务通常表现为你的开发速度放缓(即你所做的其他事情的开销),这意味着在中长期内推出的功能较少,这意味着收入和客户反馈较少。在这之后,在添加测试和文档之前,你尝试写的每一个PR(即 偿还债务)会更慢,因为你有可能创造出未被发现的错误或遇到未被记录的边缘案例。Debt ceilings 债务最高限额 美国政府给自己强加了一个著名的不明智的债务上限,这主要是为了制造戏剧性,并创造一个伟大的地方来推动没有人看的无关的附加条款,因为提高债务上限的法案总是会通过。相当于技术债务的情况是,当你落后到完全没有改进的情况下,你可以勉强维持系统的运行;。