就点这里就点这里,助我成为博客之星,更多好文持续更新(昨天200多个人为我投票,非常感谢)。
最近在阅读温伯格的《程序员开发心理学》,这本44年前的书,其中的很多探索和观点,现在看来依然鲜活而不过时。它开创了以人为本的软件开发研究方法,是软件从业者思想启蒙的巨著,技术人生的必读经典。我在我的订阅号“程序视界”的每周一书栏目里推荐了它,回复10067可以查看。
当我想讨论加班到底有什么用时,《程序开发心理学》中的一些内容如同弹幕一样从眼前浮现,启发了我。
放眼周围,到处都是加班的程序员。我原来在零壹广场时,有时披着月光到路边打车,出租车司机就会和我聊天,说你是华为(华为在我们对面有个研发中心)的吧……其实,我不是的。很多公司都加班,这是软件开发从业者的噩梦。
我应聘时被人问过“你怎么看待加班这件事”这个问题,我面试别人时也问过这个问题。有的人这么回答:“我希望能在正常的工作时间内有效的完成工作,如果情况需要,也可以适度加班”。有的人这么回答:“我就是因为受不了加班才从上家公司离职的”。
这次我不想讨论这些,我只想理一理另外一个问题:加班到底有什么用?
尽管多数程序员对加班深恶痛绝,但加班并不是毫无作用。首先它有很多负面作用:
其次,实际上,不管对个人还是对公司,它也可能多多少少有一些“积极”作用:
从另一个维度来说,加班有没有作用,就看这次加班,这个人是接纳的,还是拒绝的。假如阿猿乐意通过加班来完成某些事情,那自然是有效果的,因为这样的加班有明确的目的性,阿猿是自发地奔向它的目的。此时的加班,不觉其苦,反倒有愉悦之感,只恨时间飞逝不能多做停留。
《程序开发心理学》在“积极性、培训及经验”一章里有这么一段话:
过于努力地去查找错误,与根本不去查找同样坏,甚至还要更坏。实际上,往往要等到程序员已经决定放弃从而不再承受压力之后,许多程序错误才能被排除掉。给程序员施加高压,以期他们能够很快地排除某个程序错误,这种做法已经被证明是最差的策略——尽管截至目前,这仍是最常被采用的策略。
44年过去了,温伯格的话还没过时,我们还天天在用这种“压一压就出活”的策略,想想真是令人唏嘘。
更多精彩文章,参看“漫谈程序员”专栏。
困惑、成长、发展、增值、新知,尽在微信订阅号“程序视界”:
原文:http://blog.csdn.net/foruok/article/details/50258567