境界一:混沌态、浆糊状(小白、新兵)
刚刚毕业、初出茅庐,无任何项目经验。
典型台词:“哇塞,薯熟你居然能写出这样这样酷的程序啊”。
此时身为薯熟的你切不可信以为真,因为任何简单的程序对他们来说……其实都是写不出来的。
技能:helloworld!
经验:0年
角色:新手村游荡者(虽然ID很酷,但改变不了时常被怪虐的事实)
境界二:CODESMELL(IT民工)
对于一些不太残忍的需求,竟已经能够完成了!了不起。技能:面向对象、无脑肉搏
经验:1年
角色:肉盾、坦克、血牛
公司终于可以放心地把一些“没那么关键”的项目扔给他了。
但遗憾的是,公司绝大部分的编码工作其实都“没那么关键”。这很容易理解,因为“管理层“是不写代码的,高手则忙着折腾那几行关键代码。兄弟!剩下的就全靠你啦。
在这个配合良好的团队中,身处一线承担90%的炮火,此时他们最需要的技能是“吸引攻击”……
“你每天编几个小时程序?能不能承受得起?”
“每天77小时,承受得起。”——大家都露出了YD的笑容。
典型台词:“面向过程什么的最讨厌了”。
其他常用语:“瀑布模型什么的最讨厌了”。
高手很快从他们这些代码中闻到了坏味道,至于是“不够面向”或者“不够工程”导致的,还是他们根本就没空清理,这个一个迷。
当然说句公道话,我们知道程序上线后能死撑多久,是和味道无关的。
赶时间随便凑起来的代码基本是稳定的,被自己恶心到于是下决心认真经营的那些代码一般会随机崩溃。显然这只和人品相关。
境界三:SUCKS(TEAMLEADER、架构师、高手)
对于一些不太残忍的需求,竟已经能够华丽丽地完成了!了不起。
对仍在“新手村论坛”上转悠的那些童鞋们,你简直就是神一样的存在。别犹豫了,不是新手的坏家伙毕竟是少数,你的确就是神一样的存在。
“虽然我那几千行没有一行是实际做事情的,但是,架构很重要”你说道,“你懂的”。
次日……
“虽然我那几千行是面向复用和好味道设计的,但是,重构很重要”你说道,“所以我重写了”。
技能:设计模式、软件工程、ppt
经验:2年
角色:TEAMLEADER
典型台词:“我们的目标是,没有一行重复代码”。
正如预想的那样,很不幸,战斗顺利演变为缠绵悱侧的恶斗。大伙抬起头遥望天边如血的残阳,麻的,又要甲板。
是的,项目延期,再次地。
大家已经数不清曾经已经延期了多少项目。但好像,项目保质保量按时完成的情况,就如同新闻联播中的传说,似乎从来没有出现过。
似乎LEADER再次给出了乐观得不行的预期,虽然工期是三个月,但是我们都知道没有三年是搞不掂这事的——但更迫在眉睫的是公司会在三年内上市(虽然公司今年夏天才开张)。
如果不够乐观,这种不给力的感觉,届时老板会毫不犹豫地把这个部门裁掉,然后找一堆更便宜,并且更加乐观得不行的家伙把你们替换掉。
要知道网上无所不能,并且对现实工资非常不满的程序员遍地都是。面对这个残酷的现实,你必须乐观起来才行……
经过数年的延期,终于赶在公司上市前把项目搞定了,谢天谢地。在万分危急的最后一刻,LEADER再次“重构”了整个系统,团队终于逃出生天。
然而在一个阴暗的角落,是主程冷峻的目光,注视着高手们的代码。
“SUCKS!”从他的牙缝中迸出几个字,轻蔑在他的嘴角蔓延。
境界四:MAGIC(主程)技能:精通各种MAGIC和HACK
经验:3年
角色:法师
典型台词:“IE的这个BUG只要用IE另外的一个BUG就可以解决了”。
你曾经不小心看到了主程的源码,这个文件充斥着大量注释为(也是唯一的一种注释)“HACK”的代码,剩下的则全都是MAGIC。从此你就很后悔因为好奇打开了这个文件。
后来主程去了纳尼亚,你的朋友小明就奉命继续维护他的代码,这从一开始就是一个错误,其中一个BUG花了他将近两年的时间——仍然没有搞定。所以后来小明也去了纳尼亚。
幸运的是你接手了小明的工作,你试图说服公司,与其在主程的程序里调试,重新实现一遍要快得多。
公司冷酷的答复是,不行。这是公司宝贵的精神财富,是照耀所有员工不断前进的动力。况且这些代码还HARDCODE了各种8086指令,来加速最新ARM,这让我们的竞争对手不寒而栗。
心灰意冷的你于是决定看破红尘,但是无名禅师的一番话让你幡然醒悟。于是你回到公司按主程的程序原样抄写了一遍——BUG消失了。
境界五:迷技能:UNKNOW
经验:UNKNOW
角色:UNKNOW
传说在每一个挨踢公司里都有一个扫地大妈,会在某天经过你的身边,扫一眼代码淡淡地说“小心,栈溢出了”……
原文链接:http://eishn.blog.163.com/blog/static/652318201102831731444/