2010世界杯 – 俺的爬梯生活
(2010-06-17 13:59:41)
下一個
(一)
世界杯開賽前9天,收到老板一個郵件,標題是“2010世界杯~~~~~”。當時想,這美國老伴還挺關心世界大事,怕我們誤了這場盛會,給大家提醒呢。
再往下看,好幾個相同標題的郵件,有的還打著紅色驚歎號。仔細讀下去,不好了,是我們的產品在這場盛會的一個角落裏掉鏈子了。
嚴格地說,是我主管的一個產品掉鏈子了。
沒幾分鍾之後,老板過來談情況,大體上是說,有個百年不遇的應用case,被用戶挖掘出來,發現不靈,你看看怎麽回事。
當即放下其他雜事,跳進去看。
一個小時之後,告訴老板,這個功能是有的,但是我們的用戶界麵幾年前把這個功能刪除了,所以產品未得到測試。現在把界麵加上,測試一下吧。
加上界麵,我自己測試了一下,結果還不錯,似乎有效。趕緊電郵新的程序到地球的另一個角落。當地的測試感覺有些效果,但是沒有徹底解決問題。
(二)
我知道問題沒有徹底解決的時候,已經是第二天早上。對方在我們的夜晚工作。而且特意等到我們天亮,在電話裏向我講述問題依然存在之後才回家休息。
一聽,問題還在,我就有點兒煩。這東西我測過的,沒測出來?隻好重新測一遍,加長時間。果然出錯了。
再看看吧。這種以前從未測試的功能,火燒火燎的時刻,一步到位尚有困難。
兩個小時之後,再次成功發現重大問題,修正後,自己再測,長時間測,都沒問題。
與此同時,老板和市場部門的頭兒加上地球上幾個不同角落、都拴在這根繩子上的螞蚱們,開了電話會議。討論如何把鏈子裝回去。跟我相關的,是給我配備了三個測試員,火線測試。這大概相當於在好萊塢當主角,配備三個化妝師吧?
信心滿懷的我,把新的程序發給當地的兩名測試員。其中一位是我們的頭牌測試,他把發現產品中的問題當作吸毒,總是充滿了熱情、渴望和創造性地迅速找出問題。可惜他太忙,永遠在火線上。平時不出大的差錯,輪不到跟他見麵。
當然,工程師的最大特征,就是麵對這樣的測試員,心理素質過關。比方說我自己。
在寫給測試員的郵件裏,我心情愉快地說:如同每次發給你們新版本一樣,我信心十足。請你們有空的時候稍微測一下。
(三)
當天,女兒有年終的話劇演出。我向老板匯報,讓測試員忙著,我先去看女兒演出。有什麽問題給我打電話。把電話寫在了老板辦公室的白板上。其實我是裝裝樣子,心裏很踏實,就算頭牌測試出馬,這次也不大可能測出閃失來。
老板沒鬆口,說,有問題我給你打電話,晚上得來。我說:明天我可以來(原本第二天我休息)。我還是在做姿態。老板說:明天就太晚了,我們的截止時間是明天早上4點。
(四)
看女兒演出,徹底忘了公司的事兒。回家吃飯、聊天兒。電話還真就響了。
老板說:頭牌測出了問題,你還得來。
這下,我比較亂了。不是怕問題,也不是怕加班,是沒有思路。挺簡單的一個功能,用的是文件包裏的老程序,接口能查的都查了,要是還有問題,就得進文件包,看匯編程序。這是晚上9點,到早上4點也不太遠了。
放倒孩子們,告訴他們,世界杯能否正常運行,就等著娘這一晚上的運氣了。你們放心睡覺,娘去練氣功。這種在孩子們麵前拔高自己形象的機會不多,我得用上。
(五)
到了公司,老板還沒走。估計他心裏急得都起泡了,見到我還是客氣地說:這麽快就來了哈。這職業修養太讓俺敬佩了。
我隻好打開文件包,對匯編語言開戰。感覺有點兒不對,以為自己找到了問題。幸好老板在,就過去跟他嘮叨。他覺得有道理,略有放心的感覺。
一個時辰過去,我發現自己發現的所謂問題不是問題。向老板認錯,剛才咱詐喜了。老板沒驚,這種問題哪個工程師出身的老板不是身經百練,早就見怪不怪。我安慰老板,你也不用跟這兒耗著,回家休息吧。我能撐住。
其實咱幹這一行的,怕的不是問題,而是沒問題。隻要知道有問題,解決問題是遲早的事兒。隻是現在時間有點兒緊。
決定放棄文件包,重新寫一個相同功能的程序,調試起來也方便。自己動手,豐衣足食。
自己寫的程序也是一寫就錯。老板熬不住,要離開的時候,我匯報說,自己寫了個傷痕程序,正在調試。您回吧。弄好了,我會給你發郵件的。
估計老板快到家的時候,俺成了。郵件一過去,老板就回了,欣喜若狂。
淩晨一點半,程序飛往世界另一個角落,那邊已經白天了。讓他們來測試吧,我們這邊的測試員早回家了。
(六)
回到家的時候,感覺公寓樓裏住了很多周總理,到處是亮到後半夜的燈光。
半宿無夢。早上起來,看到地球另一邊回來的郵件說,一切就緒,載著新程序的硬件馬上快件發給用戶。鏈子馬上就要裝回去了,拭目以待。我感覺,還好,自己這一程,沒掉棒。
(七)
我決定去唐人街看中醫。這幾天花粉過敏症狀嚴重,西藥一吃,症狀減弱,人也就飄起來。還是看中醫比較適合咱這唐人體質。
一路上看著蘋果公司為下周一即將召開的丐幫大會張貼巨幅蘋果商標於會議中心。我也忙中偷閑,去一家專賣店,給女兒買了幾塊日本產的趣味橡皮。
(八)
看完病,在街上閑逛。慢悠悠到了中午才回到家。泡了一碗飯,打開電視,打開計算機,看看公司是否依舊平安。
不看不要緊,一看,問題又來了。本地二號測試員今天加班,發現新版本解決了核心問題,也創造了更新的問題。某個通訊渠道變得十分緩慢。
他沒忍心告訴我這個消息,隻是電話上給其他工作人員做了口頭匯報。但是地球另一端的螞蚱急了,發出一個郵件問:這hobo同誌還沒來上班嗎?這個通訊速度是個潛在的棘手問題,客戶可能會急。
客戶可能會急,但是俺馬上就急了。立刻發郵件說,稍等片刻,流浪者馬上就到。抓起車鑰匙就往外奔。
(九)
這才想起來今天早上是他爹挪的車。昨晚後半夜回來我把車停在了今天早上要掃街的一側,早上必須挪開。當然不挪開更好,城市建設部急等居民犯錯誤,交罰款。
可是他爹把車挪哪兒去了?也沒告訴我一聲兒。此時此刻打電話過去,也沒人接。全世界的人都知道,那是一個偽號碼,十次有九次打過去沒人接。要擱平時,咱也就一笑了之。可這不是平時,戰爭狀態,您也不接電話,就怪不得俺沒修養了。俺差點兒把自己手上的電話也扔了算了。
但是不能扔啊。俺還得給保姆打電話,請她也加個班吧。到點兒接女兒去練體操。這電話也還得留著等兒子來電。早上信誓旦旦告訴兒子,媽今天接你。孩子高興一整天了,到了兒還得再懂事一回,委屈他自己坐車回來。
上上下下,爬了好幾個山坡,才找到自己的車。
(十)
到公司後給二號測試員打電話,匯報我來了。對方做吃驚狀,問:你怎麽來了。俺說,別客氣,你捎話兒也不帶繞地球好幾圈兒的,太不環保。俺還是把這問題解決一下。你先測個特例給俺,看看俺的假想對不?
(十一)
假想當然是對的。誰惹的禍誰心理最清楚。
二號測試走了。
俺開始大刀闊斧優化程序。
下午5點多,孩子該回家的回家,該練體操的練體操,全都安頓好了,俺也就緒了,可以回家了。看起來簡直是赤裸裸地躲避家務。
這次,俺徹底謙虛了。新程序發出去,告訴螞蚱們:又弄了個新碴兒,你們看看合適不,不行的話,俺隨叫隨到,要怎麽改怎麽改。看得起俺,就把俺的電話號碼留下,有問題千萬打電話給俺,別客氣哈。
(十二)
第二天是周末,地球另一端也是周末。勤快的螞蚱,異地測試員來電郵說,真的測試要等到客戶周一上班才能進行。簡單測試已過。你新給的程序我們留做備用。希望通訊速度不礙大局。
(十三)
周末的第二天,俺還是有些糾結。俺不放心那個文件包裏的程序到底是怎麽錯了。另寫的一個程序是沒問題了,但俺還是想在客戶的星期一之前,弄明白原委。以防突如其來的新問題。
世界杯又近了兩天。
俺跟孩子們請假,再次來公司加班。
(十四)
弄清原委,其實不簡單是責任心的問題,也是好奇心使然。好多日子沒有這麽讓人好奇的事情發生了,事故如節日的焰火,讓俺的心情喜慶起來。
帶著這種喜慶的心情,俺開始閱讀匯編程序,如同讀一首詩。斟酌著每一個詞,每一個句子,每一個標點符號。
當暗藏在文字中的詭計暴露出來的時候,我有點兒驚惶失措。不是因為懼怕這詭計,而是無法想象,這在外漂流了10年的老程序,居然混過了大小海嘯、地震、甚至911,它是如何安全活到今天的,帶著這麽重的傷痕。
(十五)
後麵的故事跟俺關係不大。最後他們使用了最後一個版本的程序,因為客戶對通訊速度要求苛刻。為了使用這個版本的程序,載有較新程序的硬件,一到目的地,就被洗心革麵一次。然後分送去十多個不同的比賽城市。趕在了開幕前。
(十六)
賽事開始後,不時地碰到來自歐洲的同事,感謝俺對世界杯的貢獻。雖然絕對是誇大其詞,但好消息默默地在辦公樓裏流傳,俺也很感激。
地球另一端也發來一封本次活動精彩片斷回放的信,給辦公樓裏相關人員。俺得說,寫信的人,是個公平、細致、有責任的好同事,因為他把俺的名字列在了第一行。