background image

程序猿到项目鲸鲤的蜕变(七)

1.两极分化的程序员

【编者按】本文作者小伟哥

 ,分享了网页设计中光影的运用。产品中国摘录如下:

相信在很多人眼里,程序员都是工作一丝不苟、对代码精雕细琢、精益求精的人。瞧,他

们在电脑前面一坐就是大半天,如果不是追求完美之人,谁能这样坐得住板凳

?

可是依我所见,在

“追求完美”这个问题上,程序员其实是严重的两极分化。有一部分程

序员确实对自己的代码要求很高,他们在编程时,非常注意逻辑是否严谨、运行效率高不高、
代码是不是优雅,经常进行代码重构与优化。他们就像有洁癖农村老太,整天扫把不离手,
在哪里看到不顺眼的代码,就要改到哪里,如果让他来维护一个系统,多半最后会让他把
整个系统的代码全部重构或者重写了一遍。他们是真正的完美主义者。

还有一部分人,他们写代码似乎只是为了完成任务。他们对自己负责的功能,缺乏计划

和设计的过程,想到哪里就写到哪里,最后按下

F5,编译通过,欧耶!他们甚至不愿意多

点一下自己创建的按钮,更加不会在一个身份证号码文本框中输入一个电话号码来测试一
下,最关键的是终于可以向经理交差了,至于代码中多少隐藏的问题,以后再说吧。这让我
想起了程序员部落酋长

Joel 所说的,他们编写的程序“看上去像是给狗吃的早餐,只经狗能

吃饱就行了,何必再花钱让食物变得色得味俱全呢

?”我们甚至可以想象一下,他们的电脑

屏幕上是不是铺满了灰尘,键盘缝里是不是塞满了头发和食物碎屑,电脑桌面的图标是不
是如七彩拼图一般,让人眼花缭乱。

后一类程序员,在数量上似乎占据绝对的优势,对于一个不擅于控制项目质量的项目

经理来说,他们的代码最终会成为项目的噩梦。系统一旦投入运行,虫子就会像美国恐怖片
中的外星生物一样,源源不断的从鼻孔、嘴巴和耳朵缝里冒出来。

第二种程序员这种低标准低要求、随随便便的做法,很容易被识别出来是一种不好的倾

向,而完美主义不是这样,因为我们从小就被教导要追求完美,完美主义一般被认为是一
种优秀的品格,是每个人应追求的目标。

然而完美主义虽然听上去不错,却并不适合于项目,因为项目的目标是用最少的成本

来完成项目,让各方满意,而不是制造一个完美无瑕的产品,以证明个人或公司的能力。显
然,完美主义更适合于个人能力的修炼,或者一项没有限期出成果的科学研究,在项目中,
完美主义也是一种错,虽然是一种

“美丽的错误”。

完美主义者和随随便便的人,这两种程序员都不是项目的最佳人选,他们是恰好是两

个相反的极端,如果让他们负责项目,估计就像玩跷跷板一样,要么压到地底下,要么翘
到天空上。但是项目经不起这样的折腾,项目中需要有平衡能力的人,他们很好的把握追求
完美的

“度”,使得软件功能既能满足客户的应用需求,又不至于要花费过多的精力。可惜的

是,这种程序员实在是不多,因为度的把握对程序员而言,确实不是一件容易的事情。