2-工程师的态度·程序员应该了解的基本原则

102 阅读3分钟

Chapter 2 工程师的态度

在每一类工程领域里,每一位工程师都应该有的工作态度是:

我可以用正确的方式解决这个问题。

无论这个问题是什么,解决问题的正确方式总是存在的。唯一不这么做的正当理由只可能是缺少资源。无论如何,你应该始终认为正确的方式是存在的,并且你也有能力用该方式应对这个问题。

“正确方式”通常指“在考虑到未来所有可能发生的合理情况的前提下给出的解决方案,这个前提甚至包括那些未知和难以想象的情况”。

如果一座桥不需要人们持续地投入精力进行养护,但它却可以轻松应对正常的自然环境条件,或者是正常的运输压力,那么就可以说这座桥是以“正确方式”建造的。

如果说软件代码在保持简约的同时,也为将来可能出现的合理功能变更需求提供了灵活性,那么就可以说它是“正确方式”设计的。

你可以找到很多不采用正确方式解决问题的荒唐理由:

  • 我不知道正确的方式是什么通常这意味这你需要学习更多的知识,或者加深它们的理解,才能发掘出正确的方式是什么。当我遇到这种情况时,我会暂停思考这个问题,而恰恰正当我起身或者第二天回来继续工作时,答案就自然而然的出现了。在还没弄清楚正确方式是什么之前,我会尽量不要妥协的用非正确方式来解决问题。
  • 团队无法对什么是正确方式达成一致有时团队成员们会对什么是“正确方式”进行争论,在争论的过程中主题会逐渐偏离初衷,变得让人摸不着头脑。人们并不擅长集体决策。我们也都知道软件不是依赖某个群体的决策而设计出来的,我怀疑“依靠群体决策进行设计”在其他工程领域的效果也不会很好。 这里的解决方案是,把问题分配给一位对你们的工作领域有所了解,同时富有经验并值得信赖的工程师,也许在仔细分析了现有分歧并收集了相关信息之后,他可以依据当下的有效工作流程标准,独立地决定正确方式是什么。
  • 因为现在我太懒/累/饥饿/无法集中精力,导致我无法用正确的方式实现它这时常发生在我们身上。可能现在时间已经来到了凌晨1点,你已经在项目上马不停蹄的工作了15小时,你只是希望这该死的代码能够正常运转起来!尽管如此,还是休息一会儿再继续吧。世界末日并没有来临,问题终究会得到解决。这也算是工作内容的一部分———劝告自己“这需要用正确方式实现,而现在实现它的正确方式,就是休息一会儿稍后再继续”。这其实也是在正确地履行你的工作职责,在将项目引向成功。

最重要的是,你需要坚定不移地相信自己有能力以正确方式解决问题。 ——Max