加班并没有帮助,尽管在很短的时间内这样做会使团队开发速度加快,但是如果你持续任意一段时间这样做,你将变得异常烦恼。最见效的杀手是干劲,让一位干劲十足的程序员工作七小时比让一位疲惫不堪、心烦意乱的程序员工作十小时效果好的多。即使程序员希望长时间地工作,那也不是一个好主意。长时间工作会使人疲倦,疲倦会使人犯错误,而错误将需要花时间去改正。……如果他们确实没有了活力,则改为晚上让他们去玩计算机游戏。用投石机摧毁城堡比将错误塞入复杂的软件更富有成效。
——《规划极限编程——Planning Extreme Programming》[Kent Beck, Martin Fowler著]
说的真是刻骨铭心入木三分,让我等拍手称快。但我并不绝对反对加班——哲学已经教导我们:这个世界上没有绝对的好与不好。在必要的时候进行短时间的加班,还是可以很好的营造出工作的紧迫感,进而加快项目进度,就好比是一千米赛跑中最后的一百米冲刺一样。但我坚决反对长时间高强度的加班,它就好比一千米赛跑上来就卯足了劲往前冲一样危险,带来的负面影响也绝胜于暂时带来的好处。
但是有些领导似乎对这一点没有认识。我在前公司里就曾在部门大会上,听到一位集团的总裁,口口声声算计如果一个员工每天加一个小时的班,会给公司创造多大的利润,惹得底下嘘声一片。领导的无知,带来的就是无尽的加班。
在2005年我遭遇了平生最漫长的一次加班——绝对超过了半年的时间。在那段日子里,整个人变得憔悴了很多,脾气也变得暴躁,我都怀疑自己开始神经质了。但是这些努力并没有给项目带来起色,可怜的项目还是一拖再拖,让人倍感挫折。可是我们加班了,我们“尽力”了——这种自欺欺人的“阿Q”精神到是使心里好受一些。但是如果过后忘了去寻找被这种苦劳和努力所掩盖的事实真相,那只会陷入无尽的痛苦轮回当中。
长时间加班,对身体是有害的,谁也不想成为第二个“胡同学”。于是加班慢慢的便变成了这个样子——大伙晚饭后回到公司,几魔兽Fans凑在一起,大谈刷副本的经验和采矿秘籍;剩下的上网的上网,灌水的灌水。好一幅轻松自在图。加班?等会再说吧!领导?真正的领导是不加班的;而加班的“领导”何必一个人得罪一伙人呢,何况自己也不想加班。效率?这时候不要谈效率。
长时间加班不仅会让人疲惫不堪,而且会没有精力去深入学习和扩展知识面。在这个知识刷新飞快的软件行业里,这无论对于个人,还是公司都是有害的。在我今年离开原来公司的前几个月里,有一位新来的小伙子被安排开发新的模块,任务非常紧,可是这位小哥好像知识缺失的太严重了,连“比着葫芦画瓢”都做不来,于是每日都可以看见他穿梭于开发大厅。由于挨得比较近,我就经常被拉去救火,开始我还耐心的给他讲解,后来发现等他明白了,我都可以写一本《XXX从入门到精通》了,于是便将电子书、相关文章发给他,希望他能通过大概的学习,搞明白一些基础的问题。哪知他叹道:整天加班,哪有空看啊!我不知道他这样的加班到底能为项目带来什么(倒是为他赢得了一个“优秀新员工”的荣誉)。
长期加班的危害何止这些,正所谓:
加班复加班,
加班何其多!
事事待加班,
项目成蹉跎。