疯狂的程序员79:致命错误
事关重大,绝影抽了点时间,洗了个澡,换了件衣服,然后端端正正地坐在电脑前,清了清嗓子,才郑重地给BOSS Liu打去了一个电话。
BBOSS Liu显然还没意识到事情的严重性,而且正一门心思地一边写着他的代码,一边听着MP3,一边在news.qq.com的角落到处翻花边新闻,一边跟MM们聊着QQ,一边和绝影讲着电话,简直把多线程或者说超线程技术在工作中运用到了极致。胡乱聊了两句,绝影突然换了口吻道:“BOSS,严肃点,大事不好了!
要换成平时,BOSS Liu都对绝影的“大事不好了!”习以为常,“狼来了,狼来了”,喊一两次还能忽悠人,你要是天天喊,哪怕你突然有天改成“老虎来了”都没人理你。
这一次,BOSS Liu听他的语气不像在开玩笑。要是真有什么大事,怠慢了绝影,到时候让他秋后算起账来,可是自找的吃不了兜着走。
于是BOSS Liu赶紧在VC中按下Ctrl+Shift+S,小心翼翼地保存好他的代码,关了还没看完的花边新闻,再给每个MM发一句:“BOSS来了!下了!”,用的还是“复制”,“粘贴”,赶紧把QQ调成隐身,还算是安全结束所有线程,然后才正经地对绝影说:“不急,冷静!”,这才把重点全部放到主线程上来。
绝影却用更加焦急地语气说:“还不急呢,火都烧到眉毛了!那个代码,你究竟有没有编译过啊?”
“当然编译过,怎么?有破绽?
“当然有。
“我来解决。多不多?
“不多,但都是致命错误,fatal error!”
这次换BOSS Liu焦急起来:“怎么回事?
绝影却缓了缓语气:“我说BOSS啊,你这不是整我吗?你自己看看你那x264解码器部分,还有zlib库。
“这两个库很好嘛。都是网上开源的,很有名,而且发布很久了,是经历过考验的,应该没什么问题。
“我晓得,好是好,问题是这两个库都用了汇编语言,而且都是独立汇编,还非得汇编器来汇编。还不统一,x264用的nasm,zlib用的masm。”
BOSS Liu这才一拍脑门:“坏了。”
绝影叹口气:“是啊。坏了。这S60 Platform SDK全是C++接口,根本没有提供汇编器,任凭你什么汇编代码,放到这里就是死,你总不可能让我去打听一下人家NOKIA用的什么处理器,找来《Develop Guid》,把那nasm的汇编翻译过来再拿它的汇编器汇编吧。再说,要是我们真有这么大本事,还不知道S60 Platform SDK的C++编译器和汇编器的目标文件兼不兼容呢!”
BOSS Liu沉默了一会:“唉,当初我就在Linux下编译的,我看这两个库比较稳定,就直接把目标文件连接进去了,根本没想到这里面还有汇编代码。这可如何是好啊?”
绝影也沉默了一会:“办法有两个,一:把这库里面的汇编代码翻译成C++的,工作量巨大,代码我也只是粗看了一下,发现x264的汇编代码分为AMD63和i386,zlib好像也分了masm64,masm32和masm686,估计还是跟CPU平台相关的,如果是这样,就不好翻译了。结论:方法一基本不可能。二:干脆就不要这部分的视频解码了,把主流解码器做出来差不多了,毕竟是移动平台嘛,想做得跟PC平台功能一样强大,还是比较困难呐。”
“那不行。”BOSS Liu一口打断他,“x264的可以暂时不要,但zlib就非要不可了,代码里面所有关于数据压缩的算法基本都用了这个库,这个库没了,等于我们那些代码都废了。”
那我也不知道怎么办了,反正做到这里,做不动了。”
“嗯你等等。”
BOSS Liu说完,电话里沉默了几十秒,估计他正从办公室走到外面,确认周围安全了,他才压低声音说:“嗯,先放放,我马上请个假回来,再详细讨论下这事。反正zlib不能去,去掉了等于整个视频解码都不可用了,那我们做这CASE也没意义了。”
“嗯。对了,Bug Yang那边你跟进了没有?”
“当然有。”
“他那边怎么样?”
“他说没问题。”
“放屁,要是真的认真做了,怎么没发现这么大的问题,还没问题呢。也不知道他真的认真了没有。”
“唉,BOSS啊,你不要把每个人的水平都想得跟你一样,慢慢来嘛。”
放下电话,绝影感到手脚都有点发麻。事情都做到这里了,才发现这么大的问题。原来以为只要有激情,肯拼命,啥事都不怕。现在看来,他还是错了。
“人定胜天”的思想真是害死人啊。几千年了,中国人一直信仰孟子的教导,并且为了证明他的正确性而不断努力,结果呢?还是唯物主义一语道破天机:“人的主观能动性受客观条件制约”。”
这时候,大爷也看出一点端倪:“出问题了吧。我就知道,你们啊,当初你们就把问题想得太简单了。要创业,要做一个产品,哪里有那么容易的?想当初我们公司……”
“停停停。”见大爷又准备忆苦思甜,绝影赶紧打住他,“别笑我们。毕竟没有经验嘛,不过好歹我们敢去做,好多人虽然有想法,但没胆子去做。整天拿着他的优秀项目到处忽悠观众。这些人,才是值得鄙视的。”
大爷怎么听,觉得绝影这话中带话,但有说得不是很明显,只好说:“那是。我胆子就小,不过经验有一点,现在我也正调研项目,你有技术,我有经验,我们在一起还怕没饭吃。你们啊,自己去搞,风险还是很大。”
绝影点点头:“那你看看吧,这次是个大问题,致命错误,到这里,我都不知道这CASE还不知道做得走做不走,总之等BOSS Liu回来再说,问题总会有的,也总会解决的。”
绝影一边给大爷说,一边安慰着自己:问题总会有的,也总会解决的。
可这一次,问题实在太多了,第二天,工商代理又给他打来电话,头一句听着还挺顺心:“影总吗?我是XXXX公司啊。”
听别人叫自己影总,虽然只是电话,绝影还是摆出一副自以为是老总的样子,正儿八经地说:“嗯,你说。”
“营业执照可能有点问题啊,今天工商局打回来了,主要是你们那办公场所的问题,工商局说今年下来新规定,所有新注册公司的营业场所必须要是商业用房或者商住房,可你们是住宅用房啊。”
“当初不是专门问了你们的吗?你们说没问题啊。”
“是啊,这问题我们以前也从来没遇到过,这也是新问题啊,我们今天才第一次遇到。你看你们能不能重新拿一份租房合同啊?”
绝影立刻在心里盘算了一下,拿份新合同,还得商业用房,现在哪家门面不是几百上千一个平方,就算写字楼,算下来也得几千块钱一个月呢。这可基本上相当于一个人的工资啊。现在啊,政策就是整死人,一面说要鼓励创业,要减税,一面又说开公司要这样那样的限制。说这些有什么用啊?我要真的一年能盈利过一两千万,我还会偷你那点税钱?我还会老想着少那几个点子?支持国家发展是再好不过的投资了,毕竟,只有国家发展起来了,企业才有可能有更好的发展。可是现在呢?公司还没开成,政策就准备把它扼杀在摇篮之中。
想到这,绝影气就不打一处来,干脆全部发泄到电话里:“当初你们不是拍着胸口说得好好的吗?现在我们根本没做这方面的准备,你今天说房子不对,明天又说公司名字不行,后天又说经营范围不符合要求,这要求没完没了,我们怎么做得下去?”
工商代办听绝影生了气,生怕得罪了他掉了这份生意,明明听得绝影话中带刺,还得继续甜言蜜语地说:“影总你先别急,这样吧,你们先去想想办法,能拿到租房合同尽量去拿,我们这边也再看看能不能活动活动,但是也不能打保票。”其实她心里暗骂道:“一群黄毛小子,一没钱二没经验三没关系还敢出来开公司,这不明摆着送死吗?”
不过有这样的黄毛小子也好,有这样的人他们才有钱赚,要是全世界的黄毛小子都老老实实呆在公司,或者只敢背着BOSS接点私活,那工商代办还做个P的生意啊。正是黄毛小子们养着他们,对他们来说,黄毛小子才是他们的上帝。
所以这个世界就是这样,有些有人有点钱了,就这也瞧不起,那也瞧不起,嫌打工仔穷了,嫌农民工脏了,你大不了就一个煤老板或者做房地产的地主么?挖煤要靠谁?盖房子要靠谁?还不是要靠广大农民工。煤挖出来卖给谁?房子修好了卖给谁?最终还是不要卖给广大人们群众,广大打工仔,广大农民工兄弟。你要晓得,和你一样的煤老板是永远不愁煤的,和你一样搞房地产的地主是永远不缺房子的。这么一想,你才晓得,其实广大农民工,广大打工仔才是你的衣食父母,你得尊敬他们,得供着他们。
所以写程序也是一个道理,你千万不要以为自己会点C++晓得啥是继承啥是封装了,就牛B得不得了,就有资格把那些还在问:“C语言的指针是什么意思。”的所谓“菜鸟”们鄙视到十八层地狱了。程序写出来给谁用?难道你还能拿他当饭吃当烟抽,还不是得拿给你称之为“菜鸟”的广大人们群众。或者是你有了研究成果,拿出来跟谁分享?技术低了,其他牛人们不屑一顾,你要记住,比你牛的牛人们永远不缺你拿点技术,技术高了,你又研究不出来。你还不是得跟“菜鸟”们分享啊,“菜鸟”们对你的成果津津乐道,对你万分追捧,满足你那一点点虚荣心,才是你不断进步的动力。所以,牛人啊,从某种意义上来说,“菜鸟”才是你们的衣食父母,“菜鸟”是拿来尊敬的,不是拿来“鄙视”的。
这么想,绝影又觉得平时把Bug Yang想像得那么龌龊,还是有点对不起他。
也不晓得现在代码交给他让他搞到一个什么程度了,BOSS Liu还没回来,这个时间也应该先和他沟通沟通,于是给他打个电话,约到了茶馆。
Bug Yang对绝影的主动邀请是有点受宠若惊的,心里就琢磨着一定有什么大事情,半天不敢开口说话。
绝影喝了一口茶,首先问:“怎么样?代码研究得如何?”
Bug Yang这才抓抓头皮:“还在看。BOSS写的代码,深奥啊。”
绝影叹口气:“也罢也罢,这代码里面有个致命的问题,现在做到这里我都没办法了。”
Bug Yang有点吃惊问:“这么大的问题,我怎么没发现呢?”
“当然了。这问题比较深,你看的BOSS Liu的代码,还没看到那里去,那是在x264和zlib库里面的。”
听绝影说出这两个库,Bug Yang努力在脑海中搜索关于这两个库的印象,这时候,要是他说句:“x264,zlib是什么啊?我没听说过。”那还不被绝影笑死,这都不重要,反正绝影比自己技术好,被他笑也无所谓,技不如人,就是要不怕被耻笑,不怕被耻笑,才敢勇敢地问问题,才能提高。在这一点上,Bug Yang的想法是和绝影截然不同的。绝影就是死要面子活受罪,什么问题,明明晓得BOSS Liu在这方面造诣很深,问他一句几分钟就搞定,可是越是这样他越是不问,不能让BOSS Liu知道自己不懂啊,在BOSS Liu面前,一定要把自己装得跟全知全能的上帝一样。于是自己下来Google上到处找资料,看代码,写Demo去分析,搞个三五天终于搞出来,再找个机会在BOSS Liu面前“不经意”地露那么一点点,BOSS Liu也在心中暗暗惊叹:“这绝影,居然连这个也知道,这可是我的长项呀,这样下去,我跟他之间打比较的优势都没了,不得了,不得了。”!
回忆了老半天,Bug Yang终于觉得可以开口了,才说:“x264没听说过,我知道H.264,不晓得这两个之间有没有什么关系。但zlib我知道,一个压缩算法库嘛,很流行的,以前我们公司的程序都用了这个代码,这里面不会有什么大Bug吧?”
“不是Bug,是因为这里头有汇编代码,我根本没法把它移植到Symbian平台上去,因为S60开发包根本就没有汇编器。你那边我不清楚,Windows移动平台的SDK不熟悉,但估计也移植不过去,因为这些代码都跟具体的CPU相关。”
Bug Yang也点点头:“那这个问题大了,还好发现得早,那现在有什么办法好解决吗?”
“没有。”
“没有,那怎么办?CASE还做得下去?”
“现在还没有办法,我们等BOSS Liu回来。”