《瘋狂的程式設計師》22
丫頭,洞房去 哈嘍,勐鬼督察官 少帥——好凶猛 腹黑女王,總統求kiss 鬥破三千 狩獵在地球末日 荒天帝 萌動茅山:蘿莉風水師 天生涼薄 金牙海盜
《瘋狂的程式設計師》22
這次周總的語氣顯得有些焦急,絕影預料都有什麼重要的事情發生。他說:“小絕啊,那個KIPACS的BUG你現在能不能抽點時間加緊修一修。明天我們就要去為一家醫院安裝,時間很緊啊。”
周總說的KIPACS是公司一個軟體產品,以前一直是小周在做,雖然名字叫PACS,後來絕影才發現,這個軟體產品其實還算不上真正意義上的PACS。小週一直拿它當寶貝似的,還記得前不久剛剛把影片卡模組加進去的時候他一個人在那興奮得不得了,還讓公司好幾個員工都來拍張照片留念。絕影也拍了一張,比攝像頭效果好得多,因為影片採集卡是9bits的。
“本來以為沒什麼問題了,今天下午我在公司測試了一下,發現還有好幾個BUG,現在再去把小周找來肯定是來不急了,你先看一看,我把原始碼和BUG列表已經Email給你了。”
絕影覺得這事情來得太突然,自己在公司現在最大的成就莫過於用MFC做了一個登錄檔讀寫的Demo,現在突然要他來修改一個商業化產品的BUG他實在沒什麼底氣。他說:“KIPACS程式碼我看過,但從來沒往裡面寫過程式碼,不知道行不行。”
“你就試試吧,能改多少改多少。”
“好的,我去看一下,改完了我給你電話。”
顯然周總也處於十分被動的局面,明天就要給別人醫院安裝,現在都已經是下午六點,公司原來負責這個CASE的程式設計師又不在,他也只好死馬當活馬醫了。
事情來得緊急,絕影也顧不得吃飯,他給燕兒打了個電話,說:“晚上公司有事,要寫點程式,我剛跑了1000米,及格了,反正現在也吃不下飯,你先一個人去吃飯吧。”
周總的郵件裡面列了5條KIPACS的BUG,絕影看了一下問題都不大,他這才第一次認認真真地看KIPACS的程式碼。雖然老早之前小周就把KIPACS的程式碼發給他,當時也就是讓他看看,沒啥其他要求,所以他也沒壓力,看了幾眼覺得程式碼又複雜,結構混亂,各個cpp檔案中都隨處定義的全域性變數,沒用匈牙利命名法,註釋也很不完整,才看了幾眼就感覺頭都大了,所以他也沒怎麼認真去看。
這次不一樣,你要真刀真槍去修改BUG,於是從APP類開始,順著程式流程往下看。以前絕影的思想中基本沒有“類”這個概念,所以看MFC的工程就看得累,一個一個cpp地檔案去尋找實現這個功能的函式在哪裡。後來周總交他一個法子:別去看那檔案列表,直接把類檢視展開,從APP開始,從類成員函式中去尋找,特別注意那些OnXXX函式,一般就是處理訊息的。
時間一點一點過去,絕影修完一個BUG就在那BUG列表文件相關的專案上打個鉤,修改一會又去看看那個文件,剛才打的鉤還在,打鉤的越來越多,沒鉤的越來越少,看一看覺得還是很有成就感,又埋頭繼續看程式碼,有時候一邊看一邊罵,罵誰?罵小周。程式碼得這麼混亂,根本沒想過給後人留點方便。所以要是以後自己寫程式碼,就一定好好寫,寫規範,寫好註釋,免得別人罵我。
不知不覺就到了11點,絕影在罵人和成就感交替的心情中終於把所有BUG都修改完。他仔細地在BUG列表的文件中每條BUG後面打上括號,寫上“已修正,X年X月X日,絕影”,然後把KIPACS工程開啟,從頭到尾把自己修改過的程式碼旁邊打上註釋:changed by Hamber, yyyy-mm-dd。
Hamber是後來燕兒幫他起的英文名,燕兒英語專業出身,給她們講課的也都是老外,老外就是迂腐,非要給全班每個同學都起個英文名,名字不過就一個符號,但他們好像只記得住英文的名字。
燕兒也覺得很有意思,雖然沒留過洋,但有個英文名感覺還是要牛B一點,於是興高采烈回來也給絕影起個英文名。以前絕影就有個英文名叫Hitetoshi,那是從一個日文名字演變過來的,想1998年世界盃幾乎全中國球迷都支援日本,所以用個日本名字還是比較洋氣。後來小日本越來越過分,絕影對他們的腹緋也越來越多,最後腹緋變成憤怒,終於決定採納Hamber這個名字,跟小日本徹底決裂。
現在考個駕照比以前嚴格得多,就路面行駛如果視線離開正前方超過三秒鐘就直接不合格。這個要求對很多人來說的確有點難,路上那麼多人啊,車啊,或者突然蹦出來個美女,難免打點晃晃,稍不留神就讓考官“Go out”。後來絕影去考,一考就過。為啥?因為他在那個時候就練了出來,那天,整整四個小時中絕影的視線從來沒有離開顯示器超過三秒。
絕影小心地把東西全部打個包給周總髮了封Email,再個周總打個電話。周總問:“改了幾個BUG?”
他平靜地說:“全改了。你看看程式碼。”
做完這一切,他才想起肚子好餓,外面有點冷,館子差不多已經都已經關門。他去樓下烤了幾串燒烤一邊吃一邊給燕兒打電話:“我吃了飯了,東西也給周總做完了,超額完成任務。”
絕影沒啥音樂細胞,不過《同桌的你》這首歌他還唱得不錯,大一的時候他本來想和王江學彈吉他,就學的這首,邊彈邊唱自我感覺良好,可是別的寢室對他意見很大,後來吉他沒學成歌倒是唱得滾瓜爛熟。
正如那歌詞一樣:你總說畢業遙遙無期,轉眼就各奔東西。雖然大四還沒結束,但同學們都各忙各的,你就算在學校裡轉個三天,也不一定能見到幾個同學。好容易選畢業設計的時候到了,大家回來聚一聚,各自比比誰選的畢業設計水平高些。
最開始絕影選的題目是汽車車牌號識別系統。這個課題還是很有價值。比如你創紅燈啊,啪給你拍下來,把車牌號識別成字元直接放資料庫,交警同志們本來就多困苦的,這下好了,一個“select”語句就把你檢索出來。再說,自己去那家公司本來也搞數字影象處理,說不定有些技術積累還能幫上自己的忙。本來題目也不難,好像就是用高通率波就行了。所以這個題目他實在是十拿九穩。
過了兩週,輔導員曹媽給他打來電話,先是打工問問工作可好適應不適應,然後馬上轉到正題:“畢業設計的題目太少了,有些題目選的人多,有些題目選的人少,你看你能不能把你選的那題讓出來重新去選一道啊?”
絕影想重選就重選,反正自己有能力,哪題不會做?關鍵是我都把攝像頭啊這些器材都買了你才讓我重選,這不是浪費我錢嗎?
想是這樣想,他還是很客氣地跟曹媽說:“當然沒問題。我選哪題都有把握過的,你放心好了。”
掛了電話,絕影越想越不服氣,憑啥就要我讓他們啊?反正後面畢業設計題目也就那麼幾道,看一看再也找不出來難度合適又能體現自己水平的了。乾脆給教務處打個電話說:“我是絕影,我已經在公司實習了,公司的意思是我能儘可能多地呆公司裡面,所以他們希望我畢業設計自己選題,由公司派導師帶我做。”
由公司派導師帶學生做畢業設計按規定也是可以的,那時候宴斌已經是學院教務處主任,他跟絕影說:“行,當然沒問題,但按規定,公司派的導師至少要有工程師以上的職稱。改天你把你導師資料的影印件、職稱證明、公司的意見該公章還有你自己的申請送到教務處就行了。”
絕影過了軟體設計師,就怕宴斌不知道,畢竟他以前是宴斌的學生,還是多希望自己這個學生在老師眼裡是個有出息的學生,趕緊給宴斌說:“我不是考過了軟體設計師嗎?那軟體設計師就是個工程師的職稱了,我自己帶我自己不就夠了嗎?”
說了以後,絕影開始等宴斌來讚揚自己,不料也許宴斌那邊特別忙,他說:“那還是得按規定來,就那樣,不說了,我還有點事情。”
掛了電話好幾天絕影都有點失落,想幾年過去了,宴斌是不是當了大官就不認自己了。
後來,公司給絕影排了一個“研究員”做絕影的導師,“研究員”是個多大支援絕影也不知道,因為不知道他決定應該不小,那職稱證明上寫著:王X,航空工業大學研究員。他覺得這麼大個頭銜應該是很牛B的,所以他自己也很牛B地把資料交到教務處,心想:你們算什麼職稱呢?
最後學院還是給絕影劃分了一個校內導師負責聯絡,是個女的,姓王,據說是一個很牛B的教授級別的人物,她沒給絕影上過課,絕影對他的印象不是很深刻。
她問:“畢業設計的題目確定了嗎?”
絕影說:“定了,《DICOM傳輸的原理與應用》。”
這題目是周總給絕影定的,當時公司剛完成了一個DICOM傳輸模組的除錯也許周總也帶了點給學校炫耀的心理吧,忙讓絕影上這個專案。他說:“DICOM方面我們都有好多年的技術積累了,程式碼啊資料啊論文啊都有現成的,除了核心程式碼你要什麼拿什麼就行了。那畢業設計有什麼好怕的?花個兩週寫寫論文就行了,要不你讓祕書幫你寫也行。”
絕影跟王老師報出這個題目,他想她應該沒有什麼意義,她是搞自動控制的,對醫療方面懂個P,DICOM是什麼她可能都不知道。
可是這次王老師卻說:“不行,不能用這個題目。”