编程也怕猪一样的队友
| 2016-01-16 15:36 评论: 3 收藏: 1
有个人曾经问拿破仑是如何给士兵指派任务的。拿破仑回答说这很简单:士兵要么聪明要么愚蠢,要么懒惰要么精力充沛。
- 聪明且精力充沛的我让他当战地指挥官。他知道该做什么而且能召集队伍去做。
- 聪明且懒惰的我让他当将军。他也知道该做什么,但他不会浪费精力去做不必要做的事情。
- 愚蠢且懒惰的我让他当步兵。
但那些愚蠢且精力充沛的呢?“他们”,拿破仑回答说,“我全给毙了。”
每当有人因为“很能干”而受到赞扬时我就会想起拿破仑的这个笑话。这样的人我们是该让他当指挥官呢?还是毙掉?
Joel Spolsky 说,理想的程序员应该是聪明且能干的。但怎么看待那些愚蠢且能干的人呢?
1992年当 罗斯·佩罗 竞选总统时,他的支持者惊呼“他很能干!”于是我问“他会做出什么你们想要看到的事情?” 我不记得得到过答案。他将要做什么看起来并不重要。(我并不是说 Perot 的竞选纲领很愚蠢。我不想讨论这个。我只是想说,即使很愚蠢,有些人也不知道,不关心。)
有一次,我听到有个人被赞扬为一个好老师。并不是知识渊博,只是个好老师。我不赞成一个无知的人可以被称为好老师,难道是说他在教授他的无知时很有效率吗?这不是一件很糟糕的事情吗?不,重要的是他是个好老师。
计算机程序由代码行组成,代码由字符组成。所以程序员应该擅长打字符。当然,更重要的是,他们要打出正确的,可维护的,能完成有价值的任务的程序码。
为什么有人会在不知道一个总统候选人的政治立场的情况下支持他?为什么会有人愿意给他们的孩子找个无知但有效率的老师?为什么有人愿意找一个精通编写烂程序的程序员?
我想没有人愿意看到这种事情,尽管有些人很短视。人们喜欢的有魅力的总统,好老师,高效的程序员。但人们很容易把这种事情简单化,只关注某些基本的品质,忽略了事情的整体情况。
领导要能干出点事情。老师要能教授。程序员要能写代码。这都是些基本必要的技能,但还不够。
在关于“打字速度是个事么?”方面有一些活跃的讨论,我认为讨论如此活跃的原因部分是因为它触及到了本文说的这个问题,基础的技巧与宏大的目标。参与讨论的人包括从打字员到软件工程师等不同的层面。有些人主张自上而下,而另外一些则主张自下而上。我发现讨论的内容要比文章本身更有趣。
- 刘翔宇 [Chrome 48.0|Windows 7] 2016-01-23 21:43 1 赞 回复
- 不是很懂_(:зゝ∠)_
- shjhcx [Firefox 43.0|Windows 7] 2016-01-21 10:29 1 赞 回复
- 路过,览过