为什么程序员反对乱改需求

综合整理:程序员的那些事

为什么程序员/设计师怕改需求?网上有类似的段子,比如:「杀一个程序员不需要用枪,改三次需求就可以了。」

有网友在知乎上提问「如何向外行解释产品经理频繁更改需求为什么会令程序员烦恼?」。

某网友的回复:

你去饭店,坐下来。
“服务员,给我来份宫保鸡丁!”
“好嘞!”
——————这叫原始需求

大厨做到一半。
“服务员,菜里不要放肉。”
“不放肉怎么做啊?”
“不放肉就行了,其它按正常程序做,不就行了,难吗?”
“好的您稍等”
——————中途需求变更

厨房:
大厨:“你大爷,我肉都回锅了”
服务员:“顾客非要要求的嘛,你把肉挑出来不就行了吗”
大厨:“行你大爷”
然而还是一点点挑出来了
——————改动太大,部分重构

餐厅:
“服务员,菜里能给我加点腐竹吗?”
“行,这个应该简单。”
——————低估改动成本

厨房:
大厨:“你TMD,不知道腐竹得提前泡水?炒到一半才说?跟他说,想吃腐竹就多等半天”
服务员:“啊你怎么不早说?”
大厨:“早说你MLGB我怎么知道他要往宫保鸡丁里放腐竹”
然而还是去泡腐竹了
——————新需求引入了新研发成本

餐厅:
“服务员,还是把肉加回去吧”
“您不是刚说不要肉吗”
“现在又想要了”
“…好的您稍等”
——————某一功能点摇摆不定

厨房:
大厨:“日你啊,菜都炒过火了你让我放肉?还好肉我没扔”
服务员:“客户提的要求你日我干嘛?”
大厨:“你就不能拒绝他啊?啊?”
服务员:“人家是客户嘛。”
——————甲方是大爷

餐厅:
“服务员!服务员!”
“来了来了,你好?”
“怎么这么半天啊?”
“稍等我给您催催啊”
——————改动开始导致工期延误

厨房:
大厨:“催你M催,腐竹没泡好,我还得重新放油,他要想吃老的也行,没法保质保量”
——————开发者请求重新排期

餐厅:
服务员:“抱歉,加腐竹的话得多等半天,您别着急哈”
“我靠要等那么久?我现在就要吃,你们能快点吗?”
“行…您稍等”
——————甲方催活

厨房:
大厨:“我日他仙人板板,中途改需求又想按期交付,逗我玩呢?”
服务员:“那我问问,要不让他们换个菜?”
大厨:“再换我就死了”
——————开发者开始和中间人pk

餐厅:
“服务员,这样吧,腐竹不要了,换成蒜毫能快点吗?对了,顺便加点番茄酱”
——————因工期过长再次改动需求

厨房:
大厨:“我日了狗啊,你TM不知道蒜毫也得焯水啊?还有你让我怎么往热菜里放番茄酱啊??”
服务员:“焯水也比等腐竹强吧,番茄酱往里一倒不就行了吗?很难吗?”
大厨:“草。腐竹我还得接着泡,万一这孙子一会又想要了呢。”
——————频繁改动开始导致大量冗余

餐厅:
“服务员,菜里加茄丁了没有?我去其它饭店吃可都是有茄丁的”
“好好好您稍等您稍等”
——————奇葩需求

厨房:
大厨:“我去他二大爷他吃的是斯里兰卡三流技校炒的宫保鸡丁吗?宫保鸡丁里放茄丁??”
服务员:“茄丁抄好了扔里边不就行了吗?”
大厨:“那TM还能叫菜吗?哪个系的?”
服务员:“客户要,你就给炒了吧。”
大厨:“MB你顺道问问他腐竹还要不要,我这盆腐竹还占着地方呢不要我就扔了”
——————奇葩你也得做

餐厅:
“服务员,还要多久能好啊”
“很快,很快…”
“再给我来杯西瓜汁。”
“…好”
“我再等10分钟,还不好我就走了,反正还没给钱。”
“很快,很快…”
——————黑暗前的最后黎明

10分钟后
“咦,我上次吃的不是这个味啊?”
从厨房杀出来的大厨:“我TM就日了你的狗…”
——————最终决战

——————
你=客户
服务员=客户经理+产品经理
大厨=码农
请自行转换…
——————
注:以上场景已极度夸张,实际生产生活中码农和PM是和睦友好的相亲相爱的一家人
——————
注:对于做2C产品的公司,你=公司大boss

