加班是邪恶的

作为程序员,恐怕没有谁没加过班。无论是领导要求、半含威胁,还是员工自愿、半推半就;无论是项目无法完成,后期疯狂加班;还是临时出现了问题,需要突击 解决。加班,似乎和吃喝拉撒一样,乃是IT人员的生活必需品。
难道这不很正常吗?有人会想,搞这一行的,不就是这样吗?
但我还是要说,加 班是邪恶的,这是因为:
加班让我们失去了思考。人和动物的主要区别之一就是人会主动思考,思考生命的价值,思考存在的意义。但是疯狂的加班会让你 逐渐丧失这一能力。每天加班到深夜,回家时已是面色阴暗、浑身疲惫,唯一想的就是赶紧睡觉。此时,你不会思考这样是否合理,加班是否真的管用,更不会思考 是什么导致加班,以及应该如何去改善。时间一久,身上仅存的那点激情消失殆尽,而且你也越来越习惯这样的工作和生活。

很多时候,加班只是 领导手中的工具。有时候项目完不成,通过疯狂的加班来补偿,领导希望藉此感动客户:看,我们都这么努力了。而当初为了合同对客户说了无数遍的“我们能”成 了笑谈。不过这没什么,“老板已泡温泉去,此地空留加班人”。有些领导表现出同甘共苦的样子,深夜12点拍拍你的肩膀说:“早点回去吧”,其实他知道手头 的东西做不完,你是不会回去的。
即使有的时候不忙,真的不太忙,是不是不需要加班了呢?不是的,似乎还有什么“潜规则”在影响着我们,还是等头回 去了再走吧,而头总是比较忙的,下班后晚点回家再正常不过了。假设某天你真的有事儿,按时 回家了,心中却有种忐忑的感觉。这种“潜规则”的 存在,让人觉得相当不爽。其存在的价值,也成为了头证明自己员工工作努力的工具。

除了被动加班,有时候大家会主动加一些班,以赶一下进 度。可是应该想到,这可能在为不合理的需求甚至架构师们错误的设计买单。客户的需求是无止境的,他们希望榨取尽量多的价值。但这就像桌布的四个角,在有限 的时间和资源下,啥功能都想要,牺牲的就是质量。
敏捷强调应发式设计,但绝不意味着没有设计。相反,应该在已知的需求和非功能性需求的前提下,尽 量做好以及系统选型和高层架构,比如开发语言、平台,数据库及其他第三类类库。对那些高度依赖并且不容易替换的类库更要做好研究和选型。因为架构导致的问 题对项目的影响重大,似乎大家只能加班挽回,而其效果也很难说。

加班,不一定能够多创造价值,可能反而会稀释了我们自己的价值。尤其是疯 狂加班的团队,大家加的不是班,是bug。

除了这些,加班也给客户传递了一个危险信号,原来团队还可以加班,那为什么不加些班呢?如果你 的团队正在用迭代开发,团队没日没夜的加班,终于迭代结束时完成了很多故事的开发,比上一个迭代有了大幅提高。那问题时,下一个迭代你怎么办?还需要没日 没夜的加班来维持这个速度吗?

不管怎么样,在资本家面前,程序员是相当弱势的。当程序员以脑力劳动者自居,还在为你无法衡量一个程序员的 工作量而自豪时,资本家们的招式很简单:20个人的活,让8个人干,实在干不完,给你加2人。 所以加班是程序员普遍需要面对的问题。但即使这样,当需要加班时 ,无论主动还是被动,我们应该知道,加班是邪恶的。我们更应该思考:这次加班有意义吗?非得加班才行吗?

猜你喜欢

转载自aqingsao.iteye.com/blog/683337