社区热议“软件工艺宣言”

  • Mark Levison
  • 李剑

2009 年 3 月 12 日

话题:敏捷架构文化 & 方法

从 InfoQ 中文站发表“你愿意在软件工艺宣言上签名吗?”一文之后,可以见到在宣言页面上来自中国的签名者有了急剧的增长。本文介绍了“软件工匠 Google 讨论组”中的一些社区观点。

Corey Haines 认为,撰写这篇宣言的主要原因是为黑暗的角落带来光亮:

在我看来,最重要的目标是让一些新手,刚入门的人可以看到,认识到一些东西……有那么多人不相信应用我所赞同的技术可以获得成功,还有那么多人没有意识到确实有很多公司专注于工艺原则,着实让我很吃惊。……

所以我们要发出声音,发布一个宣言,为建立这些原则做更多工作,成立学派,我们为那些新手照亮了道路。

Micah Martin 也参与了撰写宣言,因为他想为到底什么是软件工艺带来一些不同的观点。

宣言组的成员回答了两个核心问题:“它怎样帮助解决敷衍了事的代码带来的问题?”,“哪些做法可以让只是粗制滥造代码的开发人员成为工匠?”——区别就在于到底是只想完成工作,还是想把工作做好。

Paul Pagel回答说:“我们希望可以通过设立更高的目标,也提高开发的标准。而且这些原则也可以让那些愿意遵守软件工艺原则的开发者看到未来发展的路线”。

Micah Martin说道:“截至今天,宣言上已经有了 1500 多个签名者。有 1500 个人在跟‘敷衍了事’的代码作战。那些已经投身战斗的人会感到自己并不孤单……这个宣言会温柔的将人从敷衍了事推向工艺。” 

Rik Dryfoos 提到

作为一个工程经理,宣言能够在“工艺价值”——也是我们在公司内宣传推动的价值(和实践)上留名让我很高兴。它可以帮助我们解释清楚我们对想加入团 队的实习生或者有经验的工程师有哪些要求也可以对招聘这样的双向选择过程有帮助。软件工艺宣言创造了一个对话条件,这是我们一直竭力为之奋斗的。

Corey Haines 认为宣言并不是针对“粗制滥造代码的开发人员”

我坚决认为:它不是。而且坦白的讲,它不应该是。

对这种人来讲,我认为外界的动力不会起到任何作用。他们已经建立了自己的工作方法,他们不会去尝试新的东西,何况它还更困难一些,更甚的是,会在他们学习期间对他们的工作产生负面影响……

我个人的观点是,只有两种人是我愿意提供帮助的:一种是有兴趣竭尽全力以毕生精力走好软件开发之路的新人;一种是有经验的人,虽然已经有了固有的开发方式,但是愿意抓住机会,学习如何开发更好的软件。就这两种人。

Mike Bria 在考虑,在某些情况下,我们是不是必须唤醒某些已被埋葬多年的东西。也许是一种欲望,也许是一种乐趣,曾经存在过,但消失已久。他认为我们得做点什么,重燃这种欲望。

Heinrich Breedt 持有怀疑论调,他认为粗制滥造代码的人只是用跟从前一样的方法把事情做完,让他们去做新的东西,例如写测试用例、重构等等工作,对他们而言只是额外的负担。

在私下的交流中,Dave Hoover 表示这个宣言尚未完工。目前为止只是跟敏捷宣言相对地列出了一些价值,还有一些原则正在被添加进去。

最后,Dave Rooney 认为我们是在寻求职业化的过程中给手艺镀金。也许我们应该参考模仿其他行业。Dave 引用了他老丈人——一位飞机维修工程师(AME)——的经验:

我觉得,我们可能跟 AME 这样的行业可能还没那么远的差距。他们对质量的决心跟 Bob Martin 的 Clean Code 手环(Clean Code Wristband)没啥不一样的。如果把我们当做 AME——飞机机械师——可能就能让我们越过把软件开发当做工艺的概念,把它当做普通行业中的一员。

InfoQ 上还有其他相关内容:精益求精——敏捷宣言的第五项价值?Craftsmanship and Ethics(Bob 大叔的演讲)、Fostering Software Craftsmanship in a Corporate Setting(Scott Dillman)的演讲。

查看英文原文Software Craftsmanship Manifesto: A Call to Arms


:在英文站新闻发布之前,中文站已有相关新闻报道,故本文在翻译的基础上做了一些改动。

敏捷架构文化 & 方法