程序员的一周通常是这样度过的:
1、周一
早上 9 点:“这周我们有什么计划?”
老板:“给你分配了新任务,需要开发一个新模块,给你安排了 5 天时间。” 我:“没问题,小意思,周三前就能搞定。”
上午 10 点:“来设计一下吧,纸和笔伺候,画三个框框,用箭头连起来,这就是我们的老套路。对,我就是那个软件架构师!”
上午 11 点:“开始敲代码!”
下午 6 点:“代码搞定了,本想试试能不能跑起来,但一天的工作结束了,真遗憾。”
2、周二
早上 9 点:“我可是个高手,不能带着不完美的变量名发布代码。昨天太急了,今天得改改。比如这个 numberOfUsers,太难听了,改成 userCount 吧。这才像个高级程序员的命名方式!”
下午 5 点:“去参加进度会议。”
老板:“进度如何?”
你:“差不多了,再给我几个小时就能打磨好。”
3、周三
早上 9 点:“差点忘了还得部署这个模块!先从别的模块复制粘贴构建脚本。”
上午 11 点:“这些脚本不行,试试别的模块的。”
下午 1 点:“还是不行,再试试别的。”
下午 3 点:“天哪,公司里就没有一个能用的构建脚本吗?”
下午 5 点半:“这个好像行了。现在装好了,我是现在试试运行,还是先回家?嗯,只剩半小时了,还是等等吧。”
4、周四
早上 9 点:“来试试运行一下!”
上午 10 点:“什么情况!?怎么不工作!不过没什么解决不了的。”
中午 12 点:“完蛋~~~还没解决”
下午 3 点:“完蛋~~~好像还有点小问题”
下午 6 点:“测试通过了,还有一天时间!明天早上发布。”
5、周五
早上 9 点:“那个,我最后测试下……”
上午10点:“完蛋~~~有点问题,这个情况不符合我的架构!”
上午 11 点:“重新设计!抓紧时间!”
上午 11 点半:“开始编码!”
中午 12 点:“完蛋~~~好像有点来不及”
下午 1 点:“第一个功能的测试通过了”
下午 2 点:“第二个模块的测试通过了”
下午 3 点:“完全跑通了,测试通过了。但这是什么情况!?”
下午 4 点:“电话响了,我得接一下。”
老板:“生产环境出现了紧急问题,大家都很忙,你赶紧处理一下。”
你:“MD,我也很忙,真是的!”
下午 5 点:“感觉时间有点来不及”
下午 6 点:“好了,生产的问题解决了,继续工作!”
晚上 7 点:“我重新测试一遍。好像还有点小问题……”
晚上 8 点:“我重新测试一遍。好像还有点小问题……”
晚上9点:“重新检查下代码!!!”
晚上10点:“我重新测试一遍。好像还有点小问题……”
晚上11点:“我重新测试一遍。好像还有点小问题……”
午夜12点:“我重新测试一遍。好像还有点小问题……”
6、周六(还是周五?)
凌晨 3 点:“耶!终于搞定了!呃……大家呢?人都去哪儿了?”
事实证明凌晨三点对程序员是个吉利的时间,不管编程效率,测试效率都很高,项目往往会在这个时间完成。
科比:你见过洛杉矶凌晨四点的太阳吗?
我:我测试过凌晨三点的代码!
所以,凌晨三点你们在干吗?