书评:《用火解决问题:管理老化的计算机系统(并为现代系统保驾护航)》Kill It with Fire: Manage Aging Computer Systems (and Future Proof Modern Ones)
作者:BOOK REVIEW & TOM JONES
FreeBSD 是款老系统。 等一下!在你开始寻找东西扔过去之前,值得坐下来思考一下我们使用这个术语的方式。老系统是我们被迫使用的东西,很多我们不得不依赖的东西都很老旧、嘎吱作响,曾经有过更美好的时光。老带有被忽视的含义。老系统使用起来令人痛苦。我知道我有偏见,但我不认为 FreeBSD 使用起来痛苦。但是它的确有着深厚的老背景。
FreeBSD 很快就要迎来作为一个成熟开源项目的三十周年。我们的根源可以追溯得更远,UNIX 已经五十与年,而 BSD UNIX 也将达到这个里程碑。随便扔一块石头(不过别扔到我身上!),你就会碰到一个工具/子系统,感觉它像是从过去被拖出来的。FreeBSD 的大部分内容就像鲨鱼/鳄鱼,早已被完善,且大多被进化遗忘。另一方面,再随便扔一块石头(还是别扔我身上!),你会碰到 FreeBSD 中的某个东西,它异常现代且前沿。虽然这似乎与我的初衷相悖,但我仍然认为 FreeBSD 属于老系统的范畴。
Marianne Bellotti 的《Kill it with Fire (KIWF)》 和我对 FreeBSD 的看法相同(或者说,它帮助我形成了这样的观点)。书中首先提出了一个关于老系统的重要观点:它们几乎可以说是非常成功的。许多软件项目甚至连看见曙光的机会都没有,而遗留项目不仅能够持续生产,而且往往成为更大系统的核心组成部分。如此成功,以至于它们的年龄反而使它们成为一种负担。
FreeBSD 无疑是一个巨大的成功——我们可能没有征服整个世界,但我们依然在现代操作系统的讨论中占有一席之地。对许多使用我们平台的工程师来说,它是他们取得巨大成功的关键组件。但你真的无法反驳 FreeBSD 是一个老系统,它以两种方式体现了遗留的特征。首先,它的某些组件正在老化,略显陈旧。其次,FreeBSD 几乎太容易维护了,它成为了其他系统中的一个遗留组件。
《KIWF》并不旨在成为一本技术手册,帮助你维护遗留代码库。如果你需要这方面的指导,它会推荐你阅读 Michael C. Feathers 的《修改代码的艺术》。相反,KIWF 讨论的是将系统视为老系统的政治和社会机制,以及我们在组织内部需要采取的措施,以便从这些系统中转型或解决它们带来的主要障碍。
许多使用 FreeBSD 作为组件的组织将我们喜爱的操作系统视为遗留组件。招聘工程师来处理 FreeBSD 系统变得格外困难——与 Linux/Windows 平台相比,人才供应要小得多。FreeBSD 还面临营销问题。虽然我们平台的工程师对 FreeBSD 充满热爱,但几乎没有初创公司将 FreeBSD 作为其核心卖点。两者都是 FreeBSD 持续使用的政治问题。我们都知道,替换一个痛苦的产品,向别人推销一个新想法很容易,因为新事物没有限制,而我们对日常使用的工具的痛苦心知肚明。
KIWF 主张理解一个系统为何能够成功到被视为老系统,并提供一些工具,帮助设计新的系统或重构现有组件以进行改进。KIWF 的副标题是:“管理老化的计算机系统(并为现代系统保驾护航)”。书中的教训对于帮助您构建系统保护措施具有很大价值,从而确保系统能够更容易成功,并在长期内更易于管理。
KIWF 不是一本教程。虽然介绍部分承诺提供练习,但这些练习有时较为简略。它们在帮助你思考现有系统以及理解如何管理现代化项目方面起到了很好的启发作用。这里的建议能帮助填补管理和维护现有系统的团队之间的空白。书中提供了关于如何分解问题、推进现代化项目并在替换或更新组件时保持团队动力的建议。
如果你需要为继续使用 FreeBSD 或其他类似组件辩护,那么 KIWF 是本值得一读的好书。Marianne 提出的度量方法可以帮助获取有关故障率和使用情况的量化数据,这是了解事物如何使用、评估是否迁移到其他平台的好工具。我从这本书中获益匪浅,它帮助我更好地理解 FreeBSD 以及我们操作系统在实际环境中的使用方式。如果 FreeBSD 是你环境的一部分,或者你计划从其他系统迁移过来,那么《Kill it With Fire》是一本简短的读物,能帮助你获取更有价值的数据。
TOM JONES 是 FreeBSD 开发者,也是 BSDNow Podcast 的联合主持人,他希望基于 FreeBSD 的项目能获得应有的关注。他住在 苏格兰东北部,并提供 FreeBSD 咨询服务。
最后更新于
这有帮助吗?