吐槽“技术债务” - morethancoding


如果你在软件行业工作一段时间,你最终会听到技术债务一词。它指的是设计不合理的东西,将来会成为昂贵的维护问题。它应该会让人联想到短期技术捷径的可怕景象,它会导致未来的痛苦。

善良的我觉得这个词没用。我们先来看看为什么,然后再考虑一个替代方案。

“技术债务”并不可怕
“债务”一词从未在任何可怕的单词竞赛中占据首位,拥有房屋的大多数人都有抵押贷款,企业已经从银行贷款。(banq注:英文debt一词非常有深意,也许人生就是一场还债赎罪之旅)。

“技术债务”过于抽象,无法传达业务风险,债务可以通过可管理的方式偿还。想象一下,您与首席执行官或董事会会面,并解释最新发布的产品已经产生了技术债务。(banq注:他们不会明白 也不知道如何处理它)
商业世界中是没有人知道怎么让技术领导者如何处理技术债务,因为这只是技术领导者真正理解的东西。把它带到商务桌面可以被视为一种不受欢迎的烦恼。

债务不可量化,不同级别的债务区别很大:

  • 债务为1美元和债务为1亿美元
  • 将于下周到期的债务与10年到期的债务相比
  • 没有利息的债务与具有巨大利益的贷款
  • 感谢亲密的家庭成员与杀人的歹徒

但如果我告诉你的只是“我有债”,那么你无法知道我的未来是多么的黯淡。(banq注:中国人倡导无债一身轻,有债一身重,其实这只是认识问题,躲得过钱债,躲不过情债)。

“技术债务”已成为一个真正无用的术语。

使用用两个术语替换这一个术语
我们需要的是:

  • 建议紧迫性和业务风险
  • 提示可行的决定
  • 进行些量化

一个术语可能无法满足所有这些要求。相反,需要使用两个术语来明显标识好坏两个极端,这样才能可以带来更多的希望,更有正能量。

这就是为什么我建议我们抛弃“技术债务Technical debt”,而是使用技术累赘technical liability和技术资产 technical asset这两个术语。

技术累赘和资产liability/asset 
使用“技术债务Technical debt”一词不会导致对解决办法的进一步讨论,但将其视为技术累赘liability可以做到这一点,它更有效地唤起了非技术人员即将面临风险的景象。
如果你告诉你的首席执行官或产品经理你手上有“技术累赘”,他们就会比刚刚听说过技术债务时更有可能坐起来更加关注,“技术累赘”在让人产生紧迫性和风险方面更好。
相反,通过在我们的对话中只使用“技术债务”一词,我们没有多少方法可以庆祝工程师为创建优雅,可维护的软件所做的出色工作(将累赘变成资产,消除危险报警变成有利),通过在我们的常规词汇表中添加技术资产,我们可以为这种努力重构改变创造更多的机会。

累赘和资产这组词语也是可量化的,例如:
“这个界面的简单性使它成为一项重要的技术资产,但底层的协议握手是如此模糊,以至于它是一项重大的技术累赘......”

我已经从日常对话中消除了“技术债务”,现在我使用技术累赘和技术资产。我希望你会考虑做同样的事情。