写给刚入行的程序员

源地址: 顶级程序员

1.作为前端开发者,使用双显示器能大幅提高开发效率。

2.学编程最好的语言不是PHP,是English。

3.自己做的东西交付之前先测试一遍。

4.问别人之前最好先自己百度,google一下,以免问出太低级的问题。

5.把觉得不靠谱的需求放到最后做,很可能到时候需求就变了,或者取消了。

6.读好书,垃圾书会浪费你时间。

7.不要炫技,面向人脑编程更便于维护。

8.没事别重复造轮子,你造的轮子大多数时候只有你觉得好用。接手你的轮子的人会在背后骂你上百遍。

9.不要先写框架再写实现。最好反过来,从原型中提炼框架。

10.新技术一定不要找书,书一旦印出来就过时了。

11.请勿久坐,多喝水,尤其是遇到很久都解决不了的问题的时候,多走动走动。

12.考虑可维护性比考虑性能更重要。

13.越难解决的bug往往犯的错误越低级。

14.比起鼓励师,不如给程序员找一个靠谱的产品经理。

15.熬夜低效率写代码,不如好好睡觉。

16.你遇到的问题,大多数人都遇到过,并且网上都有完整的解决方案,你找不到,只是你懒得去找。

17.多沟通,不少加班工作是由于沟通少造成的。

18.普通程序员+google=超级程序员。实在不行,百度也可以,学会利用搜索引擎来辅助自己解决问题。

19.早点找女朋友,生活作息会更健康。你懂的!

20.永远别小看程序媛。即使是青铜,说不定背后有个王者在帮她。

当你不再自我设限时,全世界都会为你让路

你不是输给命运,而是输给自己。

——江晚舟

1.你不试试怎么知道你做不到

我是一个从小就很胆怯的人,总觉得自己什么都做不到。

记得大学班里组织跳大绳接力比赛,我下意识的就是逃避,因为从小就觉得跳大绳是一件极其危险的事,绳子那么粗,甩到人得多疼啊,无奈避无可避,只能硬着头皮上了。

真的是将近10次都是半途而废,真的害怕!后来在同学的鼓励下成功跳了一个,那种惧怕的心理就像太阳出来后的露珠,完全消散了,我笑着说:“嗯,感觉挺好玩的。”

面对害怕的事物,心里总是给自己设限——做不到的,但面对并战胜后才发现,真的没有想的那么难。

所以外教课上被问到,“你怎样处理自己十分害怕的事物?”

“Face it.(面对它)”,我毫不犹豫的回答。

人这一辈子,老来总有遗憾,没有跟爱的人表白,没有做自己喜欢做的事,去自己喜欢的地方,甚至连骂一句讨厌的人都没做到……

其实,说白了,就是自我设限,不愿意相信自己了。

然而,害怕是本能,失败受挫也是常态,但若因此就告诉自己“你不行,你做不到的”,这跟胆小鬼又有什么区别?

自我设限,只会让自己错过人生的更多种可能。

当你不再自我设限时,全世界都会为你让路

2.年龄设限,丢掉的是你的运气

中国人自古以来提倡,什么年龄做什么事,所以若是年龄太小,或是年龄过大,都变成一种束缚,觉得不能做不符合年龄的事。

记得奶奶讲过这样一个故事:

月娘是一个非常不幸的人。父母在她年幼的时候就把她抛弃了,后来为了活下去找了一个人嫁了,可那人却生性暴戾,没让月娘过过一天好日子,后来那人死于意外,对月娘来说虽是解脱,可也意味着她要自己拉扯3个孩子长大。

很多人劝月娘改嫁,可月娘说:“都这么大了,还想这些做什么,平平安安的我就谢天谢地了。”

在那个时代,很多人受着封建思想的荼毒,包括到现在,这也是很多人告诫自己的理由。

“你还小,什么都不懂”“哎,我都这么大了,还能干什么”……错误的年龄观,耽误了一生的好运。

其实,年龄虽然有所影响,但绝对不能限制任何事。

摩西奶奶是闻名全球的风俗画画家,可知道她的人都知道,她是77岁才开始作画的,正如她所说“任何年龄的人都可以作画。”

不管幸与不幸,都不要为自己的人生设限,以免阻挡了生命的阳光。

不被自己年龄限制的人,生命的阳光总是热烈又充沛。

当你不再自我设限时,全世界都会为你让路

3.感情设限,没有人会喜欢你退缩逃避

“我很喜欢他,但是我觉得自己配不上他”,表妹丹丹和我谈心时说。

