【译文】你丫不是一个软件工程师!

原文:You are NOT a Software Engineer!

  你不是一个软件工程师。你并不盖摩天大楼,你也不建造桥梁。

  你打理花园。

  你是一个软件园丁。

  你会尝试如此细致地规划你的花园吗:在你种下一颗种子之前你会知道每片叶子将要所处的位置?人们会去期待(或者在你的组织里人们保证)关于一年中有多少 花儿会开放的预测吗?你有与之相关联的奖金吗?为一幢摩天大厦所计划的完全合理的事情,当你涉及一座花园时就会显得有些荒唐。

  你也许有关于花园未来一周应该怎样的好主意。你甚至会有关于从现在开始的一年后花园样子的粗略概念。但你不会知道一年后每个枝、叶、茎、花会在哪里,如果你声称知道,你其实只是在猜测。

  如果你在建造桥梁或是摩天大楼,你告诉我在你开始之前,你确切地知道它结束时会是什么样,我会相信你。如果你告诉我你无比精确地知道“完成”要花多久, 我仍然相信你。工程师们就是如此行事的。但关于你的花园如果你对我说同样的话,我会说这是胡说。如果你告诉我你想通过雇佣更多的园丁让花园成长得更快,我 会嘲笑你。

  那么为什么如此之多的花园失败了,而如此之多的摩天大楼成功了呢?除了少数例外,用于建造摩天大楼的技术是相似的,无论你 是 在欧洲或是新加坡。花园并不是那样运作的。每个花园是不同的,因为环境是不同的。甚至相距不远的花园都可能拥有完全不同的土壤。这就是为什么最低的投标人 能够如最高的投标人一样建造出同样的桥梁。但你的公司却不能培育出Google能培育出的同等规模的花园。

  还记得你公司的某人使用敏 捷 园艺方法学不成功,然后四处传播那“马粪”不管用的那次吗?不过“马粪”确实能够让花园成长,只是光有“马粪”不够拯救你的花园。你的花园可能在开始之前 就死了——你的组织气候的牺牲品。你是否曾试图在沙漠中培育雨林?你不能仅仅种下和Facebook,Flickr或是Twitter同样的植物,然后指 望它们生根发芽,而无视你的园丁们的素质或是你的组织的气候。

  和摩天大楼不同,你的花园会长出野草。它永远不会被“完成”。如果你停止为你的花园锄草,野草最终会布满你的花园。很快,重新种植看起来会比修剪更简单。围绕你的花园的环境会持续变化,一个被忽略的花园会变得越来越难以存活。

   在所有的国家,工程师都需要执照才能建造桥梁。园丁则并不具备这种政府监管的资质保证。不幸的是,你的园丁们的资质会比其它因素对花园的成功有更大的影 响——所以你最好擅长慧眼识珠。只有一个富有经验的园丁才能在遇见另一个好园丁时真正懂得他。有些仅仅是管理园艺项目的人不知道他们要找的是什么(尽管他 们可能认识不到这点)。所以如果你不是一个园丁,但需要招募好园丁,快去找一个你信任的有经验的园丁来审查你的候选人。在课堂里你学不到园艺,所以记住聚 焦于你的候选人们曾经栽培过的花园,而不是他们在学校里学过多少园艺理论(几乎无法被应用到你所处的气候之中)

  工程学的比喻曾经大行其道,也许甚至曾经是准确的,但现在仅仅用于帮助非技术背景的人们对于“软件是如何创建的”形成不实际的预期。

  其实,我是一个软件园丁。

  你也是。

 

  按: 软 件开发到底是更工程还是更艺术,这是一个长久存在的话题。某种意义上,园丁是一个很好的比喻。一个匠人,通过很多重复的事务性工作磨练技艺,而一些额外的 审美能使你的工作出类拔萃。很有助于程序员的自我认知。文章涉及了项目计划、项目执行、维护、招聘等方面。可惜的是篇幅不长,没有深入展开。

 

原文链接: http://humblepg.com/chs/articles/you-are-not-a-software-engineer.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值