如果用常人的眼光来看待问题,很多开发工作真是不可思议和难以理解的。
一个最简单的例子,就是对时间的认同的差异。
客户常常会这样认为,你修改了3行代码,编译验证到提交,分分钟的事情嘛,可你为什么用了两个小时?
好吧,我是这样解释的:
虽然我只修改了3行代码,可是咱们的编译系统并不支持局部模块编译(注1),虽然有增量编译,但是整套下来还是需要15分钟编译完毕。但是,谁也不能保证没有编译错误调错再编译又会浪费一些时间。编译结束后,要把img烧到设备中,又要5分钟左右。开机需要1分钟,真机调试要5到10分钟,有问题还要继续重来。都ok啦,那么接下来提交代码review,需要写commit comment,这份细致认真的活儿还是需要10分钟。提交代码,遇到冲突,解决需要不可预知的时间;网络有问题,还是要不可预知的问题。
在最好的情况下,这个活还是要半个小时以上的。但是一次成功的几率很小,有人的因素也有其他因素。
曾经有个段子,说为什么程序员都很闲,因为他们会告诉你,等编译结果呢。趁编译这个当,可以泡泡妞喝喝咖啡。
玩Android的都知道,现在即使是i7处理器,8G内存,初次编译Android系统也需要3个多小时。而同步代码的时间跟网速直接挂钩。如果你新加入Android系统级开放团队,那么前几天你就可以轻松的搞环境了,趁下载编译的时间,你可以出去打打篮球,购购物。
这两天又发生了一件事,大家可以借鉴一下,给自己以后评估时间时敲个警钟。
背景是这样的,最近在忙两个项目,项目开发中心分在两个办公室。通常的时间安排是半天对半天,但我们可以自由调度,有的项目不忙就多花时间在忙的项目中,如果都忙,那么就要加班了。现在有人会问了,你忙两个项目,给你两份工资吗?答案是否定的。也许会给点奖金,也许毛都没有。你又要问了,那么加班有加班费吗?答案同样是否定的,你加班是应该的。但是你有事情要请个假,嘿嘿,对不起,走年假,么有?那么,不好意思,按照公司的规定,该扣钱扣钱。现实就是如此,吐槽无力。
我在A office用Linux画好了设计框架和类图,还没来得及合入文档中,但是要去B office开会。开会结束,PM说今天要把详细设计文档出来。我说没问题!B office用的Windows系统,当然对Word的支持是最好了,我就想,既然模板都在这里,何不在这里提交呢?但是问题出现了,我的设计图还在A那呢,怎么拿过来呢?
我尝试了以下几种办法:
1.邮件发送。
就是自己给自己发邮件,发送成功后,果断关闭A的邮件软件,去B打开邮件接收。第一遍,发现发送失败。我想,是因为我在A关闭的太快了,造成没有发送成功?跑回A重新发送,等待一会,估计是发送过去了。跑到B打开,发现继续失败。我就有些生气了。也许是公司的邮件系统封杀了这个功能吧。
2.手机拷贝。
MTP在Ubuntu中支持的不好,我用adb把图片push到手机中某个文件夹下。在Windows中直接打开MTP,去相应的文件夹下找。没有!我知道这是MTP的bug,一直没有fix掉。也许重启一下手机就可以了吧。仍然失败,MTP真是令人讨厌,一定都不可靠。
3.U盘
没有办法了,找项目组的专用U盘吧。有些项目是有自己测试用的工具的,这些是合法的。但是两个项目公用的U盘还是没有的。但现在也只能这样了。Ubuntu下拷出图,回到Windows下打开,发现图片没有拷成功。真是一着急就出问题啊。这次是我自己的错误,Ubuntu下拷贝东西,有一种假象,就是拷完后在U盘下就可以显示,但也许还没有传输完毕。我的图片就几百KB,以为瞬间就完事,就直接拔掉了。万万没想到啊。
就这么个简单问题,两个屋子我跑了好几趟。最后用了40分钟完成这本该一分钟的活儿。
有句话说的对,看起来简单,做起来难。如果事情不仔细做好准备,就会状况频出。
注1:
类似Android源码编译就支持这样的局部编译,see also [here](http://blog.csdn.net/lincyang/article/details/10571995)。
- 前言
- IT痴汉的工作现状
- IT痴汉的工作现状2-女人
- IT痴汉的工作现状3-临时工
- IT痴汉的工作现状4-沟通与分享
- IT痴汉的工作现状5- 一分钟的工作
- IT痴汉的工作现状6-寂寞的夜
- IT痴汉的工作现状7-TB
- IT痴汉的工作现状8-三思而后行
- IT痴汉的工作现状9-会哭的孩子有奶吃
- IT痴汉的工作现状10-Sprint Planning
- IT痴汉的工作现状11-程序员的烦恼
- IT痴汉的工作现状12-叶志坚离职了
- IT痴汉的工作现状13-恐吓电话
- IT痴汉的工作现状14-段子
- IT痴汉的工作现状15-低级错误
- IT痴汉的工作现状16-职业发展
- IT痴汉的工作现状17-健康警钟
- IT痴汉的工作现状18-思维定式
- IT痴汉的工作现状19-公司组织结构
- IT痴汉的工作现状20-职业规划
- IT痴汉的工作现状21-Android开发前景论
- IT痴汉的工作现状22-由Dalvik虚拟机引发的口水战
- IT痴汉的工作现状23-乡关何处
- IT痴汉的工作现状24-Just for fun
- IT痴汉的工作现状25-技术之养成
- IT痴汉的工作现状26-好项目,坏项目
- IT痴汉的工作现状27-高冷MM与奶茶姑娘
- IT痴汉的工作现状28-刀客许三爷(上)
- IT痴汉的工作现状29-社会工程学
- IT痴汉的工作现状30-刀客许三爷(下)
- IT痴汉的工作现状31-跳槽小贴士
- IT痴汉的工作现状32-四次面试
- IT痴汉的工作现状33-HTML5的春天是原生App的冬天?
- IT痴汉的工作现状34-技术选型
- IT痴汉的工作现状35-不要让你擅长的技术限制了你
- IT痴汉的工作现状36-做好准备再上路
- IT痴汉的工作现状37-我想找一个人
- IT痴汉的工作现状38-让我的笔记本上网冲浪--无线路由的桥接技术
- IT痴汉的工作现状39-客户demo这件小事
- IT痴汉的工作现状40-将其存成pdf,永久保存
- IT痴汉的工作现状41-亲历招投标
- IT痴汉的工作现状42-Android越用越慢?立场不同,谈何信任!
- IT痴汉的工作现状43-开发者宣言