读书简介--编码整洁之道:专业程序员的行为准则

来源:互联网 发布:smtp pop 端口号 编辑:程序博客网 时间:2024/05/16 05:15
  1986 年1 月28 日东部时间上午11 :39,“挑战者”号航天飞机发射73.124s 后由于右侧固态火箭助推器(SRB)的故障,在48000 英尺的高空被撕成碎片。7 名英勇的航天员,其中包括高中教师克里斯塔· 麦考利芙,离开了我们。麦考利芙的母亲眼看着自己女儿在9 英里的高空离她而去时所流露出来的表情,直到今天仍然让我无法释怀。
  “挑战者”号失事的主因是出了故障的右侧固态火箭助推器中的高热废气泄漏后穿过船体的各段最终飞溅到外部燃料箱上。接下来,主液氢燃料箱的底部爆炸,燃料被点燃后把箱体推入上面的液氧箱体内。与此同时,右侧固态火箭助推器脱离其尾部支撑柱并开始围绕其前方支撑柱旋转,而后它的凸起部分刺穿了液氧箱体。这些异常的力量导致飞行器为了逆气流而旋转需以远超1.5Ma 的速度进行移动,最终空气动力把一切都撕成了碎片。
  在右侧固态火箭助推器的环形段之间有两个橡胶的O 形环密封圈。当飞行器的各段被拴在一起时,O 形环密封圈将被压缩,并形成严密的密封腔,废气无法穿过。
  但是在发射的前一晚,发射台的温度低至17 ℉,比O 形环密封圈的最低临界温度低23 ℉,比之前任何一次的发射的温度低33 ℉。因此,O 形环密封圈变得非常硬以致无法密封住高热气体。在右侧固态火箭助推器被点燃后,高热气体迅速聚积形成压力脉冲。而后,助推器的各段向外膨胀并向O 形环密封圈释放压力。O 形环密封圈的硬度使它们无法保持密封状态,因此部分高热气体从O 形环密封圈的70 rad 内漏出和蒸发。
  莫顿· 塞奥科公司负责设计右侧固态火箭助推器的工程师们其实已经知道O 形环密封圈存在这个问题,7 年前他们就向莫顿· 塞奥科的经理们以及NASA 进行过相关报告。实际上,O 形环密封圈在上次发射中已经因为类似的原因被损坏,尽管还不是灾难性的损毁。结果,最寒冷的发射终于使最严重的伤害成为现实。虽然工程师们已经为此设计了修复方案,但是一直未予实施。
  工程师们曾经怀疑O 形环密封圈会在寒冷中变硬。他们也知道“挑战者”号的发射温度比以往任何一次都低,并且远低于红线。也就是说,工程师们已经知道风险非常高。他们根据自己对这些情况的了解而采取行动——写下提出警报信号的备忘录,向塞奥科和NASA 强烈呼吁不要进行发射。在一个直到发射前数小时还在进行的开了11 个小时的会议上,这些工程师展示了最重要的数据,他们炸开了锅,软磨硬泡,反对发射,但最终经理们忽略了他们的声音。
  当发射时间来临时,一些工程师拒绝观看直播,因为害怕看到发射台上的爆炸。但是当“挑战者”号优美升空时他们开始放松。在飞行器解体前,当看到飞行器速度超过1Ma 时,他们中有人说:躲过一劫。
  尽管有各种抗议和备忘录,以及工程师们的呼吁,经理们仍然相信他们更了解情况。他们认为工程师们反应过度,不相信他们的数据和推论。处在巨大的经济和政治压力之下,经理们进行了发射,期盼一切都会顺利。
  这些经理不只是愚蠢,他们是在犯罪。7 位优秀的先生和女士的生命、一代人期待太空旅行的希望,在那个寒冷的早晨皆因那些经理们把自己的恐惧、希望和直觉凌驾于专家意见之上而破灭。他们做了一个他们并没有权利做的决定。他们篡夺了真正了解状况的人——工程师们的权利。
  但是该如何评价工程师们呢?当然,他们做了应该做的事:通知了经理并为自己的责任而进行了斗争;使用了各种合适的渠道和各种权利协议。他们做了他们所能做的——在特定的系统之下,但最终经理们践踏了这些努力。因此工程师们或许可以免受责难,若无其事地走开。
  但有时候我很想知道,他们之中是否有人会在夜里因为克里斯塔· 麦考利芙母亲的神情而辗转难眠,后悔自己当年没去找过丹· 拉瑟。
  关于本书
  这是一本关于软件专业主义的书,给出了许多务实的建议,并试图回答如下这些问题:
   究竟什么样的人才是软件专家?
   一名专家究竟应该如何处事?
   专家应该如何处理并应对冲突、紧张的日程以及蛮不讲理的经理?
   专家应该在什么时候,用什么样的方式说“不”?
   专家会如何面对压力?
  但是你会发现书里面隐藏在务实建议背后的是一种斗争并取得突破的态度。这是一种诚实,珍视荣誉,自尊并自豪的态度。这是一种愿意接受作为专家和工程师所系重大责任的意愿。这种责任意味着要把活儿“做好”且“干净利落”。它意味着有效沟通,据实评估。它也意味着管理好自己的时间,在风险与回报之间做出审慎的决定。
  但是这种责任之中还包含了一些其他的东西——一个可怕的东西。作为一名工程师,你对你的系统和项目所了解的深度是经理们不可能企及的。与这种了解相对应,你也就有责任在必要时采取行动。
.