“他长得帅家里也有钱,又有很多人喜欢;而我性格长相都很普通,还是农村户口,真的站在他面前都觉得很自卑。”

我后来推荐她去看一本小说《我不喜欢这个世界我只喜欢你》,真人真事境况相同,但在这个故事里,我只看到了幸福和甜蜜。

现在的人谈起爱情,下意识的想到婚姻、房子、长相、家室、工作,然后有了诸多人眼里的不配。

“那个人长得丑,配不上某某女明星”

“那个人灰姑娘,配不上高富帅的他”

“王祖蓝长得矮,配不上他老婆”

……

可这样的不配,未免太过肤浅和幼稚,真正成熟的感情,是寻求精神上的契合,而非物质外表上的相配。

就像《恶作剧之吻》中的袁湘琴和江直树,很多人包括他们自己都觉得两人不配,甚至一度虐恋,但还不是以幸福收场。

其实啊,感情里唯一的不配,是“他不喜欢你!”

面对喜欢的人却因“不配”而选择退缩,不过是把感情设限了。但感情,无非就是你情我愿,哪有那么多条条框框?

当你不再自我设限时,全世界都会为你让路

4.能力设限,不敢想不敢试等于失败

其实,最常见的还是我们对自己的能力设限。

就像蒂娜·齐莉格说的:

我们从职业、收入、居所、开的车、教育,甚至是占卜等多个方面自我设限。所有限制都把我们禁锢在某种固有假定中,这些假定有自己是谁,我能干什么。
因为自己是一个普通人,能力普通,所以从来不敢尝试超出自己认定的能力以外的事,更不敢奢望过不平凡的生活。

可是这世界上这么多的成功人士,又有多少是天生我才?多少是靠着不对自己设限拥有了不凡的人生?

提到蔡依林大家并不陌生,不是天才,却靠着自己的努力达到了和天才一样的高度。

从一个四肢不协调的舞蹈盲,到家喻户晓的亚洲舞娘。从瑜伽到艺术体操,再到现代舞。她在刷新着自己的极限,也在刷新着人们的认知。

她跟自己说“努力就一定会成功,如果我失败了,那一定是我不够努力。”

而我们更喜欢说的是“很多事情努力也没有办法。”所以依旧平庸。

法齐娅·库菲在《我不要你死于一事无成》中说:

把目标放高,你永远无法估计一个人的爆发力能达到什么程度,如果一开始就已经设限,那么,这一辈子,你很可能就没有了爆发的欲望,何来高度深度宽度可言?
就好比考试时我们给自己设立目标是60分,那你要超过及格分太难了,但目标若是90分,及格自然不在话下。

很多时候,我们人生的失败,都源于自我设限。

当你不再自我设限时,全世界都会为你让路

知乎上有一个高赞问答:

问:“你有什么相见恨晚的知识想推荐给年轻人?”

答:“做你害怕做的事情。然后你会发现,不过如此。”

正如尼克·胡哲在《人生不设限》中说的:

人生最可悲的并非失去四肢,而是没有生存希望及目标!人们经常埋怨什么也做不来,但如果我们只记挂着想拥有或欠缺的东西,而不去珍惜所拥有的,那根本改变不了问题。真正改变命运的,并不是我们的机遇,而是我们的态度。
现实生活中,很多人在遇到无能为力或者稍有难度的事情,就会对自己说,你就这点能力,不要异想天开了,于是默默无闻了一辈子。

这就像跳蚤变成“走蚤”一样:并不是失去了跳跃的能力,而是一次次受挫后习惯了麻木了。入口的玻璃罩已经不在了,但是却罩在了它的心上,跳蚤没有了“再跳一次”的勇气。

而我们有多少人,在自己的心上罩了一个无形的玻璃罩,一次次的跟自己说不可能?

自我设限的真相就是:一次失败,终生认输。

你不是输给命运,而是输给自己。

越贫困,越无力——欢迎来到地狱十七层

  穷人为什么穷?无论中国美国,主流对此都有种没明说但心照不宣的观点:因为他们懒、酗酒、赌博……曾有条被疯转微博,一位妈妈卖盗版光盘被城管追赶跳入水中,当时,一位女博士点评说北京好月嫂都月入过万了,何必要选这么苦情的生活方式?此微博后被证实为谣言,但抱小孩卖毛片的中年女性的确曾是北京一景。中产阶级的眼界不是穷人的眼界,正如本书作者也苦苦思索,劳工为何不要求加薪,或寻找更高薪工作,甚至组织工会,维护自身权益?答案是,越贫困,越无力。

  畅销书女作家芭芭拉•艾伦瑞克进入美国底层,体验在时薪6~8美元下,辛勤工作是否能生活下去,她的答案是:不能。除非你跟别人合租房子,或者打两份工。

  她在三个城市当过餐厅服务员、旅馆服务员、清洁女工、看护护理及沃尔玛的售货员,她努力工作,也努力尝试收支平衡,为此她曾勇猛打两份工,一周工作七天,每周还能在打工的看护之家免费吃两三餐,这些都帮助了她。但到旅游旺季,房租将上涨三倍,身为女佣的她,只能再次破产。

  作者有穷人没有的优势:在前面的几十年,她有高于一般水平的医疗照顾、良好饮食、她常年练举重,身体“是不寻常的结实”。并且,就这个实验来说,她作弊了,她给自己租车,用信用卡付费;每到一个城市,她备有一千多美元的起头基金;她开了外挂,却仍然没有打赢。

  我一度觉得这本《我在底层的生活——当专栏作家化身女服务员》是来黑美国的,因为美剧、好莱坞电影不曾说过,还有这么个美国存在:低薪白人劳工,三四人挤在一个小房间里生活;怀孕的清洁工摔伤也不敢请假,一天没薪水,第二天就没钱买杂物;沃尔玛的员工付不起房租,住在收容所;背着十几磅重的吸尘器吸尘、跪在地上擦地,女佣们话题热点是哪个牌子的止痛药最好用;没有健康保险,因为太贵,这意味如果生病,你要比别人多花钱。

  女招待考虑搬入每晚40~60美金的汽车旅馆(她每天才挣四十多美金),作家惊讶问她怎么想的,同事像看笨蛋一样看着女作家:我上哪儿弄一个月的租金跟押金去租公寓?而女作家,之所以能租到月租500的公寓,是拜她从自己的现实世界带来的1000美金付押金及头一月租金所赐。

  不断上涨的房租是穷人的噩梦,作者发现,穷人越来越多住在汽车旅馆。后者可以按天结账,犹如鸦片,诱惑现金紧张的穷人陷进去,微薄的积蓄被烧光,更加不可能有钱租公寓。作者发现有两个男人轮流睡一张床,一个人睡觉时另一个在车上打盹。而我忽然明白卡佛小说里的那些穷人,那些卖掉农庄,揣着全部积蓄进城找工作的一家人,在一间汽车旅馆里住下去,某一天又一声不吭地走掉——他们就是汽车旅馆鸦片的受害者,他们不是走掉,是掉入地狱的更下一层。

  作者认为,穷人破产,因为薪水太低,而房租太贵。这一点中国读者想必也深有共鸣。当房租犹如奥运会田径赛道上的博尔特般一路狂奔,穷人只能不停搬家,搬入一间又一间不带家具的公寓,锅碗瓢勺家具又是一笔钱;或入住汽车旅馆胶囊公寓,只剩一张床那么大小的房间,你证悟到睡觉和死亡何其相似。而无法做饭的后果,是你要花更多钱在吃饭上。最终,她,还有我们,均不难发现一条荒谬定律,如果你穷,你就得比不穷的人花更多的钱,才能活下去。这不是美剧中的美国,但它并不陌生。全世界的金钱流动法则相同:钱生育钱,贫困生育贫困。

  作者有强烈的政治立场,而她真实凶残的打工经历平衡了她的倾向。说到底这并不是一本坐在空调房间凭政治理念写出来的书,她一天工作九小时,住在没有纱窗空调电扇的旅馆,因为锁不上门,不得不合衣而睡。而她的工作,是在35度高温下打扫“有五套浴厕的房子”,撅起屁股,跪于大理石地板,用抹布擦过每一寸地面,擦干净整排玻璃门上的每一个指纹,而且遵循女仆美德,不在主人家喝水;是每周六日服侍近四十名阿兹海默症老年病人吃三餐、清理餐具、擦桌吸地,“我只能全力跟上洗碗机吐出盘子和脏盘子涌进来的速度”;午饭是高速路上停车上厕所时的五分钟;上厕所要打卡。即使这样,仍有几次,她不得不求助于慈善机构,后者提供的免费食物,对没有冰箱的穷人来说并不实用;而一个“平价”通铺床位,每晚也要19美元,慈善机构的小姐建议她“搬进收容所”,以便存到足够的钱交第一个月的房租和押金。

  她将自己奉献为小白鼠,而我们得以观察,贫穷是如何侵蚀一个人的精神。

  作者自己能从时薪5.15美元的餐厅跳槽至时薪7.5,因为她有车,可四处应聘,上班范围更有弹性。她的同事若换工作,交通是大问题,甚至需更换住处。穷人比富人更保守,更不愿意改变,就像奴隶比奴隶主更保守。物质上的窘迫,使他们承受不起改变,冒不起一周没工作的风险。那意味着他们会挨饿,从现在的房子被赶出去,掉到地狱更可怕的下一层。

  但作者在找工作时呈现的状态,她的精神活力、她的勇气才是她和她的同事们之最大区别。同样被羞辱及盘剥,她跃跃欲试组织工会,她的同事却只希望偶尔请一天假,第二天还能有钱买点杂货。这一部分也可用来解释教育的重要所在,作者隐瞒了博士学位,却拿不走自己的思维。精神的贫困是穷人解脱贫穷的最大障碍。

  两个多月的底层生活后,作者的背伤复发、全身起了疱疹,并且,她身为“民主社会主义者”“女性主义者”,对底层人民抱有的博爱之情,慢慢变淡,代之以麻木,甚至仇恨。一个身高不到1米4的女售货员跟她起了纠纷,她看着后者踩着梯子才够得着高处衣服,一股恶意涌上,“希望能看到她啪地一声摔到地上”;而残疾员工忧伤地坐在轮椅里,她看到第一感觉是“至少你还坐着。”——她忽然意识到,如果自己的父亲没有脱离矿工身份,如果去掉自己的教育程度,也许自己就是现在这样:苛刻、狡猾、满怀怨恨。她没有强调,但读者可以自行总结:穷人仇恨穷人。这不是什么新鲜事,却让人难以面对——穷人不都是善良的么?法国作家塞利纳在他1935年的《长夜行》里写道:“我们之间有五个法郎的隔阂,就足以产生恨,希望他们统统死光。”“五个法郎”,可以换成小升初的一个名额、一个工作机会,甚至仅仅是高峰期公车上的一个座位、它仍然“足以产生恨,希望他们统统死光”。不信你看北京上海贴吧里,那些铺天盖地的“外地人滚出去”。

  贫穷是一种专制,它培养自己的奴隶。当你习惯于被剥夺自尊,习惯于被当做一个小偷/懒虫/酒鬼对待,当你常年生活在社会边缘、你存在的意义被抹去,宛如你根本不存在。而打开电视——无论中美——都是老板,男女白领,即使是喊着奋斗的北漂,住的也是你这辈子都住不上的三室两厅,它会让你以为“只有我自己才是不正常的”。精神上的专制就此完成。穷奴大抵上有两种,一种借仇恨别人获得自己高人一等的存在价值感,一种则接受自己是最弱的,就像那些被迫在自己的社会体系中落入屈从位置的沮丧的猴子,它们变得焦虑而退缩,不再挣扎,甚至对自卫也毫无兴趣。

  借助铁丝和剪刀,能培养出自然界不存在的侏儒松,定型成功,即使松开捆扎铁丝,那些松树也固定在扭曲的姿态。同样,精神上的专制,令你在内心相信自己就是个侏儒。芭芭拉•艾伦瑞克细腻雄辩地写出精神的毁灭之路,我却在其中看到熟悉的人脸,作为经历了大饥荒的幸存者的后代,她绘出的精神贫穷者的肖像我并不陌生。那些脸在我们周围漫游,如恒河河沙,又似幽灵。

  怎么办?也许没有一个药方可以取消贫困,但至少下次看到一个走投无路的穷人,在指责他懒惰、酗酒之前还可以多想一秒钟;在大吼“外地人滚出去”之前,还可以思考一下这仇恨从何而来;即使我们的初始值是一棵被剪成侏儒的盆景,也可以在松绑后尝试站起来,笔直地站成一棵树。

  开外挂的女作家,无论如何也做不到收支平衡。但实在要流浪街头时,她可以挖出自己的信用卡,大吃一顿。可是现实中真正的穷人,她的同事们呢?

  我想起《没有人给他写信的上校》的最后一段:绝望的妻子揪着上校的领子,问这些天我们吃什么?

  “上校活了七十五岁——用他一生中分分秒秒积累起来的七十五岁——才到了这个关头。他自觉心灵清透,坦坦荡荡,什么事也难不住他。他说:

‘吃屎’。”