瘋狂的程序員1-40

《瘋狂的程序員》1

天已經七分黑了,屋裏卻還沒開燈。這個全身黑衣服的男子突然像想起什麼,從包裏掏出煙,抽出一隻,遞給旁邊的人:“兄弟,抽菸麼?”――那煙是紅塔山。

旁邊那人連忙一邊擺手,一邊說:“不,不。”語氣有點緊張,好像那黑衣服遞過來的不是煙,是海洛因。

這個黑衣服的男子,後來的網名叫“絕影”。他旁邊那個,後來被他們稱爲“土匪”。這件屋子,就是他們大學寢室。



第一天到學校,其實沒有一點新鮮的感覺。絕影的舅舅和舅媽就在這裏教書,早在這學校還不叫“大學”的時候,絕影已經在學校足球場學騎自行車了。

要說念大學,最忌諱的就是在自己家門口唸。哪怕你就住北大院子,也一定要去清華。土匪覺得這學校不錯,不光是土匪覺得不錯,看就業形勢,也的確不錯。但是絕影就一肚子憋屈。

其實這間寢室和別的寢室也沒什麼特別,也就四張牀四張電腦桌。電腦桌當然有,但是電腦就要自己往上面放。既然沒有電腦,那要電腦着有什麼用呢?還佔着地方。唯一不同的是寢室裏的一個人――和別的不一樣,這間寢室有個不屬於這個班的人――他叫王江。

王江他特別,不僅因爲他不是這班的,還因爲他吹的牛皮很特別。

大一晚上談什麼?當然是談高考。

於是王江就嘆息:哎呀,差一分吶。

土匪附和道:哎呀,就差那麼五分。

王江:老天無眼,把我弄到這麼個學校來。

土匪:湊合吧,四年後考研,又是條好漢。

王江:不行,我要讓我老爸再想想辦法。

土匪:都怪我老子沒本事。比我差的都去了那學校。

王江:我老爸沒問題。但我就是這麼一個人,不輕易去找他的。

土匪:那你這輩子就給毀了。

王江:明天就去辦退學。

土匪:你去退,我跟你一起去退。

……

兩人談得熱血沸騰,彷彿他們老爸一個是教育部長,一個是清華校長,想去清華北大還不易如反掌耳。彷彿大好前途就在向他們招手,只等明天退學。

絕影跟另一個後來被叫做叫“超薄”的人一直沒發話。超薄是因爲聽不懂他們的四川方言。絕影呢,心裏一直在鬱悶:要沒有舅舅和舅媽,還有舅媽的爸爸,他根本就進不了這學校。不光進不了這學校,甚至進不了中國和外國任何一所大學。



第二天,王江去退學了。土匪沒去。問土匪爲什麼?土匪說:“他太不成熟了。唉,年齡小,辦事不牢靠。”

後來,王江的爸爸到了學校。絕影覺得王江的老爸怎麼看也不像教育部長,甚至連自己的老爹都沒法比。雖然經過這幾天王江的洗禮,應該算是“如雷貫耳”了,但就是咋看咋不行。

他老爸不停的說:“兒喲,再考個大學要多少錢喲。這學費都交了8000多了喲……”

所以最後,王江也沒能退成學。不過因爲這次退學風波,王江一舉成爲專業上的名人。爲啥?爲啥要退學?此地不留爺,自有留爺處。所以,退學是小事,但是敢退學就是大事了。至少有辦法退了之後再弄個大學念去。

再後來,土匪和王江都當了各自班的學習委員。絕影什麼也不是。絕影本來想弄個生活委員當的。因爲生活委員不需要什麼技術含量,而且絕影是本地人,在競選上應該有很多優勢。可是偏偏在競選的時候,絕影住院了。



所謂紅顏禍水。要不是因爲紅顏,絕影就不會住院。

說那天絕影終於約到那妹妹吃飯。那妹妹是誰?隔壁專業的。長什麼樣?沒見過。怎麼認識的?網上。所以沒見過纔有神祕感,絕影才那麼激動。

那天中午,絕影拍了拍土匪:“走了!約會去了!”於是換鞋。這時候,一個炸雷響起,譁~~天花板上日光燈斷成兩截,一截摔成碎片,另一截直接插到絕影的腳背上。絕影拔出這一截,腳背上立刻露出直徑兩公分大的窟窿。絕影正在納悶,這麼大個洞,怎麼就不見流血呢?正想着,血就開始撲撲地往外噴。

土匪傻了,但還是知道叫寢室管理員。寢室管理員也傻了,說外面下着雨呢。樓長說:你背也得把學生背到校醫院去。

絕影沒傻。絕影說:“等等。”拿起電話:“我來不成了。我腳上現在有個洞,正在往外噴血。”

那妹妹一聽急了:“少來了第一次約會你就找藉口。”

絕影仍然很平靜:“真的。唉,血還在噴,真不行了。管理員要送我去醫院,要不你在你們樓下等我,去校醫院要從你們樓下過。你看是不是真的。”

管理員背起絕影就走。到校醫院有兩條路,一條是正道,直通醫院。一條還得上個坡又下個坡,不過能從妹妹寢室樓下路過。絕影說:走坡路。管理員也真傻了,徑直往坡上爬。

路過妹妹樓下,絕影往四周看了五遍,一個人也沒有。來不急多想,就到了校醫院。

因爲是外傷,情況並不是很嚴重,也就是清洗傷口,縫針。絕影心裏惦記着那妹妹,可那時候手機手機還沒現在這樣普及,普及的是傳呼機。也就是有人找你,給你打個傳呼,那小機器就滴滴地叫,上面有他的電話,你再給他打回去。

絕影跟辦公室的醫生說:我要打兩個電話。

第一個電話,打給妹妹。妹妹又在那邊說:“你肯定是騙人的,我去了,一個人也沒有,還下那麼大雨。”

絕影連忙解釋:“真的,我已經到醫院了,管理員跑的太快,比你下樓還快。要不你親自到醫院來看,我在這等你。”

第二個電話,打給舅媽:“舅媽我腳上被砸了個洞,在醫院呢,你趕緊通知我媽。”

打完了。絕影就坐那等妹妹。土匪來了,超薄來了,王江來了,妹妹也來了。絕影傻了。因爲這個妹妹長的實在有點抱歉。後來因爲這個妹妹,絕影被他們三個,不,是全班,嘲笑了四年。

那妹妹說:“我叫樸素”。所以,以後每次嘲笑絕影的時候,只需要說兩個字:樸素。

所謂紅顏禍水。本來只縫了兩針。沒想到當天晚上就開始劇痛。絕影痛得下不了牀,除了上廁所,打飯什麼的都讓土匪代勞,土匪不願意,不願意也得去,因爲土匪是學習委員。後來連上廁所也不行了。乾脆弄了個可樂瓶子,每天讓土匪倒三次瓶子。

絕影的媽媽終於第一次來了學校。說的第一句話是:注意鎖好櫃子。接着就讓寢室管理員揹着他往校醫院跑。

醫生還是那個醫生,說:“X光都打了,沒有任何問題,再吃兩道藥就好了。”

絕影說:“痛的不能走路“。醫生說:“那就租副柺杖去吧,押金十元,每天租金兩毛。”

從校醫院出來,絕影就拄了雙柺杖。他說:“媽不行我還是痛,帶我去城裏的醫院吧。”
去了城裏的醫院,絕影就開始住院了,因爲傷口已經嚴重感染。

《瘋狂的程序員》2

兩週後絕影出院了。出院的時候還是拄着柺杖。

這兩週裏,發生了兩件大事:一、絕影決定追一個妹妹;二、土匪和王江開始做生意了。

和每個念大一的學生一樣,土匪和王江想做生意。於是他們就真開始做生意。“批發商”說:“乒乓球拍2元一副。想要嗎?”要。要就先買圓珠筆芯,500元買一萬根。

爲了拿到2元一副的球拍,他們就真買了一萬根圓珠筆芯。

絕影回到寢室,他們已經賣到第三天,總共賣掉8根筆芯,每根賣1毛錢。絕影說:“你們就是傻的阿?這個學校總共多少人?3萬。就算有3000人買,每人每月買1根,都要3個月才賣完。你們都不是做生意的材料。看我去弄個大CASE過來。”

絕影這麼說,就這麼去做了。正好到學校開運動會,校園裏凡是能掛的地方都掛了贊助商的廣告。他覺得做廣告這個CASE不錯。怎麼說廣告設計製作也算是個有技術含量的工作,總比蹲街頭賣筆芯強。

絕影不會做廣告,王江有個朋友到是會做。但事情就是這樣,你不會造車,但可以去賣車;你不會下蛋,但可以炒蛋炒飯賣。而且賣車的肯定比造車的更會賣車,炒蛋炒飯的肯定比母雞更會炒蛋炒飯。

絕影決定要做一個廣告代理商――其實就是拉廣告的,用現在比較流行的話,就是一托兒,廣告托兒。他是這麼幻想的:有一天,他穿着筆挺的西裝,打好領帶,掏出名片,彬彬有禮地遞給土匪,上面赫然印着:XX廣告公司XXXX大學總代理。就這個派頭,告訴土匪他們:你們也就只配擺路邊攤賣筆芯。

比如賣車的找個好的造車的不容易,炒蛋炒飯的找只好母雞不容易,拉廣告的要找個好的做廣告的更不容易。大的廣告公司,別人瞧不起你;小的廣告公司,絕影瞧不起別人。

一直過了半個月,這事情才總算落實,還像模像樣跟人家簽了代理合同。其實這家廣告公司整個還沒有他們寢室大,公司就兩人:一個男的,一個女的。沒辦法,絕影想就這麼一個小的公司,人家在容易就範。人家想,就這麼一個小小的大學生,才容易就範。

事情到最後,絕影沒有穿西裝打領帶,也沒有名片。他同學給他打電話說要打印點資料,絕影在電話這頭說:“打什麼打?拿給我到公司去打,不要錢的。”其實在學校外頭用激光打印,每張A4是3毛錢,到那家公司,就是6塊錢,不過因爲他是代理,就給他算4塊錢。

這時他才知道,有時候生意就是虧着本也得做。

一個月下來,絕影陪了15塊錢。土匪他們賣掉100多根筆芯。絕影還是覺得他算贏了。因爲他做了2筆業務。

這個月,他跟廣告公司那兩人也混熟了些。那兩人原來是一對,男的以前在她學校教書,女的就是他學生。後來因爲她,男的也教不成書了,於是就出來開了這麼一家廣告公司。

絕影打心眼裏佩服他,因爲能泡妹妹就是很牛B,如果能從學校泡到妹妹,那就更牛B了。因爲佩服他,跟他說了很多客套話,沒想到一客套,讓那男人更牛B起來:“想我堂堂一個程序員,現在卻在搞這個。唉……”

這時候,絕影才第一次聽到“程序員”這個詞。程序員是什麼?他不知道。他問:“程序員能找到教書的工作嗎?”

“當然,一點問題都沒有。隨便哪個學校都能教。想我那個年代,這城市有多少程序員,數都能數出來。我還報了高程,唉……差一點。”

能去教書當然好,因爲去教書纔有可能從學校裏泡個妹妹出來,纔有可能和他一樣牛B。這麼想着,絕影說:“我也想做程序員。”

“你不行,你連程序是啥都不懂。”

“我不懂,你可以教我,你不是很牛B嗎?”

“那是,可是好多年沒教書了。廢了。”

……

絕影和他暢談了一個下午,事情終於定了下來。那男人教絕影怎樣做“程序員”,報酬是每節課60塊錢,一節課是45分鐘。

談到錢的事情,大家都有點不快樂。絕影一週的生活費是100元,而那男人卻反覆說,當年我上一節課是80塊錢。“知道不,程序員的課,都是高級課,除了我,沒幾個能上這課的。”

人最怕聽到“高級”這個詞,比如“高級工程師”,“XXXX高級技術”。那東西,聽起來就是離凡人很遠的。聽他這麼說,絕影咬了咬牙,“好吧,就每週我過來上一節課。要些什麼東西?”

“一支筆一個本兒還有60塊錢。”

末了,他還補充一句:“程序員,還是有前途滴。”



回到學校,絕影跟土匪他們說:“我要做程序員。”土匪用很鄙夷的眼光把他打量了一轉:“廣告做倒閉了?”

“跟你們說了也沒用,你懂嗎?程序員比做廣告,那就相當於做廣告比擺地攤,十倍也。這是高級技術。以你現在的智商,跟你說了,怕你理解不了。”

這次,土匪換了種眼光,不是鄙夷,是懷疑。

週六,絕影去了廣告公司,說實話做代理這個事他實在撐不下去了。正好藉着這個機會向他攤牌:“沒時間,要學習,還要上課,代理的事情就先緩一緩。”

那男人也沒多說什麼,因爲讓絕影做代理他也沒賺到多少錢,還不如花45分鐘動動嘴皮子好。

第一堂講基礎,什麼是基礎?基礎就是“DOS”。什麼是“DOS”?“DOS”就是“Disk Operation System”“磁盤操作系統”。那男人這樣講着,“DOS”有些啥命令?往本上記。

絕影也不知道,只管往本上記,說實話什麼是“DOS”,他也沒見過。因爲那個年代,計算機早就被“Windows”佔領,“DOS”流行的年代,他還在念小學。但什麼是牛人,絕影知道:牛人就是坐在黑背景顯示器前,嗒嗒嗒往鍵盤上敲着字符,然後屏幕不斷地向下滾。這就是“高級技術”,或者“專家級工程師”。那男人說,“DOS”就是這玩藝。他想那要是這玩藝學好了,在土匪面前往電腦裏面把這些命令一敲,那還不迅速展現出他“專家級水平”。那比穿西裝打領帶遞上名片神奇十倍。這麼想着,他記得更認真了,並且堅定不移地認爲這60塊錢還是花的值得的。



從那以後,絕影總是抱着他那個本。雖然上面的東西,什麼“DIR”呀,“MD”呀,“RD”呀他早就背得滾瓜爛熟,但本還是每天都抱着,並且每天都在看。爲什麼?就是給土匪神祕感。他不懂,你越不給他看,他越覺得那技術真是“高級”。要讓他看到就這麼幾個簡單的命令,那還不被他笑死。

可寢室裏誰也沒有電腦,那感覺就像剛拿了駕照卻沒有車開――手癢。這個時候如果誰有電腦,在他面前這麼一坐,嗒嗒嗒往鍵盤上這麼一敲,屏幕網上一翻滾,肯定成偶像,誰叫他們什麼也不懂,做就要做別人都不懂的。不過這年頭,懂“DOS”的還真沒幾個。“Windows”害死人咧!

沒條件,只好紙上談兵,他對土匪說:“知道什麼是‘DOS’嗎?‘DOS’就是‘Disk Operation System’,磁盤操作系統。”有時候,你跟別人講出一個英文簡寫的全稱,會讓人對你刮目相看。比如大家都在說“TMD”,“NMD”,你跟他們說:“‘TMD’是‘戰區導彈防禦系統’,‘NMD’是‘國家導彈防禦系統’。”這樣保證引起別人的注意。現在的社會就是,誰吸引了眼球,誰就吸引了Money。



絕影又去上了2次課,他明顯感覺有點撐不住,因爲每月就剩下40塊的生活費。土匪問:“去上個課多少錢阿?”他總是說:“要什麼錢?就憑和我老師的感情……”你要跟土匪說45分鐘花60元錢,還不被他笑死,在絕影眼中,土匪就是一個只配擺地攤賣筆芯的粗人。話是這樣說,可是他自己感覺真的是越來越撐不下去。想想,程序員也是人,也還是要抽菸吃飯,總不能一個程序員活活給餓死吧。不去上課了,那也不行,那還是會被土匪他們笑死。因爲不去,就表示當初的決定是錯誤的,那個什麼程序員的神話也就是假的。

絕影不能輕易承認自己的錯誤,特別是這麼高調的錯誤。


他又去上了2次課,還是每天抱着他那寶貝本,這一天,土匪興奮地衝進寢室,對着絕影揚起手中一張單子吼道:“你神奇個屁呀,咱們馬上開程序課了,還有上機呢。”絕影拿過那單子,那是一張新的課表,星期二下午第二講和星期四上午第二講上寫着:數據庫原理與應用(宴斌)。下面蓋着教務處的紅印。

《瘋狂的程序員》3

這個宴斌,大家都說長的像劉儀偉。後來看了《天天美食》絕影才真覺得劉儀偉和宴斌簡直一模一樣。所以你在腦子裏想想《愛情呼叫轉移》的那個俏皮的天使,就能知道宴斌的模樣。

《數據庫原理與應用》實際就是《數據庫應用》,像“原理”這麼高深的東西,不能說,不能說,說了你們也無法理解。這話是宴斌自己說的。

開發工具用的VFP,也有人叫VP,絕影還是喜歡叫“Visual Foxpro”,還是因爲有時候,你跟別人講出一個英文簡寫的全稱,會讓人對你刮目相看。宴斌說這東西很好用,拿微軟的廣告語來說:Nothing run fast than fox。

絕影特別羨慕宴斌,首先是因爲他可以一邊望着投影儀,一邊往Command窗口中敲打命令――不是敲打,是遊走,彷彿並不是用手指頭去敲打命令,而是命令是爲他手指頭的遊走而設計。唯一不一樣的是引號:如果一個命令包含一對引號,他會先打上兩個引號,然後再往中間插入字符。

後來絕影知道,宴斌的指法還是不標準的,他不能用左手的SHIFT和右手的引號配合,而總是用右邊的SHIFT,這樣打,可以減少指法的亂套的次數。



又去學了幾次“DOS”,絕影決定再不去。他感覺自己還真有點傻,微軟已經把“Windows”升級到“XP”,連那個DOS窗口也只不過是個虛擬機,要早兩年,他在電腦前面這麼一坐,嗒嗒嗒往鍵盤上這麼一敲,屏幕網上一翻滾,肯定成偶像,但現在,別人只有可能嘲笑你那486的老爺機應該淘汰了。時代在改變,技術和人們對技術的看法也在改變。比如早二三百年,唱歌跳舞的都是下九流等於是做雞的,現在那職業都是大腕阿,哪個不是後面跟一大羣“粉絲”;再早二三十年,穿百大掛的都是“救死扶傷”的天使,現在卻成了人見人怕的“魔鬼”;再早二三年,穿西裝打領帶的都是牛B的白領,現在都成了賣保險搞推銷的代名字。

而且那男人雖然長像厚道但心也太不厚道,60塊錢一節的學費足足頂得上重修一個學分,等於他每週去他那裏重修一個學分。起碼在學校裏重修了還有張成績單結業證,他那裏就連個評語什麼也沒有。

不去,一定是要有交代的。他跟土匪說:“已經結業了。憑着我的激情和智商,普通人練一二百年的上乘武功,我也就一兩年。那老師都說了:教到這,已經沒法教了。”土匪只是對他微微一笑,仍然用鄙夷的目光打量着他,彷彿今天的結果,正好證明了他當初的猜想。儘管在絕影心裏,總覺得土匪笨得無可救藥,但有時候不得不承認,土匪還是有很多正確的思想。

他跟那男人,什麼也沒說,在他那邊看了,這人昨天還好好的,今天就人間蒸發了。



大家都覺得《數據庫原理與應用》這課是門雞肋課,每週就兩講,還只有兩個學分。在這個大學裏面,或者說這羣人裏面,往往用多少多少學分來評價一門學問的重要性。比如《高等數學》,多達六個學分,那麼誰都不敢怠慢,因爲考不及格的重修費是60元每學分。

什麼是雞肋課,就是每個人都在他自己的課表的這門課旁邊標註一個“可曠”或者“選修”。至於怎麼過考試,大底有3種辦法:一、正道:認真上課,老師講什麼記什麼,老師寫什麼抄什麼,老師勾什麼背什麼;二、小道:考試前一天,有錢人將課本縮引,成本在十元錢左右,沒錢人抄寫課本,字跡工整,井井有條;三、旁門左道:藉口問一高深的題目接近老師,飯是一定要請吃的,有可能還要送西瓜或者煙,錢一定不能送:首先作爲學生你送的那點錢還不夠老師買兩包煙,他看不上,再有就是送錢的性質惡劣,比如你拿板磚砸傷一人,那充其量就算打架鬥毆,違反《治安管理處罰條例》拘留15天。要是你拿刀捅人了,那刀可是兇器,故意傷害罪,最少入獄3年。

說實話,絕影對這門課還是比較失望,那課本的15章標題明明是《簡單的程序設計》,但宴斌說期末考試只考到14章,好像宴斌故意跟他有仇。雖然離放假還有一個多月,但期末考試題目已經出來,讓所有人大吃一驚:用Visual Foxpro做個簡單的通訊錄。這根本不在上面三點應付考試的辦法當中,打倒一大片阿。

大家恐慌了。

絕影不怕。

自己往後看,什麼是程序?書上說“程序就是把一系列命令合起來”。書的最後一章是個例子:《簡單的人事管理系統》,從隨書光盤打開那個例子,絕影的手在抖。那明明就是個軟件,就像他平時在電腦上看到的Word,Visual Foxpro一樣,都有個窗口,有菜單,點點鼠標,居然有反應。這簡直跟黑洞洞的DOS窗口有天壤之別。你要有一天,忽然做了這麼把“簡單”的通訊錄做成這個樣子,拿給土匪他們看,他們肯定會驚得目瞪口呆。

這就是程序員。絕影一邊看一邊想一邊忍不住哈哈大笑,這時候對宴斌又有了點好感,要是把課往後面一講,大家都能做這麼個出來,就沒那麼大的震撼效果了。

要做別人做不到的。



“小時候家裏窮……”絕影跟朋友聊天總喜以這句開頭,小時候家裏窮,現在怎麼怎麼樣,這樣話題一下就可以展的很開。所謂“放之四海皆準”,就是和VB裏面的萬能變量一樣。

不過那時候的確也很窮,35個人一個班,人人寢室裏的電腦桌都空着,上機課又相當於學駕照:雖然學駕照就是學開車,但往往要幾天才能看到一次車,而且你剛上去連檔都沒推上去後面的人就不停的說:好了好了,你已經可以了,把機會留給我們。

沒有條件創造條件也要上。去網吧。

網吧好,又有空調,冬暖夏涼。絕影大大咧咧地做過去:“網管,給我找臺有光驅的機子。”有些網吧好,還有那麼一兩臺CS服務器有光驅,他就把Visual Foxpro的光盤小心翼翼地交給網管,讓網管把裏面的東西弄到他這臺機器上來。大部分網吧都條件簡陋,沒有光驅,就從網上下。Microsoft的主頁上就能下到Visual Foxpro,6.0的版本,還英文版的。所謂便宜沒好貨,既然都免費下載了,難道絕影就沒想到Visual Foxpro最終會倒閉,沒有前途的。

網速好,可以2個小時下載出來,裝上就可以做一個通宵,說不定明天來都還在,那時候網吧根本沒有什麼“萬象管理系統”,“還原精靈”,對於大多數Windows 98的系統,甚至按F8啓動到DOS下面,就可以直接把C盤Format掉。



半個月,絕影天天這樣跑着網吧,土匪也天天跑着籃球場。土匪他們不急:車到山前必有路,試肯定要考,東西肯定也要教,但是法不責衆,每個老師每月期掛的學生人數是有指標的,自己還不一定這麼倒黴。

再過半個月,絕影終於等到這一天,就是他揚眉吐氣的一天。這個有窗口,有菜單,可以用鼠標點,可以弄成一個exe,隨便拷貝到哪臺機器上――當然,要先裝Visual Foxpro――都能運行的通訊錄誕生了。

他小心翼翼地把這門個1.3M的exe壓縮好,拷貝到磁盤,回想起這一個月來的種種困難,有3點:一、如何去掉運行時那個Visual Foxpro窗口。在網上查了資料,可是沒有。那時候的網可不像現在,要什麼有什麼,甚至連叫雞的電話都有。沒辦法,給宴斌發個郵件,自從發了那封郵件,宴斌就成了他心目中的偶像。爲啥?他竟然回了郵件,並且還告訴他怎麼做。二、如何調用API。調用API,那可是Visual Foxpro裏面的高級技術,因爲太高級了,其實他也沒弄懂什麼是API,你能想像API竟然是Armor Piercing Incendiary嗎?不過書上有例子,依樣畫葫蘆。這一調用,就可以把當前時間顯示出來,也就在通訊錄裏面多這門點附加功能。三、如何把那東西弄成exe。想像一下,要是每個軟件運行的時候都要你先裝上Visual Foxpro,把它打開,然後把你那一大堆項目文件裝載進來,再點“Debug”或者“Run”,那不把人都累死,那還不如自己拿紙做的通訊錄記好了。好在這個問題也不難,書上最後一章。做成exe,表示他已經把這本書能講的全學了,也算功德圓滿了。

這次他很鄙夷地看了看王江做的通訊錄,雖然王江經過他朋友一個學期廣告製作的培訓,在IT界也算有點名氣,而且功課的成績也很好,但在他看來,王江做那個通訊錄也不過爾爾。當然,這就許就是宴斌心目中標準的期末考試答案。他幻想着當宴斌打開他的磁盤,雙擊鼠標運行,立刻露出的驚訝的表情。所以,他很有道理用鄙夷的目光來審視王江的期末答卷。



陸陸續續的開始交期末考試答卷。絕影是最早的一批。於是和交答卷一樣,陸陸續續有人來找他,他也就陸陸續續地出名了。
“做程序員就是好。”絕影這樣想,他的第一個夢想實現了。

《瘋狂的程序員》4
王江向來對絕影腹誹就很多,眼看這學期的風光又被絕影搶盡,心裏很是不爽,他是一個不甘於位居第二的人,顯而易見,一處和二處就有本質上的區別。他鄭重地告訴大家,他要買個電腦。

這是一件振奮人心的事情。王江往寢室搬電腦的那天,樓梯走廊和過道都圍滿了人,就差給顯示器上戴朵大紅花。雖然到最後在這棟樓裏,電腦已經普及到幾乎人手一臺的地步,而且檔次越來越高,但人們的心裏,爲啥要追求處女和美女,往往只有第一個和最貴的一個能給人留下深刻印象。

要麼你做第一個,要麼你做最好的一個,其他的都沒啥大意思。

王江第一次點亮電腦的時候,絕影看見顯示器左上方顯示了個32M,他終於可以鄙夷地對王江說:“才32M內存,那也太垃圾了。”王江什麼也沒說。

很多時候就是這樣,不需要錢的人往往有錢;不需要美女的人往往周圍美女成羣;不需要電腦的人往往有電腦。就這樣人把大好的資源都給霸佔了。絕影知道他比王江更需要一臺電腦,但他不能問家裏要,要也不會給。從小到大,他學的就是學校教的,什麼奧數阿,少年宮阿,鋼琴阿,畫畫阿,這些增值功能,父母都是不可能同意的,當然,父母會很贊成,但是不同意。比如現在手機,給你訂一大堆彩鈴阿,GPRS阿,天氣預報阿,笑話阿,你心裏自然也十分不爽。

絕影老說:“事已至此,不必難過,好在天無絕人之路。”果然天無絕人之路。學期結束的時候,他得到一個打工的機會。



工作是在一家超市裏做“辦事員”。 “辦事員”聽上去挺不錯,至少比叫“服務員”好。上班的第一天,課長跟他講:“你就做‘辦事員’,‘辦事員’上面是‘組長’,‘組長’上面是‘課長’,‘課長 ’上面是‘處長’,‘處長’上面的你就不用知道了。下面的必須完全服從上面的安排。當然,可以保留意見,但不得當面頂撞。”

“那‘辦事員’下面是什麼?”

“‘辦事員’下面沒有了。”

正視現實,現在隨便一個搞推銷的,都會自稱 “銷售顧問”。絕影這樣想,覺得待遇也不錯,每天20元的工資,還能管一兩頓飯,關鍵是自己還是大學生,跟這羣“辦事員”比起來,他還是有些莫名其妙的優越感。特別感覺自己《數據庫原理與應用》拿到了90分的高分,別人問:“學啥的?”他就可以大大咧咧地說:“搞數據庫的。”

處長說:“今天第一天,就上個通班吧。”那語氣,彷彿上通班就是對他照顧有加。當天,絕影就發現他上當了,本來這工作是兩班倒,所謂上通班,就是早班和晚班一起上。他想去爭取點加班費,因爲這樣實在不公平。

處長說:“新來的吧,難怪不懂規矩。上通班鍛鍊人,懂不。頭髮剃了,搞服務行業的,不像樣。”

第二天,絕影6點就起牀了,晚上回家是11點。人躺在牀上,就像散了架。好在一個月很快就過去了。

在這一個月裏,發生了幾件重要的事情:

一、旁邊部門負責賣“紅泥花生”的花生妹跟他說:“我喜歡你。”

二、在超市裏碰到一次自己的輔導員。她說:“聽宴斌說你計算機很不錯阿。”

三、在超市裏遇到了自己初中的暗戀的女同學。那可是個才女,正因爲是個才女,所以班主任棒打鴛鴦,讓他請了家長。那女同學很惋惜地看着他,問:“你現在怎麼這樣?”她想他應該沒有唸書了。他很平靜的說:“這樣也有很多樂趣。”她要他的電話,他沒給,他說他們以後也不會聯繫的。

四、課長讓發給他一張農行卡,裏面有600元人民幣。

離開超市的時候,絕影在那一剎那決定信仰馬克思並且決定信仰一輩子,他真實具體地體會到資本家是如何榨取工人的剩餘價值。



拿到600塊錢,絕影媽媽又給了他600,因爲之前說好,只要他去打工,媽媽也再給他開一份工資。他用這1200大洋換到了他人生中的第一件大件:一臺嶄新的賽揚366二手電腦。第一次點亮電腦,他看見顯示器左上方顯示8M。賣電腦的不斷跟他解釋這8M是顯卡顯存不是內存。現在他才意識到王江的32M,他又輸給他了。那天晚上,他把電腦放凳子上,自己躺在牀上,給機器裝了個Windows XP Profession,裝了兩次,一夜沒睡。



開學的時候,又有幾個人的電腦桌上擺了電腦。絕影跟別人說機器是從家裏搬來的,因爲別人的機器都是新機器,而且在那一年,Windows XP和P4普及已成事實,你要跟他們說你用的賽揚366而且還是二手的,那還不被人笑死。嚴格的說,絕影非常慶幸電腦沒有實行年檢和強制報廢制度。

一輛寶馬7X,你敢開230Km/h的速度在馬路上跑麼?不敢。奔奔呢?是奔奔就敢,只要人不出事,別說跑230,就是跑320都不怕?什麼是牛B?把衛星放上天那不叫牛B,把汽車放上天才叫牛B。所以,絕影就經常在他那賽揚366上快樂地跑着極品飛車。

可好日子總是那麼短暫,他的機器終於點不亮了。好在還算是正規渠道購買的,去找他,那賣電腦的人看來也經驗豐富。拿幾個卡往上面一插:“BIOS壞了,重新刷個吧,估計中了CIH病毒。”

刷個BIOS 30塊錢,可機器總是隻能堅持那麼幾天,看來這CIH確實恐怖。網上去查,說CIH只感染Windows 98。絕影又覺得上了大當,看來這機器也不能再叫那人去弄,自己來拆。拆開機箱,他又體會到第一次打鍵盤的感覺――生怕不小心碰個按鈕電腦就爆炸了。其實都沒他想的那麼複雜,沒想到把機箱拆了又裝上,機器居然又點亮了。



晚上睡覺的時候,土匪問他天天對着電腦最近在幹啥。

“研究CIH。”

“算了別浪費時間了,還不如花點時間去泡妹妹。強哥他們班上唯一一個妹妹轉學;昨天開會的時候沒戴眼鏡,居然跟電子班上那個恐龍坐到一排,後來差點把我嚇死……”

“你不懂。研究CIH,準備做病毒了。”

“你那點水平我還不知道,你忽悠別人行,騙不了我,裝精!”

“裝精”這個詞好像是土匪專門爲他發明的。他就怕他說這個詞。他想不給他展示點大才華他是不肯就範的。

“你懂麼?CIH,唯一可以攻擊硬件的,通過中斷門還是調用門進入0環……”他這樣說,其實都是網上講的,中斷門調用門0環是啥?他也不知道,他想直接跟他說“Call Gate”,“Ring 0”,覺得這樣太抽象,不專業。那時候,對他來說所謂研究“CIH”其實就是在網上看看什麼是“CIH”,怎樣避免中招。

“我要做個病毒,就藏電源裏面,電源總不會斷電吧,哈哈。就一直藏那裏面。”

他說的時候,也做着這樣的夢:有一天,他可以做個病毒,藏電源裏面,電源總不會斷電吧,哈哈。就一直藏裏面。

直到有一天,他看到一篇文章上面寫着:請記住,病毒永遠不可能藏在電源裏面。

他想:這是爲什麼呢?

《瘋狂的程序員》5

週五晚上,絕影和往常一樣回家。這是他和他們這些大學生唯一不同的地方:他家和大學在一個城市,每週五就可以回家。這樣做的好處有兩點:一、每週只有五天要用生活費;二、可以不用自己洗衣服,冬天的衣服,直接穿回家換就好了,夏天的,打包回家換。

這周過來,他和平時有點不一樣,土匪見他提了兩本書,一本《魯迅雜文全集》,一本《PC彙編語言程序設計》。

土匪對這兩本書沒都沒啥興趣,他喜歡看武打小說,是“武打”小說,不是“武俠”小說。雖然“打”和“俠”只有一個字的差別,很多時候人的水平都是在一個字之間體現得淋漓盡致。

兩本書都不算厚,《魯迅雜文全集》本來就是家裏的,因爲現在流行拉屎最低配置:晚報一份;建議配置:體壇週報一份+草紙一張;豪華配置:中華一根+花花公子一本+草紙若干。無非就是嘴上刁和手上拿,中華絕影肯定是抽不了,樓下的小賣部根本沒有賣中華的;對於手上拿的,他認爲報紙肯定沒有書好,寢室那個小小的廁所,當你把報紙鋪開後,根本就沒有其它餘地了。而書架上什麼稍微有意思一點的書要算《思想道德修養》,這本書已經快被翻爛了,其實很多人上學期的《思想道德修養》學習都是在廁所裏完成的。不得不看《高等數學》、《普通物理學》這些,難度可想而知。《高等數學》還算好。最不服氣的就是《普通物理學》,連這也叫“普通”,那妓女的都可能是北大清華畢業。

《PC彙編語言程序設計》是星期天去書店買的。小時候媽媽不準絕影出去玩問他去哪裏,他說:“去書店。”這樣媽媽就會放他出去。星期天媽媽問他去哪裏,他說:“去打遊戲。”這樣就出去了。他覺得有點可笑,真的去打遊戲的時候要說去書店,真的去書店的時候就可以說去打遊戲。



買這本書,他其實下了很大決心。早在開廣告公司那男人那裏學習時,他就已經學到:編程語言分爲:“機器語言”、“彙編語言”、“C語言”……他回想起念初中的時候,班裏就有幾個有錢人家的孩子去少年宮學計算機,學什麼?就學的C語言,上完了就回來跟他們背copy con autoexec.bat…….

他問:“啥語言最難?”

“機器語言。”

“那就學機器語言。”

“沒用,學那玩藝,比如你自己坐在‘奔馳’裏面,前面再套兩匹馬給你拉車。那是不僅費力不討好的事,關鍵是還被人恥笑。”

“那就學彙編語言。”

那男人就沒再說什麼,只對他笑了兩聲。

對絕影來說,要麼就做第一個,要麼就做最好的一個。當你已然做不成第一個,那你就努力去做最好的,要是你感覺也做不到最好,那就不要做了。現在姑娘的心理就是:她深深地愛着她認爲最好的男人,但心裏永遠想着她的第一個男人。她沒有錯。

現在他有個絕佳的做第一的機會:在這個班、這個專業有可能整個學校,應該還沒人能用彙編語言寫程序。所以這一次他不惜一次性花掉半周生活費買了這本書。交錢的時候,他迅速打量了周圍的人,有人拿着《天龍八部》,有人拿着《第一次親密接觸》。他十分體面地把這本《PC彙編語言程序設計》往收銀臺上一放,擲地有聲,收銀小姐以爲他對長時間排隊有很大意見,一邊跟他說對不起,一邊迅速打單。



這是絕影買的第一本關於編程的書,雖然上學期學了《數據庫原理與應用》,他也想買幾本書來提高提高,奈何那種書頁數和價格都太離譜,平均下來每頁0.15元,截圖大概佔到10%。

但是土匪仍然無情地對他進行了打擊,對土匪來說,能夠成功地無情打擊別人是他最快樂的事情。人無非有兩種方法提高自己,一是真的提高自己,二是打擊別人提高自己。自從上次絕影去廣告公司學習“DOS”失敗,土匪更可以以事實爲基礎,有理有據地對他進行打擊。這次不僅是土匪,王江也發動了強大的攻勢。

自從絕影也有了電腦,王江改變了自己的戰略,不再在《數據庫原理與應用》上跟他鬥,他成功轉型到平面設計上,他有個朋友會廣告設計,這是得天獨厚的優勢。並且平面設計這個東西本來就是從視覺上震撼別人。所以王江的轉型相當成果。對一個搞平面設計成果的人,書架上擺幾本《Flash設計與製作》,《Photoshop入門與提高》那是相當正常並且能跟自己的身份很好配合的事情。現在寢室夜談要討論的重點就是:對於絕影這樣的人,往書架上擺《PC彙編語言程序設計》是不是賣弄或自我炒作。



據說《相對論》剛剛出來的時候世界上只有三個人能看懂它。人生最大的痛苦莫過於沒人理解你。絕影沒法跟他們講“技術”,因爲他們根本就不懂“技術”。比如你跟豬講《普通物理學》,要是豬能成功計算出殺豬刀進入身體時力量有多大,壓強有多大,能夠通過給定的豬皮的厚度和強度計算出自己應該以多大速度向後緩衝才能成功讓殺豬刀無法穿透豬皮,那麼你就可以跟土匪和王江講什麼是彙編語言,爲什麼要學彙編語言了。

所以對於這些人,要讓他們閉嘴唯一的辦法就是拿出成果來讓他們看。雖然全世界大部分人都不懂《相對論》,但用那理論做出原子彈了,全世界的人就都相信它。

領導都說:“頂着壓力上。”學習應該是很值得提倡的,絕影沒想到現在學習也要頂着壓力上。他看那本《PC彙編語言設計》,前面幾張都很無聊,後面有些例子,當初他買這書的一個重要因素就是這書裏面有很多例子。什麼進制阿,原碼反碼補碼阿,他還是沒搞懂,雖然這學期《計算機文化基礎》也講這些,但是他還是沒懂。他有時候有點恨最早設計計算機的人,他不知道是誰,就恨馮.諾依曼吧,書上都說幾十年了,計算機一直都用馮.諾依曼結構,這個是考試常常要考的,就恨他吧。他恨他:人的指頭都是十根,十進制好端端的,爲啥非要在計算機裏面用十六進制阿,二進制阿這些抽象的東西,送進去要轉換一次,算出來還要轉換一次,那不是沒事找事嗎?

再有就是1024的進制,廣告公司那男人跟絕影說:“計算機裏往上進都是1024,1024是1K,1024K是1M,1024M是1G,G往上還有T什麼的,不過說了也沒用,現在硬盤阿,內存阿還沒達到T計數的水平。至於爲什麼進位是1024,等你結業的時候再來問我,那時候我再來告訴你。”後來絕影沒去找他,自己給自己結業了,也就失去了知道這個進位數值的機會。不過那堂課對他還是用有的,至少讓他知道現在造硬盤的,賣硬盤的都是奸商。你跟他說:20G的硬盤,實際按照1024一除,不過18.6G。他們忽悠人最成功的地方在於他的算法肯定也是對的,而且是大多數甚至所有人的計算方法。

再往後面一點講些簡單的指令,什麼數據傳送指令這些,讓他找到一點感覺。有句話說的好:“來”是come“去”是go,“是”yes不是“no”,英語就是順口溜。mov就是傳送數據,add就是加sub就是減。這一切簡直太簡單了,不用理解,就算全背下來又如何。當然,這都是“簡單的指令”。到後來的尋址方式又要人命。十六種尋址方式,那名稱又不像mov,add那樣簡單,不是不簡單,簡直是繞口:什麼基址變址後面居然又有相對基址變址。

首先他就不明白什麼是尋址,爲什麼要尋址。偏偏書上說這點又很重要。這就好比驢拉磨:驢蒙了眼睛去拉磨,只曉得往前跑,不知道爲什麼。這是最痛苦的事情。就像中國大學的大部分教材,根本不告訴你爲什麼要這樣,爲什麼要這樣我們下幾章再講,不明白就死背,背了又不理解,這一章不理解下面幾章就更不理解,下面幾章更不理解就根本不明白爲什麼要這樣。最後到頭來整本書學完了也就一鍋粥糊里糊塗知道里面有些啥東西而已。

這章確實把他弄的很頭痛,以至於很長一段時間,問他在幹啥,都說:“在研究尋址方式。”他愛不愛用“學習”這個詞,愛用“研究”。因爲很多東西他覺得他都是自己在學,沒人教他,自己學,就叫“研究”。

絕影想認真研究,不能搞成一鍋粥,他想:先放一放吧。

這一放就放了一學期。

《瘋狂的程序員》6

在這學期裏,絕影他們班上又出了個不得不提的人物――雞哥。

雞哥本來長相很老實,也就是“中國傳統式的農民”,但他的不安分和他的長相成鮮明的反比。他老爸極其神祕,是個有正當工作並且很有錢的人,這樣來看,莫非是XXX銀行行長。後來絕影也有機會見到了他老爸,他和他老爸唯一的區別是他有個好老爸,而他老爸沒有。

毫無疑問,雞哥的電腦在班上甚至這棟寢室都是最好的,那19寸的Samsun顯示器就充分說明了問題,據說是CPU還是P4 1.7G的。絕影在心裏算,自己的366MHz,他那運算速度就比自己的快4.75倍,就算冒死超頻超到800MHz,也比人家慢2.17倍,而且還光死機。所以說什麼程序上的優化啊,都抵不上有錢,有錢就是最好的優化,現在說什麼效率就是金錢,其實金錢就是效率。

雞哥曾經私下裏找過絕影三次,表明自己要走IT發展線路的心跡,他說劉備也就三顧草廬差不多了。絕影說《出師表》那是文言文,文言文,“三”是多的意思,上了二都叫三,那意思是“多顧草廬”。他不想跟雞哥講關於IT的事情,道理很簡單,現在很多人不得不找他,因爲除了他,就沒人可找。還記得高中歷史裏面講爲啥中國必須走人民民主革命,走社會主義道路而不能走資本主義道路麼?在中國不是沒人嘗試走資本主義道,那是因爲外國資本主義、帝國主義不允許中國走資本主義道路強大起來。他不能讓雞哥走IT道路強大起來。因爲他還清楚的記得那次《計算機文化基礎》上機課班花的機器突然不行了,DOS下打什麼命令都是“Memory Overflow”,找到他,歪打正着敲了個“exit” 進去居然就弄好了,班花對他深情地說:“高手就是不一樣。”因爲有“高手”這個詞,又因爲是班花,又因爲是“深情”,絕影心裏舒坦了一週,想在廣告公司那男人那裏花的錢也還有點用,這不找回了點投資。你想要是把絕招都教給雞哥,以後班花對他視若無睹把這詞送給雞哥了,那不等於自己搬了石頭砸自己腳。

雞哥碰壁了幾次,自己也覺得沒啥希望了,覺得一個人幹,還是靠自己踏實些。像絕影那樣搞程序,沒前途,自己做不了第一個,估計也做不了最好的一個,因爲他心裏清楚他不可能有絕影那麼多時間來看書,來研究。像王江那樣搞廣告設計,也沒前途,自己的專業是理工科,這東西大家都不會用,不會用的東西你學了也沒用,一不能讓你出名,二不能給你帶來經濟利益。

最後琢磨着,搞系統算了。雞哥還是比較有預見性的。照現在的趨勢,計算機的普及大一點說在中國,小一點說在他們班都是必然的。有大規模的普及,必然對搞系統的人才有大規模的需求,自己就在這上面迅速搶做到第一。

事實雞哥的想法和做法是相當正確,就在這一學期間,計算機像爆發一樣迅速在班上普及開。原因有二:一、現在人們的生活水平提高了,而且大部分都是獨身子,花幾千塊錢買臺電腦爲自己的兒子女兒裝飾一下寢室那張電腦桌已經不是什麼難事,而且在那個網絡遊戲並不是很普及的年代,家長們還一門心思認爲電腦只是個學習工具,可憐天下父母心;二、據本專業上一級傳來的消息,大二上學期極有可能要開程序設計課,應該是C語言。

說實話,望着雞哥那經常出入女生寢室的身影,絕影有說不出的羨慕。從念大學到現在,他在女生樓下站的時間加起來沒有超過5分鐘,在女生寢室裏站的時間加起來爲0分鐘,因爲學校有規定,男生不得進入女生寢室。

雞哥有着很正當的理由進去:裝電腦。你想一臺電腦搬回寢室,先擺好位置、接線、弄電源、裝操作系統、裝軟件,這樣一弄下來,還不一兩個小時。雞哥就可以在女生寢室充分欣賞裏面的風光,回來後跟大家說:“知道女生書架上一般擺什麼嗎?知道女生是如何晾衣服的嗎?知道女生上電腦都幹啥嗎?”

絕影還清楚地記得有幾次在路上碰到雞哥,腋下夾本書,問他:“上哪去?”雞哥平靜地說:“裝系統。”

後來絕影一直鄙視他說的內容和他當時說話的神情,鄙視了四年。



電腦普及開了,網絡也隨之普及。中國電信這次腦子還是轉的很快,在第一時間爲這個學校的學生推出了一個套餐:40元每月每2G流量。意思就是,交40元你就可以上一個月網,但是流量不得超過2G,超了就停網。

2G,放到現在還不整死人,隨便一部好一點的DVD就1,2G還不算聽歌打遊戲下載些無聊的東西。不過你要理解在那個BT和P2P還處於試驗階段的年代,2G仍然算得上是“海量”。

網絡普及開了,問題也隨之來了。這個問題――現在的程序員喜歡稱爲BUG――最早是王江發現的,這天,他打開電腦,還沒撥號居然就可以上網。那一天,王江的電腦一直開到晚上11點寢室熄燈,整整下載了300多首MP3。

後來絕影也有個重大發現,原來整個學校所有上網的機器都在一個局域網中。這也是個重大的發現,上網搜一下,有個叫“藍精靈”的小工具,大概就是“LAN”什麼什麼的,可以探測局域網中的共享。他拿這玩藝跑了一天,有時候差點笑死,這居於網中,學習資料啊,毛片啊,照片啊,MP3啊,電影啊,什麼都有,特別是從幾個女生的機器中搜出的QQ號碼聯繫資料,讓他如獲至寶。他就覺得好笑,好端端的爲啥要把這些資料放共享裏面,而且還不加密碼。不過話又說回來,即使在今天的中國,仍然有很多人犯着這樣的錯誤。犯這樣的錯誤不要緊,要緊的是他們往往還附和着去怪微軟操作系統存在巨大漏洞和安全隱患,好笑這些資料是Windows XP發到絕影手上去的。

那以後,他們幾個天天開着電腦等免費上網,沒免費網的時候就用“藍精靈”去局域網上淘淘寶。中國人和外國人很大不同就在於外國人總想是熱衷於在第一時間把自己的新發現公佈出來以此向廣大人們羣衆展示自己的水平;中國人往往喜歡把自己的新發現陰在心裏,自己偷偷壟斷享用,唯恐被第二個知道,公佈出去,相關部門肯定馬上解決,到時候自己也享用不成。

不管怎樣,紙包不住或,沒多久,免費上網的問題還是暴露開了,相關部門果然立即着手解決了問題。絕影和王江他們幾個是定了攻守同盟,肯定不會泄漏,想是讓其它人發現並上報了。局域網共享的問題電信還是沒有解決,只是在樓下宣傳欄張貼了通知,大意就是說請保護好自己的資料,設置密碼,不要輕易共享,即時升級殺毒軟件。這樣看來,當時學校上網的技術應該是小區寬帶,電信根本無法解決大家都在一個局域網內這樣的問題。可是,這個小區寬帶竟然囊括了整個近3萬人的學校,也太大了。



後來絕影想還是要感謝電信的忠告,因爲他自己的機器就中了兩次病毒。他承認他是開了幾個共享,那共享名都是騙人的,什麼“XXX18禁呀”,“XXXX科目期末考試題”呀,其實裏面什麼也沒有,他也不知道怎麼就中了病毒。

病毒這東西就是厲害,一個人發現了,沒多久,打死一大片。這下雞哥可成了大紅人,頻繁出入於女生寢室,男生這邊要找他,還得裝孫子請他吃飯喝酒,明明他吃了喝了,可是完了還得跟他說謝謝。沒想到裝系統的也能這樣牛B。

絕影和王江他們堅決不找他,大不了自己重裝,雖然重裝系統很耗時間,但是坐在電腦面前看下面的進度條不斷前進,上面的倒計時不斷減小,也覺得十分充實。

兩次中病毒的教訓還是讓絕影吸取了經驗,他馬上花了98元大洋買了套正版金山毒霸。錢是學校退的上學期書費,本來他是想等到放假的時候用的,因爲一旦放假,媽媽就不會給他生活費了,這也就意味着他要斷煙。

那金山毒霸用戶授權書上寫着:本軟件限一臺機器使用。後來,絕影的那套至少裝了10臺機器。



從那以後,絕影對病毒有了新的看法。CIH是破壞力大,但現在都上XP了,也就沒用武之地,沒用武之地那破壞力再大也沒用,所謂好的病毒,就是要“持續時間特別長,波及範圍特別廣,破壞力特別大”,這是高中歷史上講20世紀30年代資本主義經濟危機時用到的詞,絕影覺得用在對好病毒的評價上剛剛好。

所以病毒再好其實也沒用,沒人種病毒,病毒就沒用。想到這裏,他一直琢磨最近在網上研究的局域網入侵,那上面就說的特別懸,說什麼黑客能進入你計算機,控制你計算機,還可以控制你鼠標怎麼動,控制你開機關機。要正能這樣,給他種個病毒還不易如反掌耳。黑客聽說過吧?誰沒有聽說過,記得他把電腦搬到學校的第一天,爸爸就給他說:“注意了啊,別去搞黑客,要被抓的。”

絕影覺得爸爸太有才了。他決定去做黑客。

《瘋狂的程序員》7

越是神祕的東西人們就越好奇,越好奇就越羨慕。爲啥老說別人的老婆比自己的好,膚淺地說是因爲“審美疲勞”,有深度一點,那是因爲你天天對着她,早沒了神祕感。比如黑客。黑客是啥?其實黑客還不是人,還不是要吃飯睡覺泡妹妹。但是因爲他神祕,爲什麼神祕?因爲你不知道他在幹什麼,更不知道他幹那些是用的什麼技術方法,但是他又能幹些你想都想不到的事情,所以好多人就羨慕黑客。正如魯迅先生說的:“看不懂的文章,至少別人不會說是壞文章。”

絕影也是羨慕黑客中的一員。與其去羨慕別人,還不如讓別人羨慕,所以他立志要做個黑客。

他要做一個黑客,就真覺得自己是一個黑客。每次當他看《黑客文化》、《黑客守則》、《黑客精神》的時候他就熱血澎湃,自信心極度膨脹。因爲做黑客不像入基督教那樣還有一大套儀式,所以他理所當然認爲自己已經是個黑客。他始終覺得自己比別人對黑客的理解要高得多,當大部分人認爲黑客是搞破壞搞惡作劇的代名詞的時候,他真實地理解到黑客應該是這世上充滿著等着被解決的迷人問題,他們包括他自己存在着是爲了發現更多的問題,幫助別人解決更多的問題,當做到這些,他感覺自己的內心得到極大的滿足。所以黑客精神有時候有點像雷鋒精神:人活着是爲了更多人更好地活着。

於是在網上,別人問他做什麼,他總說:請叫我黑客。事情往往是這樣,當你不是黑客的時候,總說:“我是個黑客。”但當你真正成爲黑客,你往往會說:“我不是黑客。”



沒有技術是做不了黑客的,至少別人不會承認。所以一定要學點技術。網上介紹黑客的東西可謂五花八門,絕影覺得太雜了,把黑客弄得不倫不類,說找漏洞,入侵,說的就像個賊。在他心中,黑客應該是大大咧咧走進別人系統,把漏洞全部找出來,然後很有紳士風度地給別人留一封信:你的系統存在XXXX漏洞,請儘快修補。落款是“絕影”。能進別人系統偷東西,那就是小偷;能進別人系統又不偷東西,那就是黑客。

網絡就是這樣,有好的,也有壞的,就比如MSDN,說他東西太多了,根本無從看起,但這也總比什麼都沒有的耗。所以對黑客的學習,絕影就停留在《黑客文化》、《黑客精神》這些東西上。直到有一天,他在食堂旁邊的書亭發現了一本雜誌。

本來絕影一般是不去書亭的,書亭的書都是花花綠綠,而且大多數都是爲了博看客一笑,比較適合上廁所用。這樣的書,絕影往往能在兩個小時內就讀完,而且還賣好幾大塊錢,絕影想:不化算。

這次不一樣,土匪吃過飯肚子突然痛起來,他認爲是食物中毒,但是絕影也吃了,什麼事也沒發生。他去上廁所,絕影在外面等他。從食堂到寢室有很大一段路程,還是等他出來兩人一起回去比較好。絕影沒事的時候,就去這家書亭轉轉,忽然讓他發現了一本雜誌――《黑客防線》。

這書一看就知道是黑書,因爲封面封底的主要基調都是黑色。好在絕影沒有被外表所迷惑,拿到手上隨便翻了幾頁。他震驚了:那是相當強悍啊。裏面都是牛人高級技術,雖然他什麼也看不懂,但憑感覺這也是相當高級的技術。

他來不及多看就大大方方地掏出10元錢大洋,放在老闆面前說:“就要這本。”

土匪出來了,問他拿了本什麼書,他說:“沒啥,雜誌一本。”

他不想跟土匪說買了本《黑客防線》,這樣土匪一定又會打擊他,土匪就是那種心理:自己不懂的,要盡一切可能讓別人也不懂;自己懂的,也要盡一切可能讓別人不懂。

回到寢室,他偷偷躲在牀上看這本雜誌,更加堅定了這是本好書的信念,因爲他看到這裏面有很多實際操作和例子,好多文章的標題都叫《一步一步入侵XXXXX》。對很多初學的人來說,依樣畫葫蘆是最好的入門方法。

雜誌裏面有張光盤,絕影小心翼翼地在F盤建立了依個目錄:“Hacker”,在下面再建兩個目錄,一個“Tools”,一個“Docs”。做完這些,他又小心翼翼地把那張光盤的東西歸類到這兩個目錄下。從此以後,他的這兩個目錄就在不斷充實着。後來有很多次要用某個工具或者閱讀某篇文章,他費盡心機從網上扒下來,卻發現這些東西本來就在他那兩個目錄裏面。



《黑客防線》的大多數文章對他來說還是太難了,比如上面講怎樣扒肉雞,以XXXX論壇爲例,有個什麼什特徵,就存在什麼什麼漏洞,絕影就去網上找,可哪裏找得到XXXX論壇,有這樣的特徵啊?所以大部分東西還是隻有紙上談兵。破解的文章還算比較好看,上面已經地很明白,破解XXXX軟件,版本多少多少,直接去網上找下來行了。破解要什麼?SoftICE是必裝的,壞就壞在SoftICE對Windows XP兼容性太差,或者是他機器本身就有問題,每次按下Ctrl-D那個調試窗口彈不出來反而弄得他死機。

最後乾脆把XP格式化掉,重新裝個Windows 98,SoftICE 4.01在上面跑起來順暢多了。不過破文還是看不懂,好在大部分作者非常照顧絕影這類的讀者,往往都在後面寫上:一個有效的序列號的例子是:XXXXXXXX。絕影用這些序列號去註冊軟件,真的能用。所以他機器上有好多註冊版的軟件,有的還是有用,但大多數他都沒怎麼用。



絕影一直學着黑客,他覺得老在自己機器上研究實在太沒勁了,比如你自己機器上有什麼漏洞,你肯定都去打了補丁,你自己去控制自己機器呢?那更無聊。大概研究了2個月,他決定去網吧試一下身手。

學校的網吧分兩種,官方網吧和野網吧。所謂官方網吧,就是學校自己開的,在計算機學院的辦公樓,網吧很大,大概有80多臺機器,除了可以正常上網,上面還裝一些學習軟件,比如Word啊,TurboC啊,有時候也兼上機課或者考試課。這還是比較好,因爲考試的時候,如果去正規的機房,起碼要8點鐘就去排隊,而且排到10點都不一定有位置。這時候,你就可以去這家網吧,花1塊5毛錢,理所當然地找個位置坐下,等你做完作業或者完成考試的時候,你還可以看見同學們還在那裏排着隊。

他覺得官方網吧比較好,因爲這裏的機器裝了很多軟件,有些還有光驅,而且因爲是官方的,如果做出了什麼實質性的工作就可以迅速引起轟動。

他去了網吧,很大方地掏出10元錢,跟網管說:“通宵。”

網吧不比自己的機器,啥基本的東西比如端口掃描啊,漏洞檢測啊這些東西都要自己下載。絕影還是大大咧咧把這些都全部下下來,然後一個一個運行慢慢搞,他想反正別人也不知道他在搞啥,他就嘲笑那些正打着紅警,CS的人,大好的時間和父母金錢都讓他們給浪費了。

在他自我感覺良好的時候,冷不丁的,網關在他身後冒了一句:“Hacker?”

這短短的一句話,給了絕影極大的震撼,因爲這種語氣和語調,是一種鄙視,嘲笑,還是輕蔑。那分明是在說:“你也搞Hacker?”或者“又是一個搞Hacker的?”

人幼年的心理陰影往往會伴隨着他成長,一直到他長大,一直到他老。對絕影來說,他正處在學習黑客的幼年,所以,在打今後的成長中,一直都伴隨着這次的陰影。以至於到最後,到現在,網管一直都是他最鄙視的職業:沒有一點技術含量,還自以爲自己就是做技術的。



有句話叫“無意插柳柳成蔭”,前段時間絕影逢人便說自己是搞病毒,可越說越沒人相信他,大多數還會露出鄙夷的神態或者恥笑他幾句。這次,極其低調地研究着黑客技術,可沒多久,大家都知道他是黑客了。

就有人慕名而來向他請教。

那是別專業的學生,計算機專業的,他不認識他們,但他們已經認識了他。這種被人認識的感覺相當好,後來我們往往說:“XXX,那個人我當然認識…….可是,他不認識我。”如果有一天,你跟別人說:“什麼XXX?我不認識,但是他認識我。”那種感覺,就是不一樣。

他覺得展示自己成果的時候到了,沒想到他再一次受到打擊。

他很熱心地回答他們什麼是黑客,怎麼學,學什麼,當然,這都是他自己的想法,其實很流於表面,不過他們倒是聽得頭頭是道。這種滑稽的場面,很像現在大部分外行領導內行的公司,上面的人說得眉飛色舞,下面的人聽個半斤八兩,也不管什麼,都只管一個勁的說:“對,對,有道理,說的太好了……”

最後,他們說:“給咱演示一下吧。”

這是絕影盼望以久的,比如學開車,你講半天那都是空話,就像嘴上刁根筆當煙抽,那都是過乾癮,非要真正上車去開一把,那纔算心裏一顆石頭落地。

絕影慢慢打開他的Hacker目錄,生怕打開快了裏面的東西一不小心都飛了。那幾人在旁邊也看得小心翼翼。等到東西真正露臉的時候,絕影沒聽到驚歎的聲音。他們說:“是這樣啊,那是別人做的工具。我還以爲你都是自己寫的程序來做黑客呢。”他們幾個對視幾秒中,大概覺得再往後看下去也沒啥意思,於是一起說:“久仰久仰,告辭告辭。”

絕影忽然覺得好失落。



但是他仍然沒有退縮,《黑客防線》還是一期一期買着,他那個“Hacker”目錄還是不斷地充實着。

有一天,他在一期《黑客防線》上看到一句話,就現在來看,這句話改變了他的一生。

《瘋狂的程序員》8

上面是這樣寫的:程序員是值得尊敬的,程序員的雙手是魔術師的雙手。他們把枯燥無味的代碼變成了豐富多彩的軟件……

絕影忽然感覺很震撼。他想起最開始的時候他爲什麼想做一個程序員?因爲程序員就可以去教書,教書就可以從學校裏泡妹妹出來,這是很牛B的事情。再想想,爲什麼要去學黑客,到底是自己追求黑客的那種精神還是爲了追求向更多的人展示自己,讓他們來崇拜自己。大部分時候,帶着不一樣的目的去做同一件事,結果往往大相徑庭。

他還是想做程序員。爲什麼?不是因爲這個職業是天底下最偉大的職業。你想,當你愛好着某件事情並且去做的時候,你心裏當然會非常舒坦。但如果這事情是你的工作,你不得不面對BOSS的面孔,不得不在規定時間內完把它完成,又不得不用做這件事來換取你明天吃早飯的錢,打車的錢,喝咖啡的錢的時候,你當然會感覺很累。所以有時候興趣固然重要,興趣能給你動力去做一件事,但最重要的卻是熱情,熱情能給你動力去一直做這一件事。

在中國,人多少都要受十幾年的教育,最後歸根結底,十幾年的教育也許就教會了你那麼一兩句話。對絕影來說,有三句話:一、把自己的東西分一半給小朋友。這是幼兒園老師告訴他的;二、實事求是。這是高中哲學老師告訴他的;三、程序員是值得尊敬的,程序員的雙手是魔術師的雙手。他們把枯燥無味的代碼變成了豐富多彩的軟件。這是《黑客防線》上寫的。



放假了,絕影只帶了一本書回家――《PC彙編語言程序設計》,電腦實在太重,就讓他放學校。王江的電腦也放學校,不過是花了五元錢放寢室管理員那裏保管。他沒有。其實帶那本書回家多半還是給媽媽看的。尋址那部分實在太抽象,卡在那就一直動不了。

整個假期他就想好好收拾一下心情。啥也沒做,就跟“三陪”下了32盤國際象棋,勝21,平5,負6。

三陪是他從小玩到大的伴。追溯起來可以從幼兒園說起,倆人坐到一起,總是以:“唉,家裏窮……”開始。不過他們倆家裏也確實窮,不然他們爲啥天天坐樓頂上下棋,有錢早跑去網吧上網去了。

絕影想跟三陪講一些黑客啊病毒方面的東西,畢竟經過在學校這麼一年,感覺自己還是多孤單,有時候就有那種沒人理解,就是“高處不勝寒”。但是三陪對這個不感冒,他喜歡聽音樂,彈吉他。



開學的時候,土匪也儼然一個搞IT的。桌上擺了一臺電腦主機,和絕影他們不同,那是臺品牌電腦,整個機身相當小,只有絕影的三分之一,所以他的主機擺在桌上,絕影他們的擺在桌下。那顯示器也相當小巧精製,不過擺放的位置剛好遮擋了他的鏡子。主機旁邊是本綠色的書,絕影遠遠看了一眼,好像是本介紹Visual Basic的。

土匪很得以地看着絕影和王江笑,所以技術的進步有時候也不是啥好事情,以前的文化人和文盲很好區分,起碼有胸間別幾隻鋼筆,夾個文明包,那就是文化人,而文盲是怎麼學也學不到這一步來。現在可好,電腦一下普及進文盲的社會,像土匪這樣的文盲也能迅速用它來作裝飾,迅速步入文化人之列。絕影感覺像他這樣的文化人,一下失去了以前文化人的優越感。

王江說的第一句話是:“課表在哪?”他沒有第一個關心土匪的電腦,這讓土匪多少有點失望,他慢條斯理地把課表遞給王江,王江迅速掃視了一編,用周星馳式的笑聲乾笑了兩下:“果然有C語言!”

絕影湊上去看,課名是《C語言程序設計》,老師還是宴斌,每週2講。現在人常說那人牛B,說:“那斯,給他衛星他也能放上天。”這真是大學老師的真實寫照:比水平?別人能上兩門課,我就上四門五門。VFP?能教!C語言?也能教!高數物理不能上?創造條件也要上!最後其實哪一門都不精通,大部分照書講。作業?有參考書――教書專用參考書,不給學生看,什麼作業啊考試啊隨便五六分鐘就從上面扒下來一套。你想上一門課多少錢?要是能上五門八門的,那工資還不頂天了!

下午土匪就去教務處領了課本,絕影迫不及待從他手中接過一本《C語言程序設計 第二版》,譚浩強,清華大學出版社。用這種《XXXX 第X版》,XXX,XXX出版社的方式來描述一本書是絕影的習慣,這樣能給人非常專業的感覺,你想連第幾版誰寫的哪個出版社出版的都瞭解這麼深入,說明他已經對這本書有了深入研究。

絕影跟宴斌算是老朋友了,去年《數據庫原理與應用》期末考試完了後絕影想請宴斌一起吃個飯,宴斌說比較忙拒絕了,這當然有可能是藉口。後來絕影還是有點慶幸宴斌沒有來,否則他90分的期末考試成績肯定要被絕大多數同學置疑,不過他還是對他這種不給面子的行爲耿耿於懷。

去上課,他就和土匪王江坐第一排。絕影當然要坐第一排。王江呢?講心裏話,他是很想學好這門課,畢竟大一的時候他《數據庫》也學得不錯,宴斌對他的印象還是很好。土匪呢?他必須坐第一排,他深深知道這門課自己要過肯定困難不小,跟他們一起坐第一排首先能給宴斌留下良好的印象,其次從現在開始就跟他們倆混,到期末肯定會對自己照顧有佳。聽課的時候,絕影睡覺了,王江認真地記着筆記,土匪在發呆。

回來寢室,王江說:“宴斌瞅了你好幾眼,好像幾次都想把你弄醒,但是沒弄。”絕影當然知道宴斌不會把他弄醒,宴斌不傻,要是把他弄醒罵他一頓,或者讓他“Go out”,到期末成績一出來萬一絕影又是全年級最高分,那就等於狠狠扇自己一耳光。

絕影呢?他從小到大就這性格。要像王江那樣,天天認真聽課做筆記背書回來還使勁把習題拿着做,考了100分,那又怎麼樣?那是應該考100分的,考不到是你智商有問題。如果你天天上課睡覺不做筆記回來不看書不做作業最後還是考了100,那才能讓人刮目相看。別人就想:這是咋的啊?他不學都能得100,我好好學了還不及格,是不是我智商的問題?

有一天你要是讓別人對自己的智商都產生疑問了,你在他們心目中就是神童。

但是,不看書是肯定要不得的,本來絕影以爲C語言,不過爾爾嘛,憑自己平時的技術積累,還有過不了的?但實際上才上了幾節課他就發現不對了。原來一門課看起來容易,你要真的把它當課去學,問題就多了。很多事情都是這樣,比如公司裏,BOSS跟你說:“小李啊,那個軟件客戶還想要個功能啊,我看也不復雜,估計就一二十行代碼,就當場答應了,你就去看看吧。客戶就是上帝,他們的合理要求我們當然要首先考慮。”可是當你把那要求拿來一看,媽呀!這數據庫也要重新設計,界面也要改,配置文件要增加,好多結構又要重新設計,一算下來,一兩萬行代碼也解決不了問題,而且估計又要製造一二十個新BUG。

再這樣忽悠下去,別說拿全年級最高分,就是考及格,都有很大問題。迫不得已,絕影開始C語言學習計劃。當然,他不敢明目張膽地拿出來學習,那就破壞了他在同學心目中神童的形象。

他就偷偷地學。把《C語言程序設計 第二版》,譚浩強,清華大學出版社的封面撕了,粘上《PC彙編語言程序設計》,先在電腦上開一大堆應用程序,什麼QQ啊,Flastget啊,記事本啊,計算器啊能開的都開上,再偷偷開個TurboC的DOS窗口,一有人來,馬上切換。

所以說人活得很累,有很多事情,像學習,在很多時候都不是爲自己學,是爲別人學。爲什麼?因爲你在別人心目中是個高手。你不得不花比別人更多時間去維護你在別人心目中高手的形象。你做到了,但那又有什麼,別人認爲你理所當然應該是個高手,那是你應該,他纔不會管你比自己多花了多少時間和精力而來讚揚你刻苦,值得學習。

這一點被資本家充分利用。BOSS總說:“小張啊,你從來沒讓我們失望過。”你聽了心裏自然舒坦。然後他說:“哎呀現在公司裏這個編譯器不好用啊,你想想辦法,給咱們開發個編譯器吧,兩個月時間夠了吧,這點東西對你來說算啥啊?你從來沒讓我們失望過啊。”你聽他這麼說的時候又恨不得立刻給他兩耳光,但是沒辦法,誰讓你從來沒讓別人失望過。最後反正不管你用什麼辦法千辛萬苦終於把這編譯器搞出來了,BOSS又微笑着對你說:“小張啊,你真是從來沒讓我們失望過啊!”那你就等着他下一次讓你開發操作系統吧。

話說回來,絕影認真學了下C語言,覺得很有意思,他就不明白別人爲啥老不懂,像土匪,背數據類型,背關鍵字,背函數甚至去背程序,每天累得要死。其實C語言這東西,只要你天天上機,經常摸着代碼很多東西不用背甚至不用看就知道了,反而是那些天天背不上機的人,一旦上機,寫的東西又全是錯的。寫程序,不比其它的學科,動手纔是硬道理。

往後一點是講的指針。指針這東西,絕影開始還有點害怕,早在他還在學“DOS”的時候,廣告公司那男人就說:“指針啊,是C語言最複雜的東西,也是C語言的靈魂。”這話估計是他抄的,因爲現在很多前輩都用這句話教導後輩。不過到後來,也覺得就那麼回事,不就是存放個變量的地址麼?就像學校的信箱一樣。你跟別人說,給我寫信,寄到XXXX大學509號信箱,別人怎麼知道509信箱是啥?不過他不用管,只管把信發過來,到時候你去箱子裏取東西就是了。只要這麼想,就拿指針當信箱吧,往那裏送信行了,其它不管,一切問題就簡單了。

想到這裏,絕影突然又想起來一個問題,他的心跳開始加快,呼吸急促,手開始戰抖,胡亂往桌上摸索着,他在找一本書。


《瘋狂的程序員》9

他在找那本《PC彙編語言程序設計》,那書封面已經被撕掉,還好沒被當廢紙扔掉。他趕緊翻到尋址那章。

原來如此!尋址方式原來就是尋找數據的方法。比如要除法,被除數在哪裏,除數在哪裏,商放哪裏,餘數放哪裏,要麼在寄存器要麼在內存。就這麼簡單個道理,不如就叫“數據尋找方法”那讓人一看就明白,多直觀。非要叫個大家都不熟悉的“尋址”。就算叫“尋址”,也完全可以在旁邊加以解釋,或者寫上句:“XXXX尋址方式類似於C語言中的數組。”在C語言指針那一節中加上句:“指針實際反映了CPU的XXXX尋址方式。”

可中國的教材就是這樣,好像搞彙編的人和搞C語言的人有仇,大家各自爲政,我專門出書講彙編,可不能便宜了那些搞C語言的,更不能在書裏給他們打免費廣告。最後的結果就是:尋址是彙編中最難的,指針是C語言中最難的;學彙編不懂尋址,學C語言不懂指針。害的是真正來學習的人。

明白了這個道理,絕影覺得尋址那些東西就不過爾爾,什麼寄存器尋址,就當寄存器是個指針,裏面放地址;什麼基址變址,就相當於數組,放個首地址,加幾就相當於訪問後面幾個字節。



C語言的課繼續上着,對大部分人來說,到後面越來越難,特別是學了函數,你想他們要去背那麼多庫函數,還要記關鍵字,甚至宴斌跟他們講個For循環,他們都要把例子背下來才行。然後是上機練習,那本《C語言程序設計 第二版》,譚浩強,清華大學出版社還附帶有本上機練習。

不過這都難不到他。他覺得這本書很不錯,當初剛領到書的時候他就覺得不錯,因爲是清華大學出版社的。記得以前什麼圖書博覽會他去買書,到最後書都是論斤賣,清華大學出版社的最貴,16塊一斤。現在他也不怕了,乾脆把《PC彙編語言程序設計》的封面也撕掉,書弄到這個地步,叫讀書破萬卷。

他想譚老教授憑這書也賺了不少錢吧。這也沒什麼不好,能夠真正給別人帶來好處的東西就是應該讓人賺到錢,當然,如果你的東西真的有價值,你也不用愁賺不到錢。可現在的人一天到晚還是愁:哎呀物價漲了,啥時候才能賺大錢啊?這樣想的時候你自己好好反省一下:你真的有多高的技術麼?你真的有多高的智商麼?你做的東西真的有那麼大的價值麼?



慢慢地,和去年一樣,陸陸續續有人來找他。基本都是做上機作業。這些人很乾脆,關係好的直接扔給他,補充句:“千萬別跟別人搞成一樣咯!”;關係不好的,要麼請他吃頓飯,要麼先站那講一大堆溢美之詞,最後也要補充句:“千萬別跟別人搞成一樣咯!”

對於這些請求,絕影一般不會拒絕。關係好的,可以加深關係;關係不好的,要不可以免費吃頓飯,要不可以聽些讓自己開心的話,買個好心情。關鍵是他們最後補充的那句:要每個人都不一樣。他很樂意嘗試同樣的題用不同的解法。這個用指針,那個就用數組,這個用函數,那個就用宏,這個用For循環,那個就用While循環,一道題也許練不完整本書的內容,但是一道題如果用N種方法去解,那就有可能練完整本書的內容。

你想兩全其美的好事,絕影怎麼會不做呢?

所以那段時間他就特別忙。土匪說:“走走,吃火鍋去。”

他說:“莫空,莫空。”

“幹啥?又在編程啊?”

“寫程序。”

現在大部分不搞程序的人都會這樣說:“他,是個編程的。”絕影不喜歡用“編程”,喜歡用“寫程序”。比如你去問一個作家:“最近在幹啥啊?”他說:“寫小說。”要是他說“編小說”,你心裏會怎樣想?那人也太不厚道了,編造些小說來忽悠看客。在絕影心中,寫程序是“創造”,不是“編造”。

這樣說的時候,土匪還是很鄙視絕影。雖然他自己斷然寫不了程序,但是他仍然可以鄙視他。爲啥?他自己說:“我啥都不懂,我認了。可是你憑啥就說你水平高呢?”

這種可怕思想存在於現在大部分人的頭腦中。別人就算真的好,那也不是真的好,因爲我不懂,你跟我講你水平高,沒用,我不懂啊。除非你給我出具一份專家的鑑定書。所以,你比他好一點,他不會承認你,會嫉妒你。要是你比他好很多,他纔會承認你,然後會很崇拜你。所以你要做,就應該比別人做得好很多。



後來絕影覺得這書上和宴斌講的也沒啥學的了。書就這麼多章,就算你再用功學的東西也不可能超過書的內容。宴斌就講那麼多,除非學校再給他開工資,他不會講更多,就算講,也沒幾個人能聽。他忽然想起那彙編語言一放就給放了大半年,反正學校的課也是那樣,只要你能夠去上課,要掛科還是比較困難,每個老師掛學生都是有指標的,指標早讓那些點名不到的人佔滿了。

於是他又從書架的角落翻出那本沒有封面的《PC彙編語言程序設計》。

把這本書拿在手裏,想到周星馳的《國產零零柒》,那阿柒輾轉淪落爲街頭賣肉的,這一天,終於來了個人,拍拍他的肩膀說:“阿柒,國家需要你的時候到了。”

過了尋址這一關,彙編學來也容易了一些,至少那後面的什麼分支程序設計阿、循環程序設計阿、子程序設計阿這樣東西他在學C語言裏面已經有了概念,但是他又試想一下,要是沒學C語言,這些東西還不是像尋址一樣抽象,這樣一想他就有點冒冷汗。計算機這門學科,確實和其它的不一樣,看來語言都是相通的,要相輔相成,不像那英語就是英語,就算你數學拿到100分,英語還是有可能得0分。

黑客也不能放,黑客還是他心目中的理想。《黑客防線》還是每期都買,又買了四期,期末考試到了。

念大學怕啥?天王老子都不怕,反正大學又不請家長。就怕期末考試。不僅是成績差的怕,成績好的也怕,而且越是成績好的越害怕。成績差的,擔心又要掛科,一個學分60元錢,而且那錢多半不敢問父母要,只好從自己生活費中省吃儉用省出來。成績好的,擔心題目太難了,或者出到自己沒有準備的題目,怕自己考不到90分考不到100分,更怕那些成績差的來找自己,給點提示,傳份答案,哪怕就是把卷子稍微往旁邊挪點也行。

絕影倒也不怕什麼。C語言自己是胸有成竹,其它科,反正就那樣子,掛是不會掛,但就算立即發奮,也不會好到哪去。

每學期到這時候,就會出現一種奇怪的現象,人們會蜂擁着去找成績好的――買座位。絕影沒去買過,不過那種被人團團圍住的感覺他猜想非常好。這次,他體會到了這種感覺。其實也不是他想的那樣好。因爲別人找你買座位的真正目的是什麼?並不是因爲他們真的覺得你好,真的能跟你從你身上學到東西。他們那是在利用你,這和普通公司的BOSS利用你沒有實質上的分別。因爲你現在有能力讓他們得到他們想要的東西,他們就會對你好,給你小頭,他拿大頭。絕影忽然很鄙視這樣的人。

不過他還是在自己旁邊預留了一個VIP位置,那位置留給一個妹妹。

那妹妹是絕影忠實的崇拜者,土匪追她追的很緊,她老是跟他說:“你怎麼就這個樣子阿,你看人家絕影怎麼樣怎麼樣……”

知道了這個原因,你就能理解爲什麼土匪總把絕影視爲敵人而處處跟他作對,與他爲難。

最後,理所當然地絕影仍然拿到了C語言全年級最高分,他周圍的人也順利通過了考試,土匪也過了。雖然他沒有跟絕影買座位,但王江也不賴。經過這麼久的學校生活,他和王江已經時時處在同盟的戰線上。他們倆心裏都很清楚,如果不這樣,絕影做黑客,做程序員的想法就會成真,他就會成功。他們不能讓他成功。很多時候,別人的成功就是自己的失敗。如今社會上的風氣早已吹進了大學校園。



C語言也學完了。絕影覺得自己學得還不錯。新的學期他感覺是自己大展宏圖的時候。

可這次發生了一件事情。後來他每次跟朋友提到這件事情,就說:“我大二一年基上算是廢了。”


《瘋狂的程序員》10
說絕影剛進大學的時候就住了一次醫院,那次從醫院出來發生了兩件大事:一、絕影決定追一個妹妹;二、土匪和王江開始做生意了。

他決定要追的那個妹妹名字叫肖瀟,其實是他的初中同學,也是他的高中同學,也是他的大學同學。

進醫院的第二天主任就把他調到VIP病房,他覺得真是太大面子了,因爲他三叔也就是這醫院一個小小牙科醫生。

不過剛進去他就發現是自己太自以爲是。普通病房有四張牀,那VIP病房只有兩張,其中一張牀上睡着個王局長(公安局的)。像局長這麼大的人物主任肯定要把他伺候周到。王局長說:“不好不好,旁邊那個重傷員天天晚上鬧,自己一個人佔個病房,影響又不好,給弄個不鬧的過來吧。”

主任把所有病房查了個精光,還是覺得絕影的病情最好,就腳上破了個洞,不但晚上不鬧,大小便都還能自理。於是這才把他調過來。

所以,你以爲人家真把你當做VIP嗎?即是在現在,仍然有很多地方:電信阿,民航阿,銀行阿,人家叫你VIP,實際是叫你“Very Import Pig”。爲啥?因爲你老給別人送錢去,所以你就是VIP。

人比人比死人。絕影家窮,媽媽要上班,也沒啥親戚朋友來照顧他,他只有天天躺病牀上。王局長呢?專門有兩個人照顧他,好像是局裏配的,這也就罷了,關鍵還配的是兩個美女,這也就罷了,畢竟女人比較心細,關鍵是每天還有不一樣的人過來看他,送水果阿,送花阿,送東西阿什麼的。絕影高中是班上物理科代表,說實話,他還是比較敬佩他的物理老師:年輕,有文化,而且有個性。沒想到這麼唯一一個讓絕影敬佩的老師居然也趁這個時候來送禮。

老師看見絕影,很尷尬地笑了笑,胡亂聊了幾句,大概就說他早就知道絕影會非常有前途的客套話。

王局長讓他的手下給弄了臺電視,弄了個VCD擺病房裏,沒事了就看碟,看《黑洞》。他們喜歡看這個,反正也是反映他們公安幹線的片子。看了《黑洞》,她們也叫他“王局”。絕影也喜歡看,因爲除了看電視劇沒其它娛樂項目,腳受傷又不比其它的,想去哪都不行。

這天中午,絕影和王局他們正看着電視劇,護士進來說有人探望病人,本來是再平常不過的事情,可這次來的人是來看絕影。

肖瀟來看他,絕影感動得不得了,在這個時候,他太希望有人來看他了。

肖瀟來看他,帶了飯,說你行動不方便,還是不要動了,就一口一口喂他吃了飯。絕影想你王局也不過如此阿,雖然有兩個美女來照顧,可是也沒享受到我這等待遇阿。

那一刻,他就覺得要追求他面前這個女孩。

後面的事情很順理成章,因爲兩人從小就是同學,可謂“青梅竹馬”。現在評價一個美女,大概有兩種:一、小美女;二、大美女。肖瀟就是屬於那種大美女類型,眼睛特別大,不過土匪他們說像牛眼睛。

所謂“春風得意”大概就是說絕影這樣,在IT界小有成就,又能抱得美人歸,這兩樣隨便哪一樣也能把土匪他們比下去。所以他那時候活得很簡單快樂:寫程序,約會。至於去不去上課,那要看自己的心情,說實話有些課真沒啥好上的,老師不就是照着書講嗎?那既然發了書還去上什麼課呢?

這樣的幸福生活一直持續到C語言程序設計考試結束。

肖瀟跟他說:“我們還是分手吧。”

絕影說:“好吧。”

他沒有問她爲什麼,因爲他知道她的答案會讓他傷心。所以人太聰明瞭也不好,人太聰明瞭知道的東西多了就會傷心,好多智商挺高的人還變成瘋子。還是白癡好,小時候家院子裏有個白癡,天天抱個收音機在那裏囈囈呀呀地笑,那收音機沒有聲音,但是他很快樂。

但是絕影后來還是知道了答案。

發生了這事,說:“沒什麼大不了的。”那是在騙人更騙自己,你自己經歷過你就知道,除非你是個情場老手會玩弄感情,但是那是在學校不是在社會,感情怎麼玩弄,絕影和他很多同學都還不知道。



那段時間絕影的心情一直低落,每天就漫無目的地上網。這次土匪好像變成好人了,時常來安慰他,開導他。土匪是真心來開導他的,因爲他心情好。爲什麼心情好?因爲絕影的心情不好。他覺得經過這次這個事情,絕影和以前不同了,他和他們現在是一個水平上的,他沒有什麼了不起。

月底的時候,絕影查了一下,自己2G的流量還剩1.4G,雖然剩1.4G和剩0.1G的效果一樣,都是31號網到期就不能上了,但中國人總是那種心態,比如你要了一碗餃子,最後實在撐不下了,可還得撐,一邊撐一邊說:“吃了吃了,不吃浪費,不能對不起這1塊5毛錢。”

事到如今,只有瘋狂下載。下MP3,不行。一個MP3只有4M,下300個纔夠本,而且MP3連接分散,不斷去搜索,扒連接,那還不累死人。再說了,那個時候絕影連說出100首歌名的水平都還沒有。

什麼東西最好?當然是遊戲。一個遊戲少說都幾百M上G。但在BT還處於試驗階段的年代,要找到遊戲的下載連接實在困難。網上掛的《三國志VII》幾乎全是騙點擊的。就一種遊戲好下――網絡遊戲。營運商總得給玩家提供下載吧,而且你還得提供高質量的下載,你想要是你那遊戲光下載就得讓人等7,8個小時,鬼才有耐心等那麼久來玩你的遊戲。人家玩家是來“試玩”的,不是來“試下載”的。

就下網絡遊戲。絕影在網上搜了一遍,覺得《精靈》這個遊戲剛剛好,1.38G,還3D的,而且據說是國內第一款3D的遊戲。下了下來就不能浪費,再說絕影反正也沒啥心思幹其它的事情,還不如玩玩遊戲過渡一下心情。

這麼一過渡,就過渡差不多兩個學期。

所以後來絕影總對自己很好的朋友說:“網絡遊戲,害死人,千萬別去碰。”他怎麼不說:“美女,害死人,千萬別去碰呢。”呢?要沒有肖瀟那檔子事情,鬼才會花那麼多時間來玩網絡遊戲。真的,戀愛的感覺比玩遊戲好得多。



兩個學期中,絕影也換了好幾個遊戲,從一個“試玩級”的玩家成功升級到“骨灰級”玩家。他的電腦就是個明證。

絕影換了電腦,這個時候他很容易換到電腦。他可以大大咧咧地媽媽說:“我要換個電腦,我要學寫程序,那個電腦太破了。”

這臺電腦震撼了全班,這是一臺P4 1.8G,帶15寸LG液晶顯示器的電腦。他撫摸着顯示器,第一次知道“LG”就是“Life’s Good”的意思。

這時候,班裏很多同學才第一次見到液晶顯示器。居然可以做得那麼薄那麼輕,而且還有個“Auto”按鈕,自動就把畫面調到最好。絕影跟媽媽說:“我要寫程序,經常對着電腦,那CRT輻射太大了,不行。”媽媽當然很心痛他,花了CRT兩倍的價錢給他買了班上第一臺液晶顯示器。

最終,絕影說:“我不玩遊戲了。”在玩傳奇的時候,他用辛辛苦苦掙到一根“裁決之杖”去換別人的“無極棍”,在那時候這是筆很化算的買賣,結果放上去是“無極棍”,到自己手上就變成了“木劍”。他跟同學說:“我不玩遊戲了。”他沒有說自己被騙的事情,因爲這是很丟臉的。

絕影這樣說,就這樣做。他不玩遊戲了。



大二大三的課程本來就是很關鍵的,絕影卻只顧了玩遊戲。有一次正上課,輔導員來查寢室結果當場抓住絕影正在玩遊戲。絕影嚇得要死,但輔導員沒說什麼。輔導員說:“絕影阿,第二界機器人大賽要開始了,你去我那報個名吧。”

他不想去,他說:“這個事這麼大,我還是和土匪商量下吧。”

輔導員說:“土匪雖然是學習委員,但是他懂什麼阿?你就過一會去我那裏拿張表填了吧。”

絕影還是不想去,沒去她那裏拿表,他跟班長說:“你去跟輔導員說下,就說要考試啦,我就不報名了。”

班長回來說:“她說你不去算了。”



這兩學期裏,學校沒開什麼計算機相關的課程,絕影的成績也急速下滑,那速度比股市還跌得快。慢慢地,班裏的同學對他的看法發生了改變,他們開始鄙視他,瞧不起他。因爲他成績最差,從來不上課,天天玩遊戲。同學們去聚會,他不去;同學們去泡妞,他不泡;同學們計劃考試作弊,他不參加。總之,好像他已經脫離了他們,他雖然還在班上,但是已經被他們拋棄。

土匪也慢慢覺得沒有意思了。他現在根本不把絕影作爲他的打擊對象,沒意思。他要打擊更有打擊的價值人。

絕影呢?他知道自己是什麼樣的人,學習對他來說是最簡單的事情。他不想去跟土匪他們證明什麼,有時候,什麼也不去證明就是最好的證明。

他一直在等待一個機會。

《瘋狂的程序員》11
其實也沒怎麼等,機會就來了,好像是機會一直在等他,等他決定不玩遊戲了,來把機會拿走。

現在很多人總是抱怨:“苦惱阿,沒機會阿。”好像自己就是那個才華橫溢又無法橫溢才華的大詩人。其實機會就像羊,滿地都是,關鍵是你自己要知道怎麼去剪羊毛擠羊奶。――難道你還等着羊自己把毛和奶送到你手上,那才叫機會?

大三的課就是比較多。剛進大學的時候,絕影想,大一應該輕鬆吧。沒想到大一課多到超出了他的想像。就算是大一打基礎吧,那大二課應該少一點。沒想到大二又加了兩門課。再想基礎也學差不多了,大三專業課應該不多吧,結果專業課比基礎課還多。絕影拿課表看了一下,有兩門課他比較在意:《微型計算機原理與應用》和《數據結構和算法》。

《微型計算機原理與應用》用的書就是《微型計算機原理與應用》,楊有君,史志才,機械工業出版社,書不算厚,只有300多頁。《數據結構和算法》用的書也就叫《算法與數據結構――C語言描述》。兩個老師比較有意思,都是年輕人,一男一女。男的姓譚。

絕影對這個譚老師印象不錯,因爲他很年輕,而且大家對他評價就一個字:狂。就這一點,他從他身上隱約看了到了一點自己的影子。不過絕影也覺得他實在太狂了,憤世嫉俗,自以爲是,總覺得自己水平就很牛,鄙視學校那些報課題的,鄙視公司那些搞研發的。絕影想這大概就是爲什麼宴斌已經升到教務處副主任而他還在做講師的原因吧。

他上課也從來不帶書,想到哪講到哪,並且講的都是他自己的。他常常說:“書上那個,跟你們講,那是大錯特錯,這個XXX哪裏有這樣的用法。”開始絕影也不相信他,後來他覺得譚老師水平可能確實比較高,因爲他讓他幫自己改過一段C語言程序,硬是把200行的代碼改到68行。

絕影學了一段時間彙編,他知道微型計算機原理這東西跟彙編語言是不可分割的,大部分講微型計算機原理的書表面上是在講微型計算機原理,實際上是在講彙編語言。他們的區別在於,講彙編的書就只講彙編,一般很少講其它的,包括微型計算機原理。而講微型計算機原理的書總是愛東拉西扯,什麼電路阿,數電阿,模電阿,彙編語言阿,能講的都講,所以絕影還是很慶幸自己當初買的是《PC彙編語言程序設計》,要是當初去買本《微型計算機原理》,那電路都能把他卡死。

絕影覺得譚老師講得比較好,他就一直去聽他的課,雖然像C語言一樣他覺得自己過這門課肯定不成問題,而且憑自己的能力,就算自學也有應該有實力拿到全年級最高分。這樣看來,在大學裏面很多時候並不是去聽課,而是去聽人。特別是上了幾次課後,他忽然又有重大發現,覺得上課還是值得的。

說以前他看原碼反碼補碼硬是沒看懂,反正這個概念也好背,就背下了:正數的反碼是它本身,負數的反碼是首位爲1其它取反;正數的補碼就是它本身,負數的補碼首位爲1其它取反最後加1。他背了,但他也不知道什麼意思。但是聽了幾次譚老師的課,他知道“數字加法器”這個東西,比如兩個數,高電平低電平輸入進去,就得一個結果,還是高電平低電平表示。這麼看來,拿二進制十六進制來表示數據真是個好方法,想起以前罵了馮.諾依曼,給他承認個錯誤。接着他就明白,爲什麼要補碼,因爲加補碼就等於作減法,這樣把減法轉成加法來做,把乘法也轉成加法來做,把除法轉成乘法來做,整個CPU就只需要一個“數字加法器”就夠了。

他覺得自己發現了一個驚天大祕密,這時候很多同學還在背:正數的反碼就是它本身……

譚老師也比較喜歡絕影,因爲他可以提出一些比較專業的問題,比如爲什麼不支持內存到內存的尋址?他在解答這樣的問題是會非常有成就感。同時他也會跟他討論些很有創意的東西,比如:題目是做64位加法,他就跟他說,用ADD怎麼怎麼做,用MMX指令怎麼怎麼做。最後歸納一下,還是用ADD做效率比較高,因爲用MMX指令太少,指令對齊還沒出來,效率提高不了多少。

MMX是絕影偷偷學的。當然他覺得非常有必要,這些指令是現在書上阿,老師阿都不會講的,好多同學聽都沒聽說過。但是他知道應用非常廣泛,所以你學大家都知道的東西有什麼用呢?要學就學大家都不知道的東西,這樣你才能做大家都做不到的事情。

所以我們有時候也要理解老師,他們天天在講臺上講,對他來說下面坐的有80%都是文盲――有文化的文盲,當然他們會很認真地記着筆記,甚至能預感到那些是重點,那些是考點。你以爲老師喜歡這樣的人嗎?他覺得他在對着一羣豬講課,他覺得自己心中的東西比起書上來,那都是至理名言,可是,以他們的智商,他們無法理解。這時候當他發現了絕影,他感覺終於找到一個知音,所以,他對絕影也許更多的是感激。



在土匪他們眼中,譚老師和絕影一樣是無法讓人理解的。其實他們心眼裏也鄙視這樣的老師,很簡單像《微機原理》這樣的雞肋課本來大家就抱着可上可不上的態度,但老師他們非要一再強調這課對於XXXX有多麼重大的意義,並且還堅持考勤佈置作業,好像這課過不了大學就畢不了業。同時,土匪覺得絕影瘋了,在他們班上,說某人沒救了或者某人的想法完全錯誤通常用:“他,瘋都瘋了。”

絕影自己心中有套理論,他沒有跟土匪他們說,因爲以他們現在的智商,他們無法理解。你知道程序是啥玩藝嗎?程序是給誰用的?他們肯定說:“程序當然是給人用的咯,用來解決問題嘛!”其實程序真正是拿給計算機用的。你寫程序給計算機看,就得照他的想法去寫,多跟它交流。計算機這東西,說它怎麼怎麼好,運算速度快,但畢竟它不像人那樣有智商,說起來就是白癡,你跟它交流久了,也慢慢變得像白癡。



又說《數據結構》這課,上課的是個年輕漂亮的女老師,絕影反而不知道她的名字。最近CSDN上不是老討論什麼女開發人員,女程序員怎麼樣怎麼樣嗎?所以人就是這樣,按常理,在這種情況下,他應該更加去套近乎,畢竟自己C語言也學的好,數據結構也難不住他而且老師都喜歡優秀的學生,當然在一起可以有長時間深層次的交流。不像土匪他們,沒事找事跑上去套近乎,問個問題:“#define是啥意思。”

她說:“下去吧下去吧,我下節課講。”

下節課的時候,她就說:“現在有很多同學,自己不動腦筋,又不好好學習,像‘#define’是什麼意思都拿來問,難道你們沒學過C語言?”

絕影想:你們越是認爲我會去幹什麼,我偏偏不去幹。我根本就不是你們想像中的絕影。

《數據結構》的課他也不怎麼去上,上了一次,他爬教室中間課上着上着就睡着了。老師非常不客氣,點殺他起來回答問題。

她自以爲出了個很簡單而又充滿殺機的問題:pop eax指令計算機執行了哪些操作?

這時候,好多同學笑了。她不知道,但他們知道,甚至好多老師都知道,他們知道這些問題根本難不到絕影,想用這種辦法整他,那是自己給自己找麻煩,不會讓他下不了臺,只會讓自己下不了臺。

像土匪這樣的人,肯定說:“把棧頂的值送eax。”

成績好的會補充:“把棧頂指針往下移4字節。”

絕影說:“mov eax,dword ptr [esp] add esp,4”

顯然老師對他這個題的回答非常不滿意,她的原意是他答不出來,好當場羞辱他:什麼都不懂還敢公然上課睡覺。她還是很無奈地讓她坐下,其實她本來還有道題,前面幾個人都答不上來,但是她沒敢再問。她也不傻:你想正兒八經坐那聽課的人都答不上來,讓個睡覺的人答出來了,那不等於說自己講課沒水平。

所以女人的心思和男人不一樣。女人就是太軟弱了,男人一比她強,她就屈服。絕影想,要我是個老師管你答出來答不出來,都讓你“Go out。”

絕影想罷了,你不給我面子我也不給你面子了,從那以後,他就不去上數據結構課。

他覺得《算法與數據結構――C語言描述》這書也實在寫得太菜,表面上說是C語言描述,實際上大部分都是用的僞代碼描述,以至於很多同學跑來問他:“這個語句是啥意思阿?爲啥以前學C語言的時候沒學過?”這樣的話自己上機去練習就麻煩,還要自己把程序寫一遍,不過寫過之後自我感覺良好:反正考試就考寫程序,自己寫了,有印象,比那些死背的人好多了。而且那些死背的人壞就壞在常常忘記在語句後面加“;”,硬生生扣2分。



期末考試沒啥好說的,絕影讓譚老師給點提示,譚老師說:“那就算了吧,你趕緊複習其它科目去。這微型計算機原理對你來說沒啥好考的。”這樣,他輕輕鬆鬆又拿到一次全年級單科最高分。數據結構就不一樣了,大概是那女老師受了一次絕影的羞辱跟他有愁,本來絕影自我感覺良好,結果才得了個65分,連抄他卷子的人都得了82分,弄得他自己都不好意思跟別人講。王江問他,他就馬馬虎虎說:“過了過了,還可以。”他知道,王江得了90分。

他氣氛阿:公報私仇,雖然過肯定會讓他過,但就是要讓他過得不舒坦。這就是男人和女人的區別。比如男人之間誰借了誰錢,到期他就大大咧咧跑過去,有時候還當着一大羣人的面:“喂,還錢,還不還?不還把你吉他給我彈兩個禮拜。”這種事情到女人身上就不一樣了。錢雖然是小事,但是她們不會跟你要,提都不跟你提,你不要以爲她大方,她就老是說:“哎呀,月底了,又沒錢了阿。想去買件衣服都買不成了。”或者跟她朋友說:“XXX,那人人品有問題,借了錢好久都不還。”你想這樣多可怕。所以記性不好的人還是儘量不要去跟女人借錢,寧願把吉他當了也不要去借女人錢。



這時候王江的感覺良好,他數據結構得了90分,其它科也不錯,反正成績就是他們班前幾名。他跟土匪和絕影說:“下學期我有個大計劃,你們一定要支持我,這可能是我人身的重大的轉折點。”
這件大事,後來的確成爲人生的重大轉折點,但這個轉折點不是他的,是絕影的。
《瘋狂的程序員》12
現在來看,王江應該是屬於那種成功的大學生。好多人後來都後悔:“四年大學白唸了,什麼也沒學到,什麼也沒做成。”在他們心目中,大學四年應該像王江那樣渡過:一、成績中上,另外有那麼一兩門課特別好;二、交際廣泛,特別是跟女同學的交際,手機裏面全是妹妹的電話,QQ上全是妹妹的頭像;三、課餘活動豐富,打球、唱歌、泡妞、吃飯喝酒天天都安排得滿滿的。

高中的時候王江就會彈吉他,那時候絕影天天早上6點鐘起牀,晚上11點纔回家,學習壓力大,不要說學彈吉他,就是聽吉他的時間也沒有,就算有時間,也沒那心情。也許大部分人都是這樣的吧,所以大學裏面能彈吉他的還真沒有幾個。像王江,那就是物以稀爲貴,本來會彈吉他的人就少,他就召集了幾個會彈吉他或者搞音樂的人,像模像樣就組成了一隻樂隊,任樂隊隊長。

樂隊的名字絕影不知道,王江雖然跟他說過N次,但他始終沒在意。他從小就沒啥音樂細胞,儘管在大一的時候他還正兒八經跟王江學了幾天吉他,最終還是放棄了。――主要是周邊幾間寢室對他意見很大。

像王江這樣的人,在學校很容易成爲妹妹關注的對象。本來在大學裏面女生對男生的評價就差不多,大家都窮人,大不了一個月就五六百生活費,都是一樣,除非你老子特別有錢,像雞哥那種,那是萬中無一的。

不像現在走上社會上貧富分化出來了,男人一有錢,女人就喜歡。當然這並不是說女人庸俗,女人當然喜歡成功的男人,這是很正常的,生存競爭嘛,適者生存。當她第一次見這個男人怎麼才知道他成不成功?你說我多麼多麼成功,在公司做了個首席XX官;有才華,在XXX刊物發表論文多少多少篇。那都是屁話,誰知道你是不是在吹牛。只有錢,只有錢才能讓女人看出你成不成功。你們去喝咖啡你買單的動作,你送她回家開車的動作,纔是真正吸引她的。當然,隨着她更深入地瞭解你,她也許最終欣賞你的是你事業上的成就或者是你的才華人品等。所以對男人來說錢什麼都不是,但是你沒錢,你就失去了讓她瞭解你的機會。

說到這裏,好多女人又要說男人也不是什麼好東西,就喜歡美女。這也很正常。憑良心說,男人都希望找個體貼的懂事的女人做老婆,不一定要漂亮。但是你們第一次見面你那恐龍般的造型已經把他嚇得半死,你根本不要指望他會再約會你,更不要指望他能慢慢了解你的確是個體貼的、懂事的女人。所以對女人來說漂亮什麼都不是,但是你不漂亮,你就失去了讓他了解你的機會。



新學期開學的頭幾天裏,王江一直早出晚歸,土匪終於忍不住問他:“在幹啥?神神祕祕的,是不是在泡妞?”

王江鄭重地把土匪和絕影召集到一起,說:“這學期我有個大計劃,也許這會成爲我人生的重大轉折點。”

王江要說的大計劃是他想拍電影。要放到現在大學生拍DV是再平常不過的事情,別說拍部正兒八經的DV,就是“寢室寫真”也有女生敢拍。但王江絕對不是個風往哪邊吹就往哪邊倒的人,那時候除了胡戈的幾個朋友,這世界上還沒幾個人知道“胡戈”這個名字,“惡搞”這個詞也還沒有發明。所以王江的想法絕對是個大膽地、超前的、破天荒而且很有前途的想法。

土匪聽着沒勁,他是個沒有藝術細胞的人。男生嘛,當然還是希望自己有點出衆的地方可以多吸引點女生,他自己沒有藝術細胞,就努力去培養運動細胞,愛運動的,陽光型的男生也很受女生青睞。所以他那時候的課餘時間基本上是往返於籃球場和食堂。

絕影聽着也沒勁,那時候他正一門心思重操舊業研究黑客技術,學了點C語言,特別是彙編,他感覺應該有能力研究黑客技術了。數據結構和算法也學了,他又想往密碼學加密算法方向發展。畢竟搞黑客入侵還是比較危險,而且實用性不大。電影裏面描寫高手的鏡頭往往不是他如何攻破別人的系統盜取別人的東西,而是他如何在離爆炸還有3分鐘的時間內成功破解了登錄密碼或者一張存有幾十億美元的銀行卡,然後上交給組織。

那時候QQ開始大規模流行,對QQ的破解、盜號也開始有越來越多的人來研究。說要盜QQ號,當然是做木馬來盜。

絕影不會這樣做,木馬那是偷東西的,那是賊不是黑客。他的設想是放一個程序出去,比如要盜一個QQ,就發動所有中了這個程序的機器去嘗試用不一樣的密碼登錄,一個機器也許要跑好幾年,但是一萬臺十萬臺機器就快了。在今天來看,他這種想法裏面包含了在線暴破、分佈式處理的思想。事實上現在好多人在線跑MD5碼也就用的這種思想。

你要是去過看雪論壇肯定就會知道高手門對於暴破其實是很不齒的。絕影去了看雪論壇也開始對他以前的想法很不齒。既然登陸後的QQ密碼一定會保存在本機,那麼他就研究本地破解。

就是把那幾個文件拿來分析來分析去。因爲那段時間的分析,他漸漸熟悉了EditPlus這些十六進制編輯器。後來分析了一段時間,發現網上有結論:QQ的本地密碼是不可能反算的。

他就想不明白,既然你能夠算過去,怎麼就算不回來了呢?他不管,繼續去研究。後來當他知道“單向散列算法”這東西,才恍然大悟。於是他跟土匪他們說:“QQ本地密碼是不可能反算的。知道爲什麼嗎?因爲用的單向散列算法。”

瞭解了這些,他對加密算法開始感起興趣來,立刻興沖沖跑去買了本《應用密碼學》。但是書還沒把前言看完就掉在自習室了。



他們沒有表現出極大的興趣,這讓王江很失望,自己又獨自跑出去聯繫了幾天的業務,進展不大。

後來土匪跟絕影說:“王江也挺可憐的,儘想些不切實際的東西,又沒人支持他。好歹我們也是一個寢室的,要是我們也不支持他,估計他的大計劃要流產,這不是多打擊人的阿。”

絕影想也是。

當天晚上他們就向王江表態。

土匪問:“王江你準備得如何?還缺些啥阿?”

王江很自信地說:“啥都好了,攝影師,主角差不多都就位了,就缺個男二號。”

土匪說:“那肯定我上了。不能讓你丟臉呀。”

王江當然很高興。男二號本來又是個反面角色,在這戲裏男二號爲什麼要存在?純粹就是爲了襯托他這個男一號。

土匪又說:“戲份都不是很重要,關鍵是演技有沒有發揮的空間?”

王江說:“絕對有!”

這簡直是《喜劇之王》中的對白。

土匪拍拍胸脯說:“你放心你拍電影兄弟們肯定大力支持。但是你總要在字幕裏面給點頭銜嘛。”

王江說:“這是肯定的,一個寢室的,你不說我都知道。你就作‘總監製’吧。”

土匪聽了臉都笑爛了,估計除了在王江可能出的這部電影裏,他還從來沒體會過“總監製”這種感覺,關鍵是一個“總”字。

輪到絕影。絕影肯定不會去演戲他沒這天賦也覺得演戲好丟臉,除非給他領銜主演的位置而且女主要漂亮。他很大方地跟王江說:“王江你搞吧。要是缺少資金啥的就跟我說就是了,我給你資金上的支持。”

這學期絕影總是給土匪他們儼然一個暴發戶的形象。的確他這學期是暴發戶,那是因爲他這學期沒交學費。他沒跟他們說,這種事怎麼說得出口。4000多元的學費他花100元買了個音響因爲他以前那個“玩具”音響效果實在太差勁了,又花了1050元買了個Nokia 3530手機。那是那個年代爲數不多的1000左右的彩屏手機啊。那裏面有個MIDI音樂是蛐蛐叫,絕影覺得很有意思,就把它設成鈴聲。後來同學們就把他的手機叫“電蛐蛐”。

資金上支持的效果要遠遠大於精神上的支持。王江當場高興得手舞足蹈,他說:“沒問題,沒問題,那你就是‘總策劃’吧。影總!”

這是絕影第一次聽到有人叫他“總”。他沒有想到,在今後的好多年裏,好多人都這樣稱呼他。



後來絕影沒有繼續“策劃”,一直是王江在跑拍電影的事情。直到他覺得都差不多可以開機了。像所有電影開機一樣,王江說:“我們在X月X號,舉行個開機儀式吧,主要是開會,把所有工作人員召集起來,部署下工作。”

絕影沒說話,土匪滿口答應,拍着胸口說:“兄弟們肯定支持!”

王江說:“好,有7,8個人都要去的。”



離開會還有半個小時了,絕影坐在電腦面前研究非對稱加密算法。王江還是一個人,看得出來他比較焦急。他拿出手機給土匪打電話,土匪說他現在來不了了,他正跟曄哥打PS,賭晚飯。

土匪不去,絕影也不想去了,他還沒有吃晚飯,他正把一個C++的大數運算庫翻譯成彙編,他想看看翻譯成彙編後效率能提高多少。王江說:“走吧,我們一起去。”說得多可憐。絕影一下心就軟了,人要是做一件自己認爲很大的事情又沒人支持那真是很可憐的。他關了電腦,便跟他一起往外走。

路上,王江接了個電話,很得意地說:“走,我們去找她一起走。”

“她是誰?”

“應聘演員的。”

於是他們放棄了原先的路程,絕影跟王江一起走。

遠遠地,絕影望見了那個女孩。王江介紹完後他趕緊找機會躲到一邊給土匪打了個電話說:“快過來,這裏有美女。”

《瘋狂的程序員》13

王江說的開會地方離這裏還有點距離,那時候剛開始搞“教育產業化”不久,銀行是請客吃飯求學校貸款,所以學校膽子也大起來,不斷貸款擴大規模。最後苦的是絕影這樣的大學生,找女同學不方便――從男生寢室走到女生寢室起碼要半小時。所以土匪他們纔不原意去開會。

去那邊有兩個選擇:一、坐校園交通車,每人1元錢,湊夠5個人就發車,5分鐘後到達目的地;二、走路,走得快20分鐘到達目的地。

說實話王江人實在太節約,他肯定不原意花1元錢去坐車,因爲坐車和走路的結果都是一樣的,都能到達目的地;絕影當然也不想坐車,跟美女在一起,時間就是金錢。王江說:“那我們就走路過去吧,反正還有時間。”

絕影說:“那也行。”

美女雖然不想走路,奈何少數服從多數,也就沒說什麼。



程序員泡妞的技術其實和寫程序差不多。比如你拿到一個題目上手就去寫,那多半要糟糕。也許就在還有幾行代碼就要完了的時候你忽然發現寫不動了,這樣寫根本寫得不到結果;或者你忽然發現走了冤枉路,用這個方法寫了二三百行代碼,但是C標準庫裏本來就已經給你提供了這個函數,直接調用就完事。所以泡妞和寫程序一樣,要有計劃,有設計,甚至要去寫文檔,畫流程圖。當然隨着你自己的水平不一樣,泡妞的技術也不一樣,剛纔那種方法是程序員的方法,如果你是BOSS了,你就可以直接端杯咖啡過去說:“小姐,可以請你喝一杯嗎?”然後隨便侃幾句就要她的電話,一定要會講話,多講話,記住美女永遠喜歡開朗的人這正如她們比起QQ遊戲的代碼來說更喜歡QQ遊戲本身。

兩年多下來,這種寫程序的思想已經深深地印在絕影腦中,所以雖然當他第一眼看到這個女孩的時候他就覺得去追她,但是他不急,先計劃。

說美女不外乎有兩種:大美女、小美女。她是和肖瀟截然不同的類型,屬於小美女。或者說乖或者可愛。

走在路上,絕影的“電蛐蛐”響了,是土匪發的短信,說有美女他馬上到。放到哪裏,絕影的“電蛐蛐”都絕對吸引人的――那鈴聲確實太有創業。這時候他心中對土匪有說不完的感激,眼看進入冷場階段,他這條短信來的太及時了,“電蛐蛐”馬上會吸引到那個美女。

果然,那小美女聽到“蛐蛐”聲非常好奇,絕影大大方方地把手機遞給她:“拿去看吧。”後面絕影沒再跟她怎麼說話,這是泡妞的第二個要點:當你不是BOSS的時候,就不要去多講話,雖然美女喜歡開朗的人,但準確地說她們喜歡開朗的BOSS,一個小小的程序員如果過於開朗,只會給她們留下譁衆取寵,不踏實的感覺。



開會開的什麼內容,絕影也記不太清楚,要不是因爲遇到一個美女,他肯定要後悔死來到這裏:其它人他都不認識,別人也不認識他,感覺自己就是一個傻子。並且土匪還一直在旁邊埋怨他,說明明都是恐龍還把他騙過來,還害得他和曄哥一人花了1元錢坐車,要找他報銷。

會開完了,他離開會場的時候,回頭看了一眼那美女。她正哭,眼睛紅紅的。

晚上在寢室夜談,王江問:“覺得我的計劃如何?”

絕影說:“NND你手上早有美女,不拿出來。”

王江說:“不知道阿,一直以爲你喜歡肖瀟那種類型的。”

他問王江要了那美女的手機號,就躲被窩裏開始發短信。那天晚上,他和她發到4點多。

土匪總是對絕影很不服氣,他每次認爲絕影不能成功的事情大部分他都能做成功。爲什麼?就比如泡妞這事,爲了約美女出來一起看場電影,連講一句話,他都能夠在寢室裏排練整整半天,那句話的內容是:“聽說你喜歡看電影,不如一起去看電影吧。”

他對着王江和土匪排練,講這句話,總共有四種比較好的語氣:一、超哥型;二、老實型;三、滿不在乎型;四、認真型。每種語氣都把它講好,然後嘗試講給他們聽。他們給出意見。然後再分析美女可能的幾種回答:一、好阿,當然可以;二、對不起那天晚上有課;三、我們剛認識不久,還不是很熟呢;四、我能帶個朋友一起去嗎?再想出針對以上四種回答的應對方案。

所以程序員不管是做程序還是做事,都應該有這種習慣:一個問題要儘量在做之前就把所有的結果想出來,分別對每種結果進行分析,找到較好的應對措施再去做。這樣,整個問題都儘量在你的控制中,不至於做出“Out of control”的事情。一件事,如果你決定去做,就要盡力讓它在你的控制中。

後來,絕影成功了。在2003年的光棍節那天,他和她正式告別了光棍生活。這個女孩他叫她燕兒。

土匪總是不服氣,他覺得他沒有他帥,也沒有他愛運動,成績也沒他好,爲什麼他就能成功。絕影對燕兒說:“我在決定追你的時候就知道我一定會成功。因爲我決定追你,我就會用心去追你。自己用心又有計劃去做事,是很難失敗的。”土匪耿耿於懷,他自己什麼也沒有,他就覺得絕影得到的就都是壞的,他老是叫燕兒:小胖妹。



男人爲什麼喜歡美女?那還是要分析男人的思想,其實男人自己的女朋友自己的老婆多半還是給別人看的。你可以給別人說:“看我老婆多懂事,每次我工作到很晚她都能理解我。”或者說:“看我老婆多勤快,雖然每天工作很累但回家都能吃到可口的飯菜。”或者說:“看我老婆多漂亮,身材多好。”女人和女人在一起,多半是比自己的男人;男人和男人在一起,最重要的是比事業,如果事業都差不多,也就比老婆。

絕影當然也有這樣的心理。他還深刻地記得班上一個同學跟他說:“你?也能找到女朋友?”所以他就給班上所有的人宣佈:“這事就這麼算完了,我們請大家吃飯。”從此以後,他開始挺起胸膛從班上所有人面前經過。

有了女朋友,日子自然開始滋潤起來,絕影更加用功去學習黑客技術。他深深地懂得一個道理:天下幾乎所有的男人都會有自己的老婆,但不是所有的男人都能擁有自己的事業。要有事業,一定要花比找老婆更多的時間和心血。



過了段時間,他忽然發現他不是學黑客的材料。學校肯定不會教黑客相關技術,雖然他在《黑客防線》上看到消息說XX國家開設了世界上第一所黑客學校,那可是在國外,而且是世界第一所,你就不要指望中國能在一二十年之內出現這樣的官方學校了。其次他感覺黑客技術非常複雜。比如找漏洞:那需要網絡、HTML、SQL、CommandLine、操作系統等多方面知識,比自己在大學要學的科目還多。大學裏還是官方學習自己都難免有幾門掌握不好,更別說自學了。再加上他高三的時候看的韓寒的一篇文章,名字忘了,整個文章的中心思想就是全才等於庸才。

所以到這裏他果斷作出一個決定:不再研究黑客。人的精力是有限的,與其這樣去多方面橫向發展,不如找一兩樣自己擅長又喜歡的科目往縱深發展。這兩種發展方式都是很有前途的。

他決定把彙編作爲自己的發展目標,理由有三:

一、自己有很好的彙編基礎,至少在這所學校裏,他是最好的。說Bill.Gates很成功,爲啥?別人不知道他知道,Bill.Gates的Basic語言相當好,他自己說過:“在Basic上,我敢於挑戰任何人,也敢於接受任何人的挑戰。”所以絕影經常跟土匪他們說:“在彙編上,我敢於挑戰任何人,也敢於接受任何人的挑戰。”

二、這學期他學了單片機原理,他深刻地體會到彙編的好處:比如大家都去開發一款新出來的芯片,用C語言的人要先找到C編譯器,往往花幾百美元買一個,當然也有可能會有gcc移植過來的,但那要等這芯片已經多出好幾年了纔有好心人做這樣的事情,然後還要去買資料,不然你從哪裏去查找這款芯片的C語言編譯器提供的庫函數?用匯編就不一樣,一本包含指令集的開發手冊,一個彙編器就完事。開發手冊和彙編器是每個芯片廠商都免費提供的,他要不提供這些,就沒人能給他開發程序,他的芯片就賣不出去。

三、通過對黑客技術的學習,他很羨慕那些能搞軟件破解的人,不是“破解”,是“逆向工程”,如果有機會,他當然也想去搞這個。對大多數人來說,知道別人在想什麼是很有意思的;同樣地,對於大多數程序員來說,知道別人程序在想什麼也是很有意思的。他知道,要想搞“逆向工程”就必須學習彙編。



主意一打定,他立刻停止了購買《黑客防線》。這裏面還有一個原因就是談戀愛了,生活更加拮据了。

人在很多時候都是這樣,很多東西都捨不得放棄,但是你一旦痛下決心放棄了,也許會立刻得到一個更好的東西。放棄了《黑客防線》,絕影忽然發現了一本極好的書,現在網絡上不是流行《雙截棍.程序員版》嗎?裏面有句話:一個寫得好的庫函數,一用好多年,拷貝好帶身邊。這本書,在以後幾年裏,絕影確實一用好多年,隨時帶身邊。

《瘋狂的程序員》14

沒多久,絕影乾脆在學校外面租了房子自己搬了出去。

超薄早在上上學期就在外面租了房子,本來超薄話不多,看起來又熱愛學習,大家都以爲他是個老實人,根本沒想到他居然是寢室第一個談戀愛的,更沒想到他居然會租房子同居。上學期王江也出去租了房子,他有足夠的理由:要搞音樂,搞樂隊,還要搞平面設計,比如搞音樂的搞設計的標誌是什麼?當然是有一家屬於自己的工作室。――所以租間房子作工作室是很讓人信服的。

絕影也想出去租房子,那肯定比在寢室住自由得多,關鍵是晚上11點以後可以不用熄燈。而且現在技術發達,就是那些10平米一間的單間都牽了小區寬帶。但是他沒有好的理由。

他跟土匪說:“我要養只貓。”

土匪說:“不行,要養自己租房子養去。”

於是他去寵物市場買了只貓,去“通聯布藝”買了牀單和被子,去學校外面租了房子。

這時候土匪又後悔了。三個人都出去住,就他一個人在寢室,你想那滋味他肯定不好受的。他那樣說的時候心想打死絕影也不可能出去,他不相信絕影會爲了養只貓花那麼多錢買牀單,每月還得花那麼多房租,他不知道絕影上學期沒交學費。他跟絕影說:“莫名其妙,算了回來住,大不了把貓養寢室。”

絕影說:“不。”

絕影不會做自己“Out of control”的事情,但是喜歡讓別人有“Out of control”的感覺。土匪認爲他不會出去,他偏要出去。

他租的房子還不錯,至少廁所是內置的,不像王江他們,廁所外掛不說還要好幾個人共享。其它東西都沒有,有間房有廚房但是貴10塊錢,反正他肯定又不會用廚房心裏琢磨着省了10塊錢,好像揀了很大便宜。

他的貓有一個很大衆的名字――“咪咪”。現在你要看一個寵物的主人對他的寵物感情深不神,最主要還是看名字。要是主人特別喜歡他的寵物,一定會挖空心思認真給它起個很特別很有創的名字,要是隨便一個大衆的名字,那他多半對它沒啥感情。

表面上他自己喜歡“咪咪”喜歡得不得了,其實他心裏有另外的算盤。你要憑空出去租個房子別人會怎樣想?燕兒會怎樣想?那擺明了是要騙燕兒出去同居,那是人所不齒的。現在他有很好的理由:他要養“咪咪”。所以表面上是養貓,實際上是養人:租了房子當然就不能浪費,當然就要去住,當然就可以讓燕兒一起去住,久了當然就習慣了,就同居了。

事情都如他想的那樣發展,一切都是順其自然,目的達到了,他覺得自己還是沒把“咪咪”養好。所以現在也有很多大學生養狗阿養貓阿,絕影看見了就想罵狗男女:你一個大學生懂個屁,你知道狗的體重和每天進食量的標準嗎?你知道狗在什麼時候換牙什麼時候換毛嗎?你知道“發育寶”,“鈣喂能”這些東西嗎?你甚至不知道給狗吃骨頭是很不好的,不但不能補鈣還會導致便祕。關鍵是他們還花着父母的錢做他們一點都不懂的事情。就比如要了父母的錢去搞所謂的“權證”,你知道 “權證”是什麼東西嗎?

他覺得他養不好“咪咪”,反而“咪咪”老是給他添麻煩。於是他就以1塊錢的價格把“咪咪”賣給了表妹,去見表妹花了2塊錢坐公交車。



出去以後自由多了。他自己可以想幹啥幹啥,也可以想幹到啥時候就幹到啥時候。別以爲他在學校彙編很牛B,隨便一上網才發現高手多的是,人家寫的文章他看都看不懂,於是瘋狂加羣,加彙編羣,加C語言羣。

可是彙編語言學了到底是爲了什麼?你說搞開發,那是瞎扯的。學校裏學的80x86學得再好也就開發個DOS下面的exe,高級點的技術就是把exe變成com。說搞破解搞反彙編,其實在學校裏面大部分同學都還停留在只認識ax不認識eax的階段。

不知道他從哪裏知道了32位彙編還可以開發Windows下的exe,也許是在網上,也許是在別的羣裏,總之知道了,他就瘋狂地去找資料。就算那譚老師自認爲彙編語言很不得了了,他懂32位的麼?

你去Google上搜索一下“32位彙編語言”,搜到的什麼最多?《Windows環境下32位彙編語言程序設計》,羅雲彬,電子工業出版社。對付這些絕影有經驗,直接又去Google裏面搜索“Windows環境下32位彙編語言設計”或者“Windows環境下32位彙編語言程序設計 下載”,基本上就可以把這書扒下來。

可是這次不行了,網上居然沒這本書下載,只有目錄,前4章和附書光盤。

前4章他看得津津有味,總共看了5遍,自己也把光盤下載下來按圖索驥,果然寫了一個Windows的窗口和對話框,編出來一看,才2.5K。你想那VFP的Windows程序隨便聯編一個出來也至少100多K,這實在太神奇了,以至於他在很長一段時間都認爲用彙編語言的目的就是優化可執行文件的大小。

他跟燕兒說:“我想買本書,《Windows環境下32位彙編語言程序設計》,羅雲彬,點子工業出版社。”

燕兒說:“只要你覺得有用,就買吧。”

他說:“要78塊錢。”

燕兒說:“只要你覺得有用,就買吧。”

週末去城裏最大的書店,居然沒有這書,又跑了好幾家還是沒有。燕兒跑得很不耐煩了,說:“都沒時間逛街了,不買了。”

所以你自己跑得多起勁的時候要知道女人的心思是和你不一樣的。你要買一個東西到處找,急得要死。對她們來說,她們只想去逛,逛她們喜歡的東西,也許那東西她們根本就沒想過要買,光是逛一下看一下就能讓她們很滿足。男人呢?總是要拿到手裏纔會滿足。所以男人逛街目的性是很強,女人逛街就沒目的。

買書這事情,要到現在你辦法還不多得很,要麼網上支付貨到付款還打8折,要麼超星上註冊個會員一年100塊錢幾十萬本書隨便讀,要麼淘寶上一搜還大大咧咧地跟賣家說:“馬上發貨,3天內不到就退錢,2天內不到就差評。”問題是在那個時候,絕影還不知道“網銀”、“支付寶”這些東西。

所以現在要學習什麼的方便得多,技術進步了,東西還買,學習交流的羣也多,社區也發展起來,哪點都比那個時候好。

絕影說:“好好,再跑最後一家,要還買不到就不買了,託同學從他那裏帶過來。”



最後一家沒讓絕影失望,居然還有2本。顯然是別人在幾十本里面選剩的,絕影又從這剩餘的兩本里面精心挑選了一本,78元,736頁。付了錢取了光盤小心地包好揣在懷裏,記下這家書店的名字:西南科技書店,然後興沖沖開始跟燕兒逛街了。

燕兒和別人永遠都不知道這本書對他的意義有多大。晚上回去,燕兒說:“我們出去走走吧。”

燕兒說的是往農田那邊走。學校在郊區,本來以前都是田的,後來因爲有了學校,附近的農民可發財了,就是隨便找個地方天天買水果都要發財。更多的人把地拿來修了房子然後租給絕影這樣的人。絕影就看見自己的房東修這麼小個房子都有了私家車那更別說開館子的開飾品店的了。因爲有了這些讓人發財的東西,農田也就不得以往離學校更遠的地方挪,不過那邊一般人少,空氣好,景色優美,的確是泡妞的好地方。

絕影說:“不去了。”

他迫不及待地打開書從第5章開始往後看。

後來燕兒對這本書的腹緋很大,因爲絕影把大部分時間都耗在這書上了。以前他們倆還在熱戀的時候他們可以從天亮開始就躺在牀上聊天,飯也不吃,一直聊到晚上天黑,絕影起來出去買飯回來,吃了飯要麼繼續躺牀上聊天要麼開電腦玩QQ遊戲。燕兒就說也不知道那時候怎麼會有那麼多話聊。

現在可好,燕兒每天起牀的時候絕影一般剛睡覺,或者他叫燕兒起牀後再睡覺,燕兒就自己走老遠去上課,中午等絕影醒了一起去吃飯,下午兩人各上各的課,晚上吃了飯絕影就對着電腦,逼得燕兒每天都得早睡。

所以現在的女人面臨的最大的敵人是啥?不是別的女人。你要是自己夠體貼夠理解男人說實話鬼才原意去外面找女人。――不但浪費錢,還容易把自己搞得衆叛親離。她們最大的敵人是電腦。搞IT的就不說了,想起碼有80%的女人很想砸電腦。搞其它的呢?要是男人迷上了遊戲,迷上了上網怎麼辦。所以女人們,現在就得學:有一天,我們必須和遊戲一起爭奪男人,該怎麼做?



絕影呢?他覺得這些都很有意思。他把那個C++寫的大數運算庫成功翻譯成了32位彙編,兩個程序運行一比較,做1000次1024位乘法速度居然快了200倍,這個結果讓他自己都感到驚訝。然後他又去了羅雲彬的網站,看到那個水波特效的例子覺得很有意思又花了些心思把它做到一個DLL裏面,就這個DLL一用好多年,拷貝好帶身邊。

燕兒呢?她覺得自己受不了這樣的日子,她跟絕影說:“我們談談吧。”

《瘋狂的程序員》15
說“魚和熊掌不能兼得”就是說你想要老婆對你好,對你百依百順,你就要花時間在老婆身上,要陪她逛街,陪她散步,陪她去買菜。所以像絕影這樣天天把所有時間花在電腦上的,要指望老婆對你好,只有一跳路:你有很多錢,並且都給她。但是他沒錢,所以燕兒肯定要跟他談判。

最後絕影對燕兒說:“好吧好吧,以後每天晚上我儘量跟你一起睡覺。”他把“儘量”這兩個字說得特別重,那樣能讓人感覺他是下了很大的決心而且只能是“儘量”,不能保證100%,由此可見要他陪着一起睡覺對他來說是下了很大的決心,對她來說是很大的榮幸。

到這一步,別以爲絕影就沒辦法了。所以說女人有時候很笨,比如老公有外遇,別以爲你控制了他的手機控制了他的經濟就萬無一失,其實他辦法多的很。沒手機,就在辦公室打;工資被沒收,就偷偷藏獎金,或者只繳2/3,說剩下的因爲遲到給罰款了。其實有時候女人越是看得緊反而越不好。他以前從來不偷偷在辦公室打電話不偷偷藏獎金,都是讓你給逼出來的。

絕影當然每天晚上都“儘量”跟燕兒一起睡覺。他在牀上翻來覆去不睡着,不是睡不着,是不睡着。等到燕兒睡着了,就偷偷溜下牀,燈也不開,繼續坐電腦面前。

這時候他想起大一在寢室熄了燈坐電腦面前練盲打“abcdefg……”,那時候果然沒白練要不現在怎能應付不點燈的情況。

這樣的情況最開始他還真不適應,你想像一下你學倒車:手要把穩方向盤,腳要踩好左右踩離合器右腳踩剎車,頭還要扭過去看到後面,眼看後面方向不正手就亂了方寸,方向盤也不知道改往哪個方向打,手一亂腳也亂,剎車油門一起踩,最後搞得自己都懷疑自己根本就不是塊開車的料。所以最初幾天,絕影腦子裏要想怎樣寫程序,手還得盲打,又必須時時刻刻注意燕兒的動態,她一動,馬上手要停下,眼睛不能回頭,腦子不能停,要隨時關注她下一步的動態。

日子持續了幾天,絕影也有了經驗。女人和男人不一樣,在睡覺上這一點體現得特別明顯:要是男人醒一下發現女人居然偷偷爬到電腦面前去了,首先會很嚴厲地跟她說:“快睡,怎麼還不睡?熬夜可不好。”如果她仍然沒有動作,那麼就衝上去直接拔了電源抱她一起睡覺。女人就不一樣,她睡熟了,一般雷都打不醒她。第二天,她問絕影:“怎麼昨天那麼晚了你還在電腦面前?”

絕影說:“昨天晚上失眠了,反正睡不着,忽然又想起一個問題,就打開電腦看看。反正也睡不着。”

燕兒問:“那啥時候睡的?”

絕影說:“沒開多久,大概半小時就睡了。”



這樣的日子過了好幾個月,也一直相安無事。絕影繼續研究32位彙編語言,在這幾個月中,他還是出了兩個成果:一、用匯編做了個高檔計算器,所謂高檔,就是至少能計算1024位的大數;二、在網上搜索到一個叫KmdKit的包,可以用匯編來開發內核模式驅動程序,他很想學下寫驅動,於是把KmdKit幫助文檔全部下載下來,可惜全是英文,於是他開始嘗試把它翻譯成中文。本來他想讓燕兒幫他翻譯,畢竟燕兒是英語專業的,奈何專業英語對她來說還是太難,老是把“driver”翻譯成“司機”把“register”翻譯成“註冊人”,還不如他自己翻譯。這樣折騰了半個於,總算翻譯完了,水平確實不敢恭維,也就是魯迅先生說的“硬譯”。正得意的時候忽然發現羅雲彬他們幾個也已經翻譯完都掛主頁上了。兩個一對比,絕影還是覺得自己翻譯還是可以了,以後他經常跟別人說:“KmdKit那個文檔,我以前也翻譯過,不比羅雲彬他們的差。”

有一天,燕兒跟絕影說:“我一個朋友跟我介紹有個公司,請會寫程序的給他們兼職,不如你去試試看呀。好像他們報酬還很高。”

絕影問:“招哪方面程序的?”

燕兒說:“不清楚,好像是ASP方面的。”

絕影說:“ASP我不會,什麼ASP啊,Java啊,做網頁之類的這些我都不會,一點都不會。所以以後有這樣的消息就不用去關注了。”

幾次過後,燕兒跟絕影生氣了。她問:“學ASP難嗎?”

絕影說:“不難,很簡單,兩個月就好了。那玩藝很高層的。”

“那你爲什麼不學呢?你天天坐在電腦面前寫程序,學了這麼久了也寫了這麼久了。可是你寫的程序有什麼用呢?有人買嗎?還不如去學ASP呢。”

那時候的確是這樣,很多公司剛開始有了網絡的意識,開始做公司網頁,論壇啊,社區啊應運而生,整個IT屆確實很需要做ASP,做Java的程序員。但是絕影不會盲目跟風,他覺得走彙編這條道理也是經過深思熟慮了的。他跟燕兒說:“我學的彙編,這是很地層和基礎性的東西,是學的很慢,但高層的東西老是會變,比如ASP,一下升級到ASP.NET好多東西就又要學。基礎性的東西就不一樣了,除非微軟把操作系統都全換了,把API全換了,否則變化都不大,至少不用全部重新學。”

燕兒聽不懂這些,她反而更討厭他,她覺得她這是在爲自己找藉口。

絕影深信自己是對的,他相信有一天他會很快樂的用匯編工作,並且他的工作能帶給他不菲的收入。但是他不能給燕兒說,人有時候就是這樣明明知道事情肯定是這樣,但是不能跟別人說,成果出來了你跟別人說,那是你的成功,成果沒出來你就跟別人說,那是你狂想,反而被別人笑話。



這段時間土匪啥也沒做,他是學習委員,學習他自然不怕,就“學習委員”這個頭銜頂在那裏也沒幾個老師會去掛他科。要說在寫程序方面,雖然他也學了C語言啊,微型計算機原理啊,單片機啊這些東西但實話實說他的水平也就和燕兒差不多。好歹燕兒還考了二級VB。他也去考了二級,考了兩次,但是沒過。說到考二級這件事他一直對絕影耿耿於懷。

本來大家說好一起去考二級的,雞哥,王江,土匪,但是絕影說:“考就考個大的。”自己一個人去報了四級。報了他就後悔了。四級和其它級別不一樣,二級還分VB啊,C語言啊,三級還分PC技術啊,網絡啊,可四級什麼也不分,學校外面的書店參考資料又少得可憐。――幾乎所有人都考二級,最多考個三級,所以四級的書根本賣不掉。比如三大男高音歌唱家的演唱會在哪開?當然是要到北京上海這樣的大城市去,你要開到青海西藏邊遠地區,連路費的成本都收不回來。――人家需要的是圓圓的饅頭,不是音樂。

本來土匪認爲要是一起考二級,憑他和絕影的感情,就是絕影有一萬個不願意都必定會幫他過關,沒想到他居然一個人跑去報了四級。

那次的結果是,土匪沒過二級,絕影沒過四級。

第二次,土匪還報二級,他跟絕影說:“一步一步來,先過二級,至少有個本本了,再去衝三級四級。”

絕影說:“考就考個大的。”

土匪報了二級C語言,還是沒過。

土匪沒過二級,他也並不傷感,反而是興高采烈地跑到絕影租的房子大呼:“我掛了。你呢?”

絕影還不知道成績已經出來了。土匪說:“來來來,我幫你查。”一查,絕影過了,這時候土匪倒是有點傷感,說了句恭喜,搖搖頭走了。

燕兒說:“你以爲土匪真是來恭喜你過的嗎?他是來看你掛的。”

絕影不在乎這些,只要自己過了就好。



這一天絕影和燕兒一起吃過午飯,燕兒下午還要上課,他就一個人往回走,遠遠看見一大羣人圍在張貼欄那裏。在平時,他肯定不會去看的,記住越是人多的地方越別去,首先人很多,去了未必能看到什麼東西,其次人多的地方賊也多。

但這次他確鬼使神差跑過去了。好多人都圍那裏看,那是個招聘啓事,本來招聘啓事貼在張貼欄是很平常不過的,可那落款上是家很大的牛B的公司。上面寫着:因項目需要,招聘兼職程序員一名。要求能熟練使用C/C++,有團隊精神,有一定的項目經驗……

《瘋狂的程序員》16

絕影在心中把那招聘信息上的電話默唸了兩遍,拔腿迅速往住處走,走幾步又把剛纔記的電話回味一次。到租的房子下面的公話超市,馬上找個最角落的電話撥起剛纔的號碼,好像要是撥慢了那電話就會飛走。

接電話的是個中年男人,操着普通話,這有點出乎絕影的意料,他原以爲這麼大個公司招兼職程序員肯定應該排個專門的接線員。那邊說:“喂,你好,找哪位?”

由於剛纔那一點點出乎意料,再加上一點點緊張,他對着電話竟然不知道說什麼好,好像應該先打招呼但該死的是他只忙着記號碼,根本沒注意下面的聯繫人:XXX。

他說:“哦,我是看了你們的招聘信息……”

那邊那男人彷彿努力回憶了好久,才說:“對,是有那麼回事?”

他問:“那你們招夠人了嗎?”

“人是來了幾個了,不過你也可以過來再面談。時間是XXXX,地點是XXXX。你做X路車到XX站下車就看見了。”

“好,那我到時候過來。”

正要掛電話,那男人忽然又問一句:“對了,你會什麼?”

這才說到問題的重點。對於這個問題的答案,絕影已經在心中演練了一千遍,他早就夢想着,有一天,一個BOSS級的人問他:“你會些什麼?”

他從容不迫地答到:“語言主要是彙編、C、C++、VFP,32位彙編是強項,另外對密碼學加密算法,驅動開發和逆向工程有一定的研究。”

其實密碼學加密算法和逆向工程這兩樣是拿來忽悠人的,要問他知不知道?當然知道,不僅是他知道,就是稍微看過點書,上過看雪論壇的人都知道。要問他懂不懂?懂個屁!不過說實話除非是研究院級別和殺毒軟件公司,還有幾家公司能搞加密解密和逆向工程?有幾家公司敢搞加密解密和逆向工程?

“那你有什麼實際項目經驗沒有?”

這個問題也正中他下懷,他感覺這一切就像電視臺記者採訪人一樣。記者採訪人之前,先跟他說:“一會我會問你這個這個問題,你要這樣這樣答……,來我們先演練一遍……”

於是他胸有成竹地說:“當然有,大一時我用VFP開發了Windows下的通訊錄,大二和小組用16位彙編開發了計算機串口通信軟件,大三用32位彙編語言獨立開發了一個高檔計算器,至少能完成1024位大數運算。”

“那你會用C++ Builder嗎?”

這下絕影驚出一身冷漢,C++ Builder?網上看過介紹,不過是英文版的,他英文本來就菜,你想僅僅完成KmdKit幫助的“硬譯”工作他就逢人變吹噓自己英語好,他的英語水平能好到哪去?用他自己的話來說,他說得最好的一句英語就是:“My English is very proo.”

正因爲是英文版的,他看了一眼就丟了,用他自己的話來說:“學這東西,我光花在學英語上的時間都夠我大學唸到畢業了。他本來想跟那人說沒用過,沒想到一開口卻說:“用過,但不是很熟。”

“這樣阿?我們這個CASE要求是用C++ Builder來開發。”

聽那口氣,絕影想要不補救怕要失去這次機會,趕緊補充:“我VC++用的很好,C++ Builder嘛,我覺得解釋執行的東西不太好,效率太低,所以不經常用。”

“C++ Builder?怎麼會是解釋執行的呢?”

其實絕影也不知道C++ Builder是解釋執行還是編譯執行,他知道VB是解釋執行的,後來大概看了下C++ Builder,覺得也是一個窗體往上面放東西,估計跟VB差不多,就信口說是解釋執行的,沒想到這次當場被別人識破,這是多沒面子的事情。比如說你一回家,老婆就說:“來,把洗腳水給我倒了。”你都屁顛屁顛跑過去給她倒,這都沒啥,反正家裏就兩個人。要是換成在外面,在朋友面前,哪怕老婆跟你說句:“來,幫我把這張紙扔那邊垃圾桶。”你都會覺得好丟臉,臉一沉,厲聲說:“自己沒長腿麼?”雖然你知道這樣說了回去肯定要掉一層皮,但在外面你肯定還會用很大的聲音這樣跟她說。

所以人不怕被識破也不怕丟臉,怕就怕當場識破和當衆丟臉。

眼看被當場識破,絕影趕緊轉移話題:“我VC++很好,其實語言嘛都沒什麼區別的,VC++編譯的Library在C++ Builder裏面一樣可以用。 ”

其實這句話,絕影也是忽悠人的,不久以後他才知道,Borland的編譯器和Microsoft的編譯器目標文件的格式不一樣,根本無法兼容。不過這次運氣好,那男人居然沒識破。

那邊那男人可能手頭上還有要緊事,忙說:“好好,那你先來吧。把你做的小CASE也帶上。”



掛了電話絕影一想,其實那招聘啓事上寫的清清楚楚:招聘兼職程序員一名。也就是說只要他們能招到一名,就招夠了。剛纔那人說人來了幾個,你也可以來,莫非是他們根本就沒招到人,但是又怕這麼大個公司一個寫程序的人都沒招到,說出去是多麼丟臉的事情,所以故意跟他說還有幾個人的。事實就是這樣,比如學校開招聘會,各大公司都在招聘,別人公司顧客盈門,你公司門可羅雀,搞得你公司自己都會不好意思。

再說了,雖說這學校是有這麼大,而且也還不錯,但就絕影來看學校裏學這些東西真的都是用來應付考試的,說實話現在隨便調查,在這個學校裏面有幾個人會寫Windows下的應用程序?計算機學院有幾個會,那都是牛B得不得了的人物了。

這麼一分析,他覺得他去應聘這個兼職簡直是闆闆上的釘釘,鐵定了的,那工作就是放那等他來拿的。



找到那家公司還是頗費了些周折,來接他的就是跟他通電話的人。他把他帶到這家很有名氣的公司,那是一家擁有5層辦公樓,一個停車場,一個籃球場,一個食堂,兩條狼狗的真正的大公司。他們一起來了到“研發部”。

他說:“你在電話裏不是說自己做過小CASE的嗎?能展示一下嗎?”

絕影把磁盤遞給他,裏面裝的高檔計算器。那人運行了一下,程序居然當場崩潰。這下他的臉一下變色了,彷彿是在自言自語:“明明在我那裏都能運行。”

他說:“算了不看了,也許是我係統的問題。說實話,你不會C++ Builder吧。”

這次絕影很自然地說:“嗯。”

“我們這個CASE必須要求用C++ Builder做。”

絕影想都沒想就說:“那個我可以學的,很快的。再說,說實話現在在學校裏,除了我,沒人能給你們做CASE。”

這話好像將了他一軍,他沉默了一會說:“那好吧,你先做個面試題吧。”

他把絕影叫到跟前,打開Excel給他演示:“這裏面是個矩陣,計算三元線性迴歸,Excel裏面有工具可以直接計算。你用C語言寫個程序來做,從文本里面讀入矩陣,把結果輸出出來。本來是讓用C++ Builder做的,既然你還不會,那你就用TurboC做吧,最好是直接做個函數出來。”

絕影問:“要多長時間?”

“最多給你一個星期,當然越快越好。別下看這題,很多人都做不出來。”

“那三元線性迴歸怎麼算阿,總要把公式給我阿。”

那人讓前面的祕書從文件框裏報了出一大堆資料,自己從裏面選了一些出來,對絕影說:“走,跟我去複印資料吧。”

絕影跟他走下樓,他印好資料,足足有30釐米高,他把它鄭重地遞給絕影說:“就這樣,裏面有原理有公式,你自己去研究吧,最後計算精度要求是double,你可以用Excel驗證結果是否正確。”那神態,彷彿在跟絕影說:“維護世界和平就靠你了。”

搞技術的人就是這樣,事情說完就散,絕不東拉西扯。臨走的時候,那男人突然說:“哦,對了,我姓楊。”

絕影說:“我姓絕。”



燕兒問他:“你去哪裏了?怎麼一下午都不在?”

絕影說:“補做物理試驗去了。那老師非要判我不及格。書上都說了,任何理論都需要試驗來驗證,試驗做出的數據纔是可靠的,如果理論和試驗的數據不符,應該以試驗數據爲準。我去做那個單擺的試驗,明明測出的數據是這麼多,老師非要說我測錯了,說和公式不符合,我跟他說要以試驗數據爲準,如果公式和試驗數據不符那隻能說明公式錯了。最後我還是忠實我的試驗數據,沒去修改它,結果就給他判不及格了。鬱悶。”

燕兒沒多說他什麼,她知道他是個死腦筋,做試驗還不就是求個及格,既然想及格當然是老師要什麼就做什麼了。這個世界上就只有他一個人明知道要死,還是要去堅持。

因爲燕兒明天有課所以晚上他就回自己寢室去住,絕影正求之不得,吃過晚飯他就去外面租光盤的鋪子租了張Borland C++ Builder 6.0的光盤,回到屋子翻出那30釐米厚的資料一邊裝C++ Builder一邊看資料。

走在路上他就在想,老楊說他不會用C++ Builder,他就偏偏要用C++ Builder把這道題做出來,他想像着他把用C++ Builder做好的題目交給老楊時他那吃驚的眼神。

這次他可錯了,等那Borland C++ Builder 6.0安裝完他試了一下,完全不是他想像的那麼回事情。整個全是英文就不說了,關鍵是他手上一點參考資料都沒有,更別說教程,那自帶的幫助文檔又全是英文,起碼有KmdKit幫助文檔的10倍那麼多。

最後他還是放棄了這個想法,一週嘛,還有時間,可以先去書店買本書再來慢慢研究。於是開始做三元線性迴歸。

這東西果然也不是那麼簡單的,看了一會資料居然沒什麼眉目,可越是這樣他做得越來勁,資料看完了,用筆算能夠算了,就開始寫程序,哪裏有錯就改哪裏。當然時間也在慢慢流逝,好幾次他不想做了,他想起老楊那句話:“最多給你一個星期,當然越快越好。”要是他明天就給他打電話很若無其事地跟他說:“那個三元線性迴歸,我昨天晚上就做完了。”保準他也會吃驚得合不攏嘴巴。這麼想,他就越來越來勁,最後還是在那一夜給做完了。後來絕影回憶,那是他寫程序到現在唯一一次使用了3個For循環嵌套。

做完了,優化一下代碼,總共50行,他小心地把代碼拷貝到磁盤裏面,又編譯出一個exe,也拷貝到磁盤裏面,看看錶,已經是上午的10點多。燕兒也應該下課了。

他給老楊打了個電話很若無其事地說:“那個三元線性迴歸,我昨天晚上就做完了。”然後他去等燕兒,他們一起吃午飯。他對燕兒說:“下午我要去XXXX公司。”

“去哪幹嘛?”

“上次我去面試了,給我一週的時間,我一天就做完了,下午去交給他。”

“情況怎麼樣?待遇怎麼樣?”

“肯定沒問題,至於待遇,還沒談,估計那麼大個公司,待遇差不到哪去。你還老是說我不會ASP,掙不了錢,那小錢有啥好掙的?要掙就去大公司掙大錢!”

那天吃飯的時候燕兒給他夾了好多肉。



絕影把磁盤裏的東西交給老楊,測試成功後,老楊問:“你覺得100塊報酬怎麼樣?”

他這樣說,這招聘的事情應該就已經定下來了,可這報酬也實在太離譜。絕影說:“那要看這個CASE有多大。”

老楊說:“現在不談CASE,咱們就談這個三元線性迴歸的代碼,你覺得100塊行不行?”

這很好算,50行代碼,100塊錢,一行代碼2塊錢。絕影覺得老楊開了個對他來說天文般的數字,他第一次知道一行代碼居然這麼值錢。在過去的一年中,他至少用彙編語言寫了30萬行代碼。

但是他還是很鎮定地說:“這個就這樣吧,但是我從學校過來要花很多車費的,還有學C++ Builder要買書。”

老楊很大方地說:“你去樓下辦公室領張公交卡,裏面有50塊錢,不夠又來報銷,另外再給你100塊錢作爲資料費。”
沒料到絕影義正詞嚴地對他說:“不行!”

《瘋狂的程序員》17
老楊很吃驚地看着絕影。

他緩緩地說:“不好。一張公交卡里面有50塊錢,車上賊又多,不小心掉了就全沒了。我覺得還是折現好些。”

絕影還算是聰明人。這就好比現在BOSS總跟你說:“小張啊,好好幹,再幹兩年就分點公司股份給你。”你要是真信了就傻了,這句話完全有資格收錄到十大謊話裏面。你要是夠聰明你就應該跟BOSS說:“BOSS啊,股份這東西太高級咱懂不起,還是不要了,折現吧。”

這麼一說沒想到老楊又大方起來,同意給他300塊錢。他說:“你安排下,每週什麼時候能來?”

絕影沒怎麼去上課,記不得課表,他說:“還是讓我回去先看看課表,跟老師打個招呼吧,到時候我給你打電話。”



去財務室領了300塊錢,坐在回學校的公交車上絕影心情無比激動,他給三陪發了個短信說:兄弟我已經找到工作了,在XXXX公司,哈哈。

那時候他大四上期。

回到學校已經是吃晚飯的時間,燕兒問他:“待遇談得如何?”

“沒談,不過還沒做就領到300元錢,你覺得待遇能低嗎?特別是昨天做那個三元線性迴歸,50行代碼就給了我100塊錢,你看做ASP的做Java的誰能拿到這麼多?我當初跟你說你還不相信。”

燕兒沒再說什麼,吃過晚飯絕影突然很想把這事告訴土匪,他也確實很久都沒回寢室了。

土匪喘吁吁從籃球場回來,老遠就跟絕影打招呼:“怎麼樣?外面住習慣不啊?不習慣就回來嘛。”

“不能回來了,現在事情多,又找了份工作,晚上寢室要熄燈沒時間做事情。”

土匪想找個工作有啥好牛B的,班上還是有好多人吹噓自己找到了工作,自豪得不得了,一調查,不是去發傳單就是去搞促銷。土匪認爲,與其去丟那個臉,還不如好好學習。

他鄙夷地問:“啥工作啊?又去下苦力?有時間還不如想辦法幫我把計算機二級過了,我給你現大洋!”

絕影在書架上拿了課表,平靜地對他說:“你懂個屁,這次我是去XXXX公司,研發部,研發員,懂不?我走了,忙去了。”

沒等土匪答話,他就離開了寢室。按照他的推測,土匪聽到他報出“XXXX公司”這個名字肯定會繼續追問他更多細節,反正他覺得他和土匪不是一個檔次,跟他講也講不明白。這裏面的細節就留給他一個人去體會吧。

出了學校又去那個公話超市對照着課表給老楊打電話,大概就是告訴他每週去兩天半,分別是什麼什麼時候。老楊在電話那頭不住的囑咐:“好,好,好好看C++ Builder,你一來,我們的CASE就開工。”



三天後絕影去了那公司。去的時候帶了本《C++ Builder入門與提高》,這書也是從西南科技書店買的。他對老楊說:“C++ Builder已經沒問題了,可以開工了。”

其實絕影自己都沒想到才三天時間,他就可以從什麼都不懂變成“沒有問題”。所以有時候人的技術啊,知識啊也許並不是學出來的,是逼出來的。比如你去考軟件設計師,本來至少有半年的時間來準備,可以那編譯原理裏面什麼詞法分析語法分析什麼正則表達式啊看得你頭都大了,這很正常,畢竟你是數學專業的就不是計算機專業的,是計算機專業的就不是數學專業的,甚至你跟這兩個專業都不沾邊。最後想算了還是放棄了,反正考試還有那麼多內容,其它的學好點,一樣能過。後來工作了,有一天,你BOSS跟你說:“小張啊,你從來沒讓我們失望過啊,最近很多程序員反應咱們那編譯器不好用,你看乾脆咱們自己開發個編譯器算了。給你一個月時間夠了吧,你可從來沒讓我們失望過啊。”他這麼一說,儘管在那一個月中你每天都在心中罵他,可最後你自己都嚇了一跳――居然還是把編譯器給搞出來了。就這麼一個月的時間逼一下,比那半年的效率都高得多。其實就算做不出來也沒什麼,做不出來很正常,做出來了你是牛人,這一個月要這麼累死累活地工作是爲什麼?不是爲了錢,是爲了別人對你的信任和肯定。所以你罵完BOSS,偶爾回想起來也許你還是會感謝他的。

你說一個編譯器裏面有多少技術含量,論技術含量得值多少錢,可是你在公司還是隻拿那麼一點錢,最多BOSS再發給你2000塊項目獎金。所以這樣來看很多時候程序員工作真的不是爲了錢,至少他在寫那個程序的時候想得更多是如何去解決某個技術上的難題,當然,東西做完一交他有可能馬上就會想到:囈,我的錢呢?才這麼一點?所以你就不難理解很多人――像燕兒這樣的人,他們不能理解你甚至嘲笑你居然可以天天坐那寫一分錢都賺不到的程序,並且還寫得很快樂。

對程序員來說,大部分快樂是從解決問題特別是獨立解決問題中來的,不是從這個CASE有多大,獎金有多少中來的。



當時正好是星期一公司的例會,老楊說:“走跟我一起去開會。”

反正開會的人除了老楊絕影一個都不認識,絕影自己坐那覺得挺無聊,倒是最後老楊跟大家介紹絕影:“這是新來的‘技術外援’絕影,很厲害,一天就把三元線性迴歸解出來了。”絕影站起來跟大家點點頭,那一瞬間他想起:慘了今天早上起牀後沒梳頭。

開完會,老楊跟他BOSS請示了幾句,對絕影說:“走咱們先去看車間。”

車間不大,絕影老遠看見上面有大大的放射性三棱形標誌,老楊一邊擋住絕影一邊說:“小心點,別碰,遠遠地看。就這東西有放射線太危險了,所以我們要做的軟件就是實現對這機器的遠程操作,比如我們坐在值班室裏就可以監視機器的運行情況並且能夠對它們進行控制,也就是說,我們的軟件是一臺完全仿真的機器。”

回到研發部,老楊讓絕影坐他旁邊的辦公桌,桌子前面已經貼了一張CASE進度表,這個CASE總共會持續兩個月。絕影看見“上位機”上總共有3個人的名字,“絕影”也在其中;還有一個姓周的做單片機部分。桌上擺了臺電腦,操作系統居然是Windows NT 4.0英文版。這讓他有點失望,上次他就見老楊用一臺筆記本電腦在工作,以爲去了公司也會給他配檯筆記本,他甚至已經給燕兒放了話:“公司會給我配檯筆記本電腦。”

畢竟是第一天去上班,老楊讓絕影自己去參觀一下公司,絕影首先問:“哪裏可以抽菸。”老楊說:“隔壁的隔壁,研發部辦公室和開發部辦公室之間。”

他跑過去,那裏果然有間休息室,休息室旁邊果然是開發部辦公室。他就覺得奇怪,研發和開發到底有啥區別?居然硬要分成兩個部門。抽了只煙,絕影去二樓策劃部轉了一圈遇到幾個美女跟他打招呼,都操普通話。問他:“新來的吧?以前都沒見過。”他說:“是。”再很自豪地補充一句:“研發部的。”他恨不得馬上跟她們再補充一句:“我叫絕影,現在在哪里哪里唸書,電話是多少多少。”他覺得講普通話的美女就是好,講話都好聽。

回到辦公室,老楊問:“熟悉了吧。”

他說:“還行,就是廁所有點遠。”

老楊說:“還有點時間,你來幫我做個事情。給定一個時間:年月日,算出是星期幾。”

絕影不知道C++ Builder裏時間用的什麼類,就知道API中有個SYSTEMTIME結構,就拿API來做,低層一點就是好,彙編啊VC++啊BCB啊VFP啊裏面都可以用。依稀記得讀高中的時候看了張報紙上面有個公式可以可以通過年月日計算出星期,用到了取整函數,學了高等數學才知道學名叫高斯函數,在網上拿 “計算星期”作關鍵字搜索了一下找了幾個公式,人家又講得複雜,光原理就講了好幾大千字,又沒有現成的代碼。當然有了這些資料完全也可以用公式計算出來。老楊說的是:“還有點時間。”你要真拿這些公式來做,就不是“還有點時間”了,是“沒有時間”。

於是再想辦法。反正是給你年月日計算星期,其它又沒什麼要求,先用GetLocalTime保存現在時間,再用SetLocalTime把系統設置成要計算的時間,再用GetLocalTime取時間,然後取SYSTEMTIME的wDayOfWeek,最後用SetLocalTime設置成原來的時間。操作系統都幫你把星期計算好了的,你自己還去算,那不笨死了。

東西交給老楊,老楊說:“這也太另類了。”

絕影問:“不行嗎?”

“倒不是不行,就是太另類了,反正我們是應用,又不是考算法,這辦法很好。”

所以寫程序有時候就是很有意思。比如你搞數學的,一就是一二就是二絕不可能出來三,但程序就不一樣,方法自由,很多時候解決一個問題的方法直接反應出這個程序員的性格和思想。

老楊收好絕影的代碼說:“下次來你就正式開工了,你回去可以先研究一下,這就是下面那機器的圖,你要做個VCL組件,把這個機器的圖放在窗體上像下面的機器一樣可以左右運動,運動的速度和最大距離可以調整,把屬性都給Publish出來。”

絕影想這玩藝還不容易,還用花那麼多時間,拿回去我一天就給搞出來。


回到學校把那玩藝從磁盤拷貝出來,C++ Builder打開,大概過了10分鐘,絕影傻眼了。

《瘋狂的程序員》18

擺弄了大概10分鐘,絕影就知道老楊交給他的這東西絕對不是他一天兩天就能完成的,雖然看上去很簡單,真開始做才知道麻煩,很多時候往往都是這樣,把書看完了,覺得什麼知識點都掌握了,C++ Builder也會用了,但真的一個CASE上來才發現真的什麼都不會,什麼都不懂。

反正要下週纔去公司,時間還算充足,一邊學一邊做還來得及。總之等他去公司的時候他也真把東西做了出來,交給老楊,老楊還算滿意,拿給他一本書:《C++ Builder編程實例》,他說:“其實我也不會C++ Builder,接到CASE的當天,我把它的幫助文檔全部看了一遍。還有這本書,也看完了,給你看吧。”

他說得倒輕鬆,以至於絕影都不好意思跟他說自己英語很菜,C++ Builder幫助文檔自己一個字沒看。

絕影恭恭敬敬收好書,老楊說:“今天你幫我把幾個函數做完,函數的原型我都寫好了,功能很簡單,主要就是一些字符串處理,要求寫在註釋中,你看看就明白了,不明白的來問我。”

整個上午,絕影都沒能好好工作。他喜歡在安靜的環境裏工作,要一點聲音都沒有,連音樂也不能放,可旁邊那老楊收音機一直開着,放的什麼歌也聽不清楚,反正感覺就像寺廟裏天天放那種。當時絕影就懷疑這老楊莫非是個信佛的?

一直熬到中午12點半,老楊好像終於解決出一個大難題,如釋重負地說:“走吧,吃飯去。”絕影其實早餓得不行,早上來的時候就沒吃飯,現在肚子又餓,又飽受老楊收音機的摧殘,根本沒辦法寫程序。本來食堂是11點半開始放飯,他早想一個人去,可是老楊不動他不敢動,老楊不說話他不敢下樓。

總的來說食堂的效果還是不錯,四份菜一份湯,要什麼要多少自己去取,比起現在某些公司所謂的“管飯”就相當於一個5塊錢的便當,這家公司顯然要大方得多。絕影一個人先打了兩大碗牛肉,碗裏裝得滿滿地。他往座位走的時候大家都小心讓着他,這時候他又後悔起來――其它人都很自覺,量力而食,就自己好像從來沒吃過牛肉似的。――不僅是後悔,簡直就是丟臉。

老楊的舉動更奇怪,他不去前臺打飯菜,徑直去了後臺,出來的時候碗裏裝得滿滿的。絕影想老楊不厚道,自己一個人開小竈,肯定是什麼好東西,望過去一看全是素菜,總算知道這個老楊真是個信佛的。他開始注意這個老楊。

怎麼說在這麼大一個公司研發部工作,工資沒有5000也有3000,天天穿件和守門大爺差不多的衣服,腳上蹬一雙布鞋,稀須的鬍渣,蓬亂的頭髮,經常變魔術似地從包裏抓出一把果凍或者糖,像寶貝似地,但有時候也給絕影幾顆,一隻手提臺IBM筆記本電腦另一隻手拎着個收音機,裏面放的音樂讓人極不協調。

難道搞技術的人註定就是這副德行?



後來絕影又去了幾次公司,每次都是坐公交車去,來回一次要4塊錢,最初他們是在研發部辦公室工作,後來他、老楊、老週三個人乾脆就把辦公桌電腦搬到下面的車間對着那機器現場辦公。車間裏面進進出出還是有好多工人,都穿着一致的髒兮兮的衣服,他們也在食堂吃飯,不過比絕影他們晚一些。公司的組織結構在食堂體現得淋漓盡致:首先是領導吃飯,一人一桌,專人專菜,然後是中層幹部,提供點菜服務,再然後是老楊絕影這些辦公室工作人員,就那五個桶裏自己選,最後纔是車間裏的工人,桶裏還剩什麼就吃什麼,桶裏沒有就沒得吃。

每次他們從絕影身邊過,或者絕影從他們身邊過,他都要立刻作出一副沉思的樣子,恨不得把他們拉過來一個一個告訴他們:“我和你們不一樣,我是搞技術的,你看我穿的都是便衣”



到五一節前最後一次去公司之前,絕影和燕兒在食堂吃飯,燕兒問:“應該發工資了吧。”

“是阿,幹了一個月了。今天他不發,我就問他要。”

“能拿多少呢?”

“還不知道,這麼說吧,要是500以下,我就立馬走人不給他幹了。你想寫50行代碼都拿100呢。這個月我給他們做了多少東西。”

絕影這樣說他的確沒有吹牛。進度表上的工作他是按質按量的完成了,那本《C++ Builder編程實例》他也看得差不多,裏面有很多東西還是很有用的。相反倒是老楊很不夠專業,進度一直沒跟上,每次去他總說:“這個,先別忙,先別忙,你上次給我的東西,我得先用起來。”

這次去了,老楊和平常沒什麼兩樣,寫程序的時候絕影一直在想一會應該怎樣跟老楊開口要錢,眼下就是五一節,因爲絕影找到這麼個兼職的工作,他和燕兒花錢就大方起來,想反正到時候有工資領,要是這次拿不到工資兩人還真的就沒法活了。

下班的時候,絕影還沒開口,老楊先說話了:“一個月了,來,咱們結算一下工資。”絕影還沒來得及高興,他就從包裏掏出一大把錢,一二三四五數了五張遞給絕影:“怎麼樣,對報酬還滿意吧。”

說實話那一刻絕影的心情跌落到谷底,但是他能怎麼說?他能跟老楊說:“才這麼一點呀,上次寫50行的代碼都拿了100元呢?”就算你真想這樣說,你也不能說。就像現在在公司裏和小組奮戰3個月終於拿下一個價值300萬的大CASE,想這下好了,1/1000的獎金總該要發的吧。結果BOSS過來拍拍你的肩膀,和藹地說:“乾的不錯阿,小張,按時安量完成項目了。去會計那裏領1500獎金吧,直接去領就行了,我跟他們打了招呼了。好好休息幾天阿!”那一刻你恨不得當場給他幾個耳光。

所以他只能違心地說:“嗯,滿意滿意。”

你要明白程序員想要的是什麼?是肯定。錢也許是次要的,但是憑良心說,自己做了CASE,並且做得很好,自己覺得自己的勞動可以值3萬快錢,但是他們就拿1500來打發你,不管他嘴上怎麼說,首先這就是對你工作成績的不肯定。所以後來絕影總跟朋友提起那50行三元線性迴歸的代碼,他說:“寫50行代碼,1塊錢,知道怎麼寫,99塊錢。”他覺得就算給他100塊也不多,因爲有很多人花一週的時間也寫不出來。



回到學校,燕兒還沒問絕影就跟他說:“領錢了,領了500塊。”說完拿出5張嶄新的百元鈔票:“就是這個,看。”

雖然離想像中還是有點距離,不過燕兒還是很高興,畢竟這相當於他們每人一個多月的生活費。

“下個月我不去了。”

“不去也好,反正都很累,表面上是每週去兩天半,實際在學校也常常在做。”

“不是因爲累,是因爲我覺得我所做的工作價值不止500元。”

吃過晚飯,絕影給老楊打了個電話。他說:“老楊,下個月我不來了。”

老楊有點吃驚,問:“爲什麼?是嫌報酬低了嗎?“

“這倒不是,我覺得壓力太大了。我回學校都要做,而且時間很長。”

說心裏話,雖然他嘴上這麼說,還是希望老楊能留一留他,就算仍然是500元一個月,他還是願意繼續做下去,只要他留他。

“哦,這樣阿。那好吧,不過你要把你的東西跟我交接一下。”

說心裏話,雖然他嘴巴上這麼說,還是希望絕影能留下去,就算他要1000元一個月,他還是願意他留下,只要他願意。

“東西都沒什麼,我今天打的包中已經包含了我所有的東西。都在裏面,你清點一下。”

掛了電話,絕影還是覺得心裏很哽,他幻想這事情還有轉機,想起老楊《C++ Builder編程實例》還在自己這裏,連忙又打個電話過去。

“你的書還在我這裏呢。”

“沒關係,我也看完了,你方便的時候拿過來吧。”

又掛了電話,絕影還是覺得心裏很哽,但是沒有什麼理由再打電話過去了。



五一長假絕影和燕兒都沒什麼事情做,那本《Windows環境下32位彙編語言程序設計》,羅雲彬,電子工業出版社中遠程線程那節和PE文件那章他還沒看,他覺得這兩個內容非常重要,隱藏進程和感染PE文件的方法就在這裏面介紹,這正病毒必須具備的特點,高級技術阿,所以一定要好好看,看懂,所以,放到最後來看。

這時候,絕影突然發現自己的QQ終於升級到有一個太陽,他一直盼望這一天。以前掛QQ按小時來算,他就後悔那時候天天開着電腦寫程序不養成習慣掛QQ,好多人早就有太陽了,他還捱了這麼久纔有。有太陽就是好,可以建羣。他迫不及待地去建立一個羣,叫什麼名字呢?自己正研究32位彙編的,覺得自己技術還算行吧,就建個羣叫“Win32彙編”,說做彙編有時候還是挺尷尬的,你看CSDN的論壇和Blog,就沒有彙編專區,不得不把自己劃分到“其它”分類裏面去,QQ羣也是這樣,分類只有“技術聯盟”,“其它”比較合適。

第一個進這個羣的是“絕影”,第二個是“清影”,那是燕兒的網名。過了一週,終於有第三個人加入他的羣。後來,絕影的羣里人慢滿多了,再後來,絕影成了QQ會員,再後來,絕影的羣里人滿了,他把羣名字改成“Win32彙編總羣”又新建了“Win32彙編第一擴展羣”,“Win32彙編第二擴展羣”,再再後來,人實在太多了,絕影就把“Win32彙編總羣”升級成高級羣。



五一假還沒放完,這一天,土匪突然給絕影打電話說:“慘了這次我慘了,這次你一定要幫我。”
絕影想:你個土匪,五一假就顧自己出去玩理都不理我,沒想到也有你求我的時候,哈哈。


《瘋狂的程序員》19

這次土匪的確不得不得低三下四地求絕影,開始他認爲單片機技術基礎是門很簡單的課程,你想51單片機指令就那麼多條,比80x86的背起來不知道容易多少,微機原理自己都能過,還怕這個。

他這麼想的後果就是考試前不得不又一次來找絕影。

他說:“你出去住,大家也好久沒聚了,來一起吃飯,去吃魚。”

吃魚的時候,他用力拍着絕影的肩說:“單片機,就靠你了。”他這樣說的時候,那神情跟現在資本主義公司老闆沒啥兩樣:我給你發了錢,你就應該給我幹,並且是我讓你幹啥你就得幹啥,我讓你幹到啥時候你就得幹到啥時候,因爲我給了你錢。土匪的意思就是:我給你吃了魚,你就得幫我過單片機技術基礎,因爲我給你吃了魚。

所以現在很多公司的老闆們們都沒搞懂這個情況,別認爲只有錢纔是東西,技術就不是東西。並不是說你給了別人錢,別人就必須按照你的任何要求給你做事情,應該是別人給你做了事,作爲回報,你應該給別人錢。

土匪這樣說,絕影自然很不爽,他說:“這個恐怕還是要靠自己阿,我單片機都自身難保。”

這下土匪急了:“啥不行阿?你肯定有辦法,就憑你的技術,那課就是不上閉着眼睛也能過。”

所以說你越是跟別人證明你行,別人就越不信,相反什麼也不證明就是最好的證明。

土匪想絕影也是個聰明人,如果不給他點實質上的東西看來他是不會輕易幫助自己的。他說:“哎呀絕影阿,眼看快畢業了,學院還有兩個保送研究生的名額,今天曹媽還在讓我推薦。我覺得你又聰明自學能力又強,不就是英語菜了點,努把力其實也沒啥大礙,現在給你說下,推薦你去,你願不願意?”

聽了這話,絕影欣然點頭,這筆買賣就算成交。

土匪想自己也真夠聰明,一眼就看出絕影的死穴,所謂投其所好,送其所要。念研究生,誰不想去念?至少以後拿出去跟別人說:“我乃XXXX大學XXXX碩士研究生畢業。”說起來也覺得倍兒有面子。但是以絕影的英語成績他要想考研,那難度等同於讓土匪這樣的人去考系統分析師。

這樣看來土匪還真有點聰明,但其實他真的很笨,他最大的笨就是不知道自己很笨。絕影根本不是他想的這樣,他說的話絕影只聽了一半,他就覺得前面誇他的話很中聽,至於後面念研究生什麼的他根本沒往心上去。道理很簡單:幫忙考個單片機又不是啥大難事,有這麼好的事情你土匪早自己去了,還會放到這裏?就算真要放到這裏,至少也要讓絕影幫他考個十科八科才能成交。

他望這土匪得意的神情,冷不防對他說:“你呀,當你有一天知道自己笨了,你就有點聰明瞭。”

話音一落,土匪的笑臉突然間好像有點抽筋。



土匪順利地過了單片機技術基礎,了卻了他一樁大事:如果大學四年有掛課的就沒資格申請保研。當然土匪也夠有自信,他理所當然地自己佔用了保研推薦名額。

那幾天土匪就像欠了絕影一大筆錢似的,整天躲着他。絕影也沒跟他計較這些,他知道就算土匪真的錢了他錢,他也要不回來。所以只要人心態好心情就會好,本來那東西就不屬於你,你要真把他往心上放了到時候整的還不是自己。



新學期的時候王江跟大家說:“最後一學期了,大家還是經常回寢室住吧。畢竟四年同學,就快散夥了。大一大二的時候還經常開下臥談會,現在住回來,再回味一下年輕的時候吧。”

土匪見絕影從來沒跟他提起保研的事情,以爲他已經把這事忘記了,覺得還是有點對不起他,也誠懇地說:“就是就是,絕影你也回來住段時間吧,大家同學一場,說實話有時候還是多想你。畢業了,你老婆肯定還是會跟着你,兄弟夥就不一樣了,得各奔東西找錢呢。”

晚上躺在牀上,他們三個又開始開臥談會。本來寢室應該住四個日人,但是超薄實在太不和羣。他不是本地人,性格也跟大家有點不合,加上語言又不通以前開臥談會他們三人談得興高采烈的時候往往就伴隨這超薄的鼾聲。而且他對自己的女朋友很滿意,儘管他們三個看了之後都只用了一個字來形容:醜。但他就是覺得她很不錯,覺得他們沒欣賞水平,所以就越發地鄙視他們,所以他不回寢室也在他們的預料之中。

王江說:“一畢業,我就要創業。”

土匪穩:“你找好項目沒有?”

“還沒有。找項目還不容易,關鍵是如何找錢找投資。不過這個你放心,根據我多年拍電影跑市場的經驗,找投資對我來說不是啥難事情。”

王江就是這樣,他就是不相信“事在人爲”這些簡單的道理,總是認爲事業阿,成功阿這些東西總是爲他準備着,不管幹哪行哪門,只要他王江上馬事情就做成了。對他的這種思想土匪和絕影都不好說他,他們就沉默着,等他去做,等他失敗,等着笑話他。他去做了,失敗了,可是他的理由也來了,他的理由能讓失敗也變成成功。因爲那事情沒有失敗,是他自己在關鍵時候放棄了。爲什麼要放棄?因爲他突然對這事又沒了興趣。所以他的事情總是在想像中成功,在實踐中失敗。

這次土匪卻發表了不同的觀點:“創業當然也好,但是剛畢業就去創業太沒經驗了要吃虧。還是想再念幾年研究生,多充點電,以後走上社會才吃得開。絕影,你的打算呢?”

土匪這樣一問,絕影不免有些慚愧。他不像王江那樣要雄心勃勃地去創業,一是經濟上不允許,二是他真的沒有什麼好的CASE可以去創業,也不可能像土匪那樣去考研,因爲他英語實在太菜,考研等於去浪費錢。他說:“我嘛,我就想找個可以天天上網的工作。”

土匪突然很激動:“那你也太沒追求了。別拿出去說,真給我們寢室丟臉。”

王江也說:“就是!我要去創業,自己開公司,等到開招聘會那天我一定會去,不過不是去參加招聘,是去招聘人。”

大四的招聘會,如果我也參加,但是不是去被招聘而是去招聘人,那該有多好。絕影把王江的這句話深深地記在了心中。



大四下期沒有課學校都管得很鬆,巴不得大家都認真去找工作,頂級大學互相比什麼?比研究水平,比課題,比863計劃。像絕影他們這個高不成低不就的大學比什麼?比招生規模,比就業率。所以學校巴不得每個學生都不要上課,不要待學校裏,都去認真找工作都去創業。

土匪天天抱着書往圖書館跑,王江一到白天人影子都找不着,估計是去跑創業的事情去了。絕影還是有空就坐電腦面前寫寫程序,跟羣裏的人聊聊天,反正就是天天都呆網上,順便在網上找找工作。

技術進步了就是好。高考結束的時候絕影和三陪覺得自己都沒考好感覺肯定念大學沒戲了,於是一起去找工作。那個年代網吧都還在用貓撥號,他們不得不頭天晚上就跑城裏網吧上個通宵網等着早上人才市場開張。結果兩個高中畢業生,論人才又算不上人才,自然碰了一鼻子灰。現在可好,天天就坐電腦面前邊聊天或者邊打QQ遊戲的時候邊翻翻招聘網頁比在那人才市場站一天見識到的公司還多。

這天他翻着招聘網,看見有這麼一條信息:XXXX公司是XX省科技廳認證的高新技術企業,專門事醫學影像軟件開發,與GE,Siemens,Kodak等公司有多年合作經驗,現面向學校招收實習生,初級程序員,要求能熟練使用C/C++,掌握VC,MFC,有數字圖像處理經驗者優先。有意者請將簡歷郵寄至XXXXX,所有資料將保存至人力資源庫。

看了絕影就想笑:招大學實習生還有數字圖像處理經驗者優先。別的不說就這個大學裏面有幾個人會搞數字圖像處理?當然學校也的確開了數字圖像處理這門課,不過那是選修課,純粹是給學生混學分的。上課的30多個人老師都知道,就絕影還算合格,其它人都可以給他掛了。

話又說回來,這時候絕影纔想起自己真的對數字圖像處理還有些研究。什麼計算灰度阿,中值慮波阿他還是懂,就是小波變換這些高等數學的東西他弄得不是很明白。不過上學期爲了讓別人知道自己技術又進步了,他專門去買了本《遺傳算法》。遺傳算法是什麼?誰知道?學校裏面誰都不知道,數據結構和算法反正是沒講這個。沒人知道的東西就是高檔技術。你想你聽都沒聽過的東西我絕影都在研究,我絕影的水平那比你不知道高多少。

書買了他也沒浪費,還是看了一些。特別是選修數字圖像處理之後,注意到遺傳算法最後一章居然講到圖像歪斜校準,覺得很有意思,認真看了一下,居然還看懂了一點。那一天他又有一個夢想:現在網上不是有很多圖片或者翻拍的老照片不是很清晰麼?哪一天我用遺傳算法做個優化照片或者去馬賽克的程序,你運行了就放那裏,讓它慢慢進化,慢慢優化,最後居然能得到一張清晰的照片,那這個軟件肯定能賣不少錢。

這麼想,他就給那公司去了一封郵件,想不去白不去,反正他們做醫學影像,談到數字圖像雖然我沒啥真正水平但比起其它的大學生來說我至少還能說出點專業術語。

沒想到第二天一早,絕影就街到一個電話,號碼他不認識,電話那頭的人說:“你好,我是XXXX公司總經理,你能到我們公司面談麼?”

《瘋狂的程序員》20
絕影放下電話,對燕兒說:“XXXX公司讓我過去面試。”

“有把握嗎?”

“當然,你不知道剛纔那人打電話的語氣,簡直就是求着我去。”

“你簡歷還沒做好呢。”

“要啥簡歷阿,人去,行就行,不行就走人。此地不留爺,自由留爺處。”

“那總該去把頭髮理了吧,早就讓你理了,就都說沒時間,這次去面試不管怎樣總要給別人留個好印象吧。”

絕影想燕兒說的也是,本來頭髮就已經長了兩個多月,並且髮型和臉型一點也不配合,臉型又和衣服完全不一致,平時大多數時間都呆住的地方上網寫程序,反正又不用出去見人,就算見也就見土匪王江他們幾個。對他們來說評論哪個妹妹臉上多了一顆豆豆,走路的姿勢完不完美比評論絕影頭髮的長短來說有意義得多。

絕影去外面轉了一圈找了個可以理髮的坐了下了。店主見了他老遠就打招呼,高興得不得了,似乎很久沒有顧客光顧他們。他對小工擺擺手:“讓開,這次我親自操刀!”

既然親自操刀,自然要充分展示自己的實力。他一邊理髮一邊滔滔不絕地跟絕影講理髮的理論,比如他怎麼剪,他就講爲什麼要這樣剪,這樣剪有什麼好處,有什麼樣的效果。理完之後,前面要留一小撮長的,這樣人看起來纔有個性。

那人小心翼翼地圍繞絕影轉了一圈,一邊打量着絕影的頭一邊不住地點自己的頭,對自己的作品很滿意。儼然一個藝術家在欣賞自己精心設計的作品。

絕影說:“算了吧大哥,我是去應聘的,能不能給弄正式一點?”

藝術家和程序員有一個共同點就是對自己的作品寶貝得不得了,像自己的兒子似的,就算自己的兒子有一點瑕疵,但終歸是自己的兒子,不到萬不得已也不願意輕易去修改它。這就是爲什麼在公司裏面開會的結果是大家一致認爲程序應該這樣這樣改,就是程序員不同意修改。

顯然那店主也極不情願修改自己的作品,但礙於客戶的要求,還是稍微修正了一下,兩剪刀下去從外觀上來看其實修正效果並不大。絕影想反正這樣也不醜,感覺那店主和自己一樣自以爲是,還是少跟他打點交道,大不了以後永遠不來了。但是還是很禮貌地跟他說句:“不錯不錯,這樣很好。多少錢?”聽到表揚,店主大方起來:“12塊錢,給10塊錢行了。”

回去見了燕兒,她厲聲說:“不行不行,前面留那麼長一撮,都是要工作的人了又不是混混,不能這樣,再去找他!”

絕影覺得再去找那店主不好,再說實在不想再跑一躺,他說:“懶得麻煩。反正我是去寫程序的,又不是跑業務見客戶的。”

“不行,不行,一定要去弄好。這是個人形象問題。走,我帶你去。”

又見到那個店主,燕兒一上去氣勢洶洶地跟他理論,把他的作品貶得一文不值。絕影一句話也不說,店主聽了十分尷尬,想反正跟她講理髮的理論她又不懂,女人還是少去惹比較好,終於極不情願地同意把絕影前面那一小撮頭髮剪掉。

絕影上公交車的時候,燕兒還叮囑他:“一定要注意形象!”



那家公司離絕影原來做C++ Builder的公司不遠,其實很多高科技企業都集中在這附近。第一次進去公司還是讓絕影有點失望――比起原來那家公司肯定要失望。公司很小,人也不多,任何人很難想像就這麼巴掌大一點的公司居然跟GE,Siemens,Kodak有長期合作關係。

進去公司遇到的第一個人大概就是個程序員,他頭也沒擡,眼睛始終盯着顯示器,手不斷在鍵盤上敲打,只說了一句話:“面試的吧?裏面去。”

裏面的人看上去就成熟多了,或者叫“老練”吧。他站起身,一邊說:“你好你好,我就是公司的總經理,我叫Ivan Zhou,叫我周總就是了。”一邊跟絕影握手。絕影很少跟人握手,印象中這好像是第一次,所以握得極不自然。

絕影說:“這是我第一次面試,有點緊張。”

“沒事,沒事,沒啥好緊張的。”

那人讓絕影坐下,叫外面小李給他倒了杯水,繼續說:“你就是絕影吧。我看了你發的郵件。你提到你熟悉底層,擅長彙編。很好很好。會用VC++嗎?”

有個笑話說小白兔去問副食店老闆:“有100個包子嗎?”老闆說:“沒有。”小白兔走了。第二天,小白兔又問:“有100個包子嗎?”老闆說:“沒有。”小白兔走了。第三天,小白兔又問:“有100個包子嗎?”老闆高興地說:“有。”小白兔說:“那我買兩個包子。”

這種情況就絕影深惡痛絕的。既然你要招的就是會VC++的,會C/C++語言的,那你還說“熟悉底層擅長彙編”好。那不是用高射炮打蚊子麼?

想雖然這樣想,不過看起來周總還是一臉真誠,絕影還是很客氣地對他說:“VC++接觸過,但是用得不多,不過我學起來很快的。學校裏面一邊都是用TurboC或者TurboC++,這兩樣用得比較多。”

“行,那數據結構算法怎麼樣呢?”

“這個我們在學校學過了,我還行。關鍵是我對驅動開發啊、逆向工程啊、數字圖像處理啊這些有些研究,我覺得這纔是我的強項。”

“OK,你可以現場用VC++做兩道題讓我看看嗎?用VC++有問題嗎?”

“當然沒問題。”絕影這樣說的時候心裏有點虛。VC++這個微軟出的東西很有名氣,絕影自然有所接觸,但他還真沒用VC++像模像樣地做出過東西。你想天天用32位彙編根本沒啥好的IDE,大部分都是用ml、link在彙編鏈接,搞成了習慣,最後明明放着好好的VC++的IDE不用偏偏要用cl去編譯C/C++程序。要換成IDE了,反而還不會用了。

周總讓小李給絕影安排了一臺電腦,他覺得這臺電腦好破,起碼連機箱的蓋子都少了一邊,窮得都沒錢穿衣服了當然是很破的電腦。小李幫他打開面試題的文件夾,題目有兩道:一道指針的填空題,第二道很變態:限時1分鐘用冒泡排序法排序10個數字。

指針的填空到是很簡單,反正你記住幾個原則:一、處始化;二、注意空指針和野指針。基本上學校考試題啊,面試題啊的考點就這些。不過絕影還是花了一些時間,首先是來熟悉VC++的環境,怎樣建立New Project,編譯在哪,鏈接在哪,點什麼才能運行。他又不會用VC++來調試,那時候他用32位彙編對他來說基本上就是沒辦法調試,最多用個MessageBox輸出結果來看看,要輸出數據還得用wsprintf格式化一下,而且格式字串又沒辦法弄成局部變量,所以那樣的開發實際上和瞎貓逮老鼠沒啥區別,你就得不停地希望這次遇到的老鼠是隻死老鼠。

排序可難倒了絕影,不過限時基本沒用,做完了指針的題花半小時來檢查,其實就在心中想排序的事情。以前數據結構和算法肯定是學過冒泡排序的,奈何那時候什麼冒泡排序法,快速排序法,插入排序法,希爾排序法確實學得太多,名字都記不住。他也搞不清楚到底哪個該怎樣排,鱉了半個小時乾脆自己寫了個排序法,好歹還是把結果給排了出來。

交給周總,絕影心裏惴惴不安。他運行了一下指針的程序,沒問題。看看排序結果,也沒問題,便說:“嗯。排序我不具體看了,反正是兩個For循環嵌套,應該沒問題。做還是做出來了,可以先到公司來實習。”

聽他這麼說,絕影算是鬆了口氣,沒等他說話,周總繼續說:“至於待遇問題,既然你是來實習,就沒有工資這個概念,給你發生活補助,一個月250塊錢。先有2個月實習試用期,完了之後轉正式實習,如果實習沒有問題等你畢業了,可以留在我們公司試用,如果幹得好咱們就籤合同。你今天先回去,把你的時間表整理一下,看看每週什麼時候能來公司。”

所以現在資本家就是聰明,先是2個月實習試用期,完了又是幾個月實習,然後又是幾個月試用,真要是幹得好籤上正式合同那起碼也要等大半年,要是BOSS覺得不爽最後連合同也不跟你籤,那你就虧大了。絕影想也沒啥,反正現在自己還正在念書,不過那250塊的生活補助也太少了,虧這個跟GE,Siemens,Kodak有長期合作關係的公司開得出來。既然這樣,那我也不客氣,本來一週可以來兩天半的,我就來兩天。

絕影點點頭表示同意,起身跟周總說:“那我先走了。”

周總突然像想起了什麼,說:“哦,那一起走吧,正好我要出去辦點事,順便用車送你一程。”

兩人一起出門,走到門口,周總又補充了一句:“小絕啊,還不熟練。”

了車上,反正路上也沒事,絕影首先打破沉默:“現在有好多人做ASP啊,Java啊,可是我沒學那個,我一直就學的是彙編啊,SDK啊這些比較底層的東西,經常用命令行編譯,所以有些工具用起來不是很熟悉。”

周總突然問:“會寫makefile嗎?”

“當然會。”絕影這樣說,因爲在那本《Windows環境下32位彙編語言程序設計》中第二章就講了makefile的寫法。他天天用匯編寫程序,哪裏有不用的。

“VC++的編譯器可執行文件名是什麼?”

“cl.exe。”

“不錯不錯,我很較喜歡研究底層的人,什麼VB這些根本不可能用在具體的應用軟件中,有時間的話我們可以詳細探討探討。對了,我們公司還有一個董事長,叫Steven Chen,我們都不是四川人,你跟我們講普通話有時候聽不懂,以後在公司還是儘量講普通話吧。會講嗎?”

“會講。”



周總把絕影送到公交車站,坐在車上,雖然這個公司不是很令絕影滿意,但想想一週纔去兩天,一月纔去八天,有250塊錢,要按一個月出勤24天來算,也有750塊錢。這麼想,他又按賴不住激動的心情,掏出“電蛐蛐”給三陪發了個短信:兄弟我又找到工作了,250塊錢一個月,一週去兩天。

回到住處,燕兒還在上課,絕影迫不及待地跑去CSDN的彙編論壇。那上面經常有人因爲考試過了、升學了、就業了,甚至生孩子了這些喜事來發些散分貼。絕影在其中接了不少分,老早也想自己有啥喜事也去發篇散分貼回報一下各位網友順便炫耀一下自己。
這次跑去論壇,他發表了一篇名爲《還沒畢業,當上程序員了,散分100》的帖子。散分貼就是火熱,不一會就很多人回覆,其中二樓的回覆是“用匯編寫程序的不叫程序員,叫工程師”,絕影看了心中美滋滋地,好像自己就已經是一個工程師了。

《瘋狂的程序員》21

絕影第一次去公司周總先給他介紹同事:“小李是祕書,小周是程序員……以後你就跟着小周,他很厲害的,要好好跟他學習。”

他對小周點點頭,本來想跟他打個招呼,但實在又不好稱呼他。周總當然可以叫他小周,自己總不能這樣叫他,叫“周哥”,絕影又覺得特別彆扭,以前他還很少這樣稱呼一個人,所以他也就只好跟他點點頭。

介紹完,周總安排絕影就坐小周旁邊的辦公桌,說:“那你們先忙吧,我就不打擾你們了。遇到什麼問題要多問小周。”

小週一直沒說話,也一直沒擡頭,等周總走了,他只說了句:“聽說你彙編不錯。”

絕影忙說:“不敢當不敢當,就是學了一點,瞭解一點。”他看這辦公桌上的電腦正是自己面試時做題的那臺機器,連衣服都沒得穿,破得不得了。他問小周:“那我現在做什麼呢?”

“先看MFC。”

先看MFC,MFC這個東西絕影倒是知道,其實只能算是瞭解,不就是Microsoft Foundation Classes――微軟基礎類庫麼。具體是什麼他不知道,總之一個東西你只要知道他的全稱是什麼至少能給別人留下非常專業的印象,你問小周:“你知道MFC全稱是什麼嗎?”他還不一定答得上來。

MFC在哪裏看?從哪裏開始看MFC?看MFC什麼?絕影都不知道。他本來想問小周,但看他一直神情專注一絲不苟而且貌似他又是個不愛答理人的人,至少說的第一句話“聽說你彙編不錯”感覺有點藐視絕影的感覺,他不想去碰壁,乾脆就開了電腦對着它發呆。

最後終於還是小周沉不住氣了,他說:“我在你共享裏拷了個Project,你先打開看看,有什麼不懂就問我。”

他雙擊打開那Project,VC++的進度條唰唰唰跑了好幾躺終於纔看到它的真面目,嘗試編譯一下,乖乖,居然用了將近一分鐘,有時候就編譯一個cpp文件居然就要用好幾秒。還是彙編好,你看一個ASM文件拿來彙編,基本就沒有停頓,彙編器來得快,寫起程序來也來勁。拉開左邊的Source Files列表,裏面密密麻麻都是cpp文件,看得絕影頭都大了,程序入口點在哪裏,哪個文件幹什麼,他都不知道。你想用32位彙編來做,做再大也就放在一個ASM文件中,技術好一點,分成幾個ASM文件用include包含進來,技術再好一點,分別把幾個ASM文件彙編成obj再連接,要找入口點,直接去搜索“end xxx”,這個Project可好,居然連WinMain都找不到。

可他又不好意思開口問小周,作爲一個程序員,雖然只是實習試用期的程序員,你跟別人說你連入口點都找不到那還不被同行笑死。於是就裝模作樣一個人看,似乎看得仔仔細細津津有味。



燕兒問絕影:“第一天去工作感覺怎麼樣?”

他不敢跟燕兒說自己去做了一天啥都不懂啥都沒做,只能說:“行,還不是那樣,不就寫程序嗎?”

他這樣說,自己還是偷偷去書店買了本《MFC入門與精通》,得虧大家都還不知道他對MFC一點都不懂,要不這工作八成沒希望。雖然公司不怎麼樣,但拿出去跟同學說:“工作嗎?這個問題我已經落實了,程序員。”還是感覺很有面子,特別是新聞上老是講畢業生就業率怎麼怎麼不樂觀,說得多了,看得多了,讓他們這些大四學生還是挺有壓力,前幾屆畢業生還互相比誰誰誰的工作單位好,待遇高,前途大,最近幾屆就比誰誰誰找到了工作,誰誰誰已經簽了合同。

所以那段時間絕影一遇到同學聊天不到兩句就把話題扯到找工作上來,他問他們:“怎麼樣?工作的事情有眉目了嗎?”

他們說:“還沒呢。”然後一般會反問一句:“你呢?簡歷做好了沒有?”

這就是絕影要的。他可以大大咧咧若無其事地說:“做啥簡歷阿,工作我已經落實了,程序員。直接去做了個面試題就過了,簡歷什麼的做都沒做,自己有技術有東西就不用去騙人,還要簡歷那東西幹啥阿?”



很多時候程序員中的前輩講一個人學寫程序有沒有前途,總說:“學程序,不光要能吃苦能用功,還得看有沒有‘sence’,沒sence的人就是再怎麼學再怎麼給他講效果都不好。”

本來絕影挺相信這話,畢竟是前輩說的,他總想自己應該算有sence的吧,至少很多人都還是誇他智商高聰明。要換成另外一個人聽了這樣的誇獎肯定高興得不得了。但絕影不這樣,別人越誇他聰明他越反感。

初中的時候有一個星期五班長對大家說:“明天是星期六大家去放鬆一下我組織大家一起去看場電影吧。”絕影沒去,他回家一個人背政治,就在家裏踱步從客廳這頭踱到那頭一邊踱一邊背政治。星期一政治考試他考了94分全班最高分。於是同學們開始誇獎他:“喲,真是太聰明瞭,看幾遍就能背了,就能考94分,智商高就是不一樣。”

絕影覺得他們那樣說簡直是對自己的侮辱。憑良心說我背書的時候你們幹啥去了?看電影去了。我考到94分你們就說我智商高聰明來爲自己沒考好找藉口,同時把我的刻苦用功給我全部抹殺掉。

其實“sence”這個東西也是這樣。

有時候想學個東西比如KmdKit開發驅動程序吧,學了好幾天都沒啥進展,頭腦裏全是調用API,想憑着經驗去套用驅動程序,結果幫助文檔是看完了可自己頭腦裏還是一點印象都有甚至連Kernel Mode Driver是啥東西都還不清楚。

又說用VC++,MFC,本來知道這東西是有用以後工作阿開發的肯定要用,還是去看了一兩天,覺得還是沒一點頭緒,想算了還是放棄了也許自己真的是沒有“sence”。

所以“sence”就像跟你捉迷藏,開始你以爲肯定找不到他了或者他根本就沒在你這裏,等到你急着要用的時候它突然又不知道從哪裏一下蹦了出來,讓你突然欣喜若狂。

絕影也是這樣,沒想到這幾天突然“sence”出來,他看MFC如有神助兩三天時間居然看出點門道。不過這東西還真不是一般人能看的,比如土匪,這學期都學了C++了,你跟他說“微軟基礎類庫”他還是照樣理解成“微軟基礎內褲”。這樣理解也就算了,可他還一臉虔誠地問絕影:“你說微軟沒事了搞內褲做啥阿?他們不是搞軟件開發的麼?”



又去了幾次公司,土匪突然給絕影打了個電話:“C++的楊老師到處找你呢,說你好幾次沒來上課,問你C++還想不想考試。”

絕影突然意識到問題的嚴重性,上次本來數字信號處理這門課他鐵定能過的,就因爲曠課又沒給老師打招呼結果給掛掉了。後來他給那老師寫了封信,告訴他我現在是計算機XXXX三級,軟件設計師,我在一家公司兼職就是做數字信號處理的(當然這個是爲了增加說服力虛構出來的),如果這門課連我都掛了,估計這個學校能過的人不超過3個。後來也許那老師去了解了具體情況,還是給絕影回了封信,大概就是很遺憾什麼什麼的,但是他也沒辦法了,因爲成績已經入了教務處的數據庫是沒辦法修改的。

後來絕影一個很好的朋友也是他數字信號處理試驗課的老師跟他說:“以後什麼課不去上,先去給老師打個招呼。”

他立刻找到楊老說,說:“我現在在一家公司實習了,程序員,用的就是C++和MFC,所以C++這門課肯定沒問題,因爲公司的事情比較多,可能來上課的時間就比較少了。”

那時候工作是頭等大事,就算拿到院長校長那裏去他們都是鼓勵和支持學生就業的,再有可能楊老師還是覺得自己的學生挺有出息,這麼早就找到了實習工作,還是搞開發的,憑良心來說在公司用C++實習兩個月肯定比在學校念半年書有用得多。於是和藹的說:“沒關係沒關係,考試的時候來就是了。要是考試的時候來不了,就提前給我打個招呼。好好工作去吧。”

絕影覺得這個楊老師挺好挺講道理,還是去上了他幾節課。下課的時候他問楊老師:“我定義了一個類,如果用‘new’來動態創建它,編譯器會分配空間,自動調用構造函數等對它進行初始化,如果我用GlobalAlloc這個API來爲它分配空間,系統會自動調用構造函數來對它進行初始化嗎?”

楊老師用粉筆在黑板上比劃了半天最後說:“還是去試一下吧。”

那時候他忽然覺得學校很忽悠。當時他真的不知道這個問題的答案,但他沒想到教C++的老師也不知道這個問題的答案。



公司裏面跟小周學了一段時間,絕影也覺得特別鱉,那小周看起來每天都很忙,忙得沒有一點時間回答他的任何問題。他總是說:“等一會,你自己先看看。”這一等往往就等到他下班,他又說:“下班了,工作上的事情先不談了,下次你來我給你說。”於是扔給絕影一本VC++的書,書絕影沒怎麼看沒有印象。

沒辦法還是要自己學,雖然累,但成績還是有的,那個他自己做的讀寫註冊表的Demo就是證明。他把這個東西交給周總,周總臉上露出一點笑容:“不錯不錯,小周還是讓你進步很快嘛。行,實習試用期就算過了,現在開始正式實習。”

過來國慶節,周總又把他叫到辦公室:“由於種種原因,小周要暫時離開公司,以後你要在公司發揮更大的作用。看看能不能多點時間來公司。雖然你在學校也可以做點東西,但我們主要還是想讓你儘快融入這個環境中來。”

絕影想這不是整死人嗎?就這巴掌大點的公司,對外還宣稱一個醫療軟件公司,年利潤多少多少實際上真寫程序的人也許就小周這麼一個,現在他都走了不如關門算了。還讓自己發揮更大的作用,自己還指望過來學點東西呢。

這麼想,絕影還是跟周總點點頭。他說:“馬上畢業了,學校事情還有點多,下週馬上體育期末考試了,我考完了就多抽點時間來公司。”

回到學校的幾天,絕影一直在思考還要不要去公司。去,那公司實在沒什麼前途,也許讓同學知道公司是這麼個破樣還會被恥笑;不去,同學都知道自己找到了工作,現在工作丟了還是會被他們恥笑。
這天,正好是體育期末考試,絕影剛跑完1000米感覺氣都接不上來,突然“電蛐蛐”響了,一看,是公司打來的。

《瘋狂的程序員》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是什麼她可能都不知道。
可是這次王老師卻說:“不行,不能用這個題目。”

《瘋狂的程序員》23

絕影覺得有公司和周總在後臺撐腰,自己做這個題目是十拿九穩。不要說眼前這個王老師,就是放在整個學校,能懂DICOM的又有多少人?就算懂,他們只搞研究不搞應用,理論和實際嚴重脫鉤。

所以他很鄭重地跟王老師說:“王老師,你放心,我做這個題目肯定沒問題,我們公司就是搞這個的,什麼技術資料、代碼例子都有的是。”

王老師說:“這你就不懂了。什麼問題凡是跟‘原理’沾上邊這題目就大了。原理性的東西你懂得了多少?再說就算你真懂一點寫出來又有幾個人能看懂?原理性的東西有多大?就憑你那幾萬字的畢業論文能夠闡述清楚?我們報課題報項目多了,這方面經驗比你多,這個題目太大了不行,必須換個題目。”

絕影想想也是,DICOM標準裏面那麼多東西,就DICOM傳輸這裏面就包含什麼消息交換、消息交換的網絡支持、消息交換的點對點通信支持還有什麼協議數據單元、聯繫控制協議、DICOM消息協議這些東西。東西太多,說實話絕影也搞得不是很清楚,大概覺得這個DICOM傳輸就和ISO-OSI模型一樣分層,下層是物理介質標準,上層就是一些數據結構之類的。所以你要讓他說“原理”他還真說不出來。正如大一時候宴斌說原理這東西:“不可說,不可說,說了你們也不能理解。”估計關鍵不是不能理解,是他也說不出來。

這樣想,於是便說:“要不把題目換成《DICOM傳輸的應用》吧。講應用應該講得清楚,再配合一些代碼例子,應該也容易過關。”

“這個也不行。要具體,具體到一個應用。題目太大了破綻就多,稍不留神就掛了。你再想想,想個好的應用報上來。”

凡事跟學校一沾邊做起來就是麻煩,比如在公司有個什麼CASE,管你用什麼方法只要能把結果算出來東西做出來交出去你就行。管你用冒泡排序快速排序還是希爾排序,哪怕是你自己寫的一個排序算法,只要方便效率高就行。跟學校要講究的就多了。單是這畢業設計題目就有大把文章在裏面,更別說後面的論文格式、英文摘要、致謝這些東西。絕影還是給周總打了個電話,把情況給他說了一下,畢竟周總做醫療有些年頭了知道的東西比他要多得多。

周總說:“這樣吧,題目就定《DICOM傳輸在CT機上的應用》,這個夠具體了吧,CT機總不可能再拆了吧。反正我們最近這個CASE是跟CT配套的一個工作站,機器阿什麼的都有你也有機會親自去現場參觀調試。”

得了周總的指點,絕影猶如捧了聖旨,他胸有成竹地跟王老師說:“題目就定《DICOM傳輸在CT機上的應用》,最近公司做的也是CT的CASE,聯調那些都比較方便,這次一定萬無一失。”

王老師終於點點頭,畢業設計的題目算是定了。



回到公司絕影發現辦公室多了一個人,周總把他叫進去說:“來,我給你介紹一下,這是咱們公司的董事長:Steven Chen。”

兩人互相說:“你好你好。”絕影畢恭畢敬跟他握了手,覺得這人挺有意思,一口北京腔。在四川人來看,北京腔就很有意思,說它是普通話吧,但語氣助詞運用太多,感覺每一句話都帶了極大的感情色彩。這兩人有怪怪的,明明一個是上海人一個是北京人,在公司裏面互相介紹還用英文名,又不是外企,搞得不倫不類。當然後來絕影才知道雖然這兩人的確是中國人,後來去加拿大工作幾年有了經驗,又混了加拿大國籍,於是就回來開公司,這麼來算就是外資企業,在國內有很多優惠政策。

陳董說:“小絕阿,聽周總說你雖然是新來的,但技術水平不錯阿。我這事多,全國各地到處跑的,事情顧不過來,往後你要多幫幫周迅。”

絕影忙說:“哪里哪里,我進來公司也是來學習的,有很多東西都不懂,那小周纔是厲害的。”

說到小周,陳董的語氣變得語重心長:“可惜小周離開了公司,唉,這是他們職業生涯中的一大損失阿。小絕往後你就是公司重點培養對象了,剛纔我跟周總商量了,看就最近吧,獨自讓你負責代碼了。你可要好好提高自己。那小周走留下的代碼你要多看多學習,儘快上手。”

陳董這麼說,絕影沒有高興,自己剛來實習才一個多月就給我這麼大的重任,莫非公司真的沒人了?

所以你要明白公司和學校的區別是什麼。在學校,你不懂就是不懂,不行就是不行,老師只管把書講完把你送畢業。所以你不行,老師就直接跟你說不行,罵你笨,並且好多老師罵起學生笨來還很高興,要是人人都很聰明人人都比老師還學得好了,那老師就不好當了。在公司就不一樣。你以爲公司真的是給你免費培訓的?纔不是!高一政治就學了,公司是以贏利爲目的的。所以公司用你,就是希望你給公司創造價值。說技術阿,知識阿都是給逼出來的。公司給你講這些,其實就是在逼你。明明你根本不行,但是他說你行,於是你自信心極度膨脹,還真以爲自己行。當然後果就是你必須拼命去學習,證明給別人看你行。結果,你有用了,公司的目的達到了。當然,你自己也得到了提高。

就這樣,絕影算接手了小周的工作,於是他也坐到了他以前的辦公桌前。這機器用起來感覺就舒服得多,雖然配置阿內容阿可能一樣,但衣冠至少整潔,位置也比以前那個好,機器裏面的代碼也多了,上次那個KIPACS,還有KIIMAGE,當然除了代碼都歸到F盤的WDIR目錄裏面,其它都亂七八糟地擺着。

中午陳董請大家吃飯。這家餐館的老闆好像跟陳董他們很熟,笑呵呵地說:“又回來啦?”公司人不多,整個吃飯期間差不多就陳董一個人在發話,從石油事業談到醫療事業,談到公司今年收入又翻了多少,談到其它公司,談到股份阿上市阿什麼什麼的。

絕影聽得津津有味,他第一次聽一個老總級別的人物跟他談將來,而且將來是如此美好。其他人只顧自己吃飯,對他們來說受陳董的薰陶已經不少了,他們缺的不是對將來的憧憬,而是實實在在的一頓飯。

過了幾天,陳董就走了。臨走的時候他對絕影說:“小絕阿,多幫幫周總。”



幾個月裏,雖然絕影天天都住在學校外面租的房子中,但除了交畢業論文目錄他基本上沒怎麼跟老師和同學打交道,有時候進去學校一趟就是跟燕兒一起吃頓飯。

燕兒跟她寢室的同學說:“絕影現在找到工作了,忙了,所以來的時間就少了。”她們聽了都羨慕不已。

在公司呆的時間稍微長了點,周總慢慢讓絕影開始加班。每次加班管他飯,管他打車回學校。絕影也老實巴交地說加班就加班,反正他一個人回去也是研究KIPACS的代碼在公司加班也是研究KIPACS代碼,而且還有免費的晚餐和打車的錢,等於說就是現在通常說的加班費。而且在公司加班也好,至少你坐那裏工作周總是看在眼裏。等你回去了,管你怎樣砸巴砸巴的啃數據結構寫代碼搞到天亮,老總又沒看見。第二天去了公司,你把昨天晚上做的一大堆成果往上一交。老總當然還是很滿意,但是你給了他錯誤的信號:他以爲那都是你把小時之內做的,所以他就覺得你很牛B,以爲你把小時就能做那麼多,所以要是你下次回家不做了,任務沒完成,他反而覺得你是在公司那把個小時裏面偷懶了。

每次加班了燕兒就說他笨,說人家加班都有錢拿的,國家規定每天上班不得超過多少多少小時。這時候絕影就把他這套理論講給燕兒聽,講來講去燕兒還是不明白,每次仍舊說他笨。

像絕影這樣的好員工周總自然也十分喜歡,用他的理論就是絕影這樣的人寫程序是很有“Sense”的,說不會VC++,不會MFC,結果一學就會,說沒看過代碼不會寫程序,結果一看就會,一改就成功,特別是那次讓他修KIPACS的BUG解了燃眉之急,所以沒過多久,他又故伎重演,他對絕影說:“小絕阿,明天你恐怕要把學校的事情放一放跟我一起去出趟差。”

對於“Sense”這個概念當然是老總的看法,你要是真聽進去了,飄飄然覺得自己真的在寫程序上有“Sense”那你就完了。你以爲自己有“Sense”比別人聰明比別人學得快,於是你就放慢了學習的腳步。本來回家還要看三個小時的代碼結果你去打了三個小時遊戲,第二天去了公司當然就什麼也不知道。這就是看三個小時代碼和打三個小時遊戲的區別,也是有沒有“Sense”的區別。看了,你就有,沒看,你就沒有。

雖然絕影很明顯看出來周總和陳董對自己的期望很大,但是他沒料到這麼快周總就要他一起去出差跑工程,他忙說:“學校那邊當然沒什麼問題,就是不知道要去哪裏,去多久,我是不是該準備一下?”

“不遠,就去成都,一兩天就回來了。要是情況好,我們當天就回來。”

絕影鬆了口氣,看來是個小CASE。

“我們去雙流一家醫院給他們的新X光機裝一套KIPACS,上次小周留下的代碼感覺在運行中還是很不穩定,所以你今天晚上還得加下班,把代碼再好好檢查一下,明天早上七點咱們就走,早去早回。要不你今晚就在公司的宿舍住,我給你安排一間,什麼東西都有。”絕影點頭表示同意,周總便進了他的辦公室。

絕影一早就知道小周他們住公司的宿舍,想公司還不錯,至少還管住,好多公司都是不管住的。他給燕兒打了個電話說:“今天晚上我不回來了,我就在公司宿舍住,明天一早我還得跟周總出差呢。去成都。”他把“出差”兩個字特別強調了一下,以前你們不就聽過“出差”麼?這次我真的要出差了,我就做你們沒做過的事情。所以說起來還帶點驕傲。

燕兒說了些注意安全之類的話,絕影也聽不進去,匆忙掛了電話就開始看KIPACS的代碼。其實那代碼有些地方明顯有問題,比如按“最近三天的病例”來檢索,小周是用SYSTEMTIME的wDay相減來做的,那1月30號到2月1號這樣的病例根本就無法檢索。

絕影發現了問題,他也想不到什麼好的辦法來解決,總不可能用SystemTimeToFileTime換算成秒來相減再把結果換算成天,這個辦法太笨了,代碼也會寫很多。有時候體現兩個程序員的水平往往就是解決同樣一個問題的思路和代碼長度。好在看了段時間的MFC,他知道CTime這個東西,CTime不是重載了加法減法嗎?用CTime去減應該萬無一失。可是減的結果是什麼呢?事到如今哪裏還有時間自己去研究,於是問周總,周總說:“CTimeSpan。”

也許是今天情況比較特殊,到了吃飯的時間周總還是沒動靜,絕影肚子餓得咕咕直叫。一直到晚上9點,周總才如釋重負地從辦公室出來,說:“走,大家一起去吃飯吧。”

這時候絕影反而不餓了,說:“你們去吃吧,我這裏還有點問題,先弄了再去,抓緊點,早點弄完。”

周總又勸了他幾句,便帶着其他人去吃飯,回來的時候給他帶了份平菇肉片。



第二天在大巴車上絕影昏昏沉沉睡了一覺,昨天晚上爲了解決周總所謂的“一點小問題”他們一直搞到三點,當然這是很正常的情況,以前自己在家還不是經常搞到三四點。關鍵是早上又要出差,六點多就起牀,而且第一次在公司宿舍又睡得不舒服,哪裏有自己家那張大牀溫暖阿。一直到了目標醫院,“電蛐蛐”的聲音才把他從昏昏沉沉中喚醒。

電話是土匪打過來的,沒等絕影說話,他就說:“在哪阿?”

“我在成都,出差呢!”

“現在電磁波與電磁場在考試呢,老師讓我找你。”
聽到“考試”這麼敏感的詞語,絕影突然驚出一身冷漢,瞌睡頓時全無,他趕緊給土匪說:“快把電話給老師。”

《瘋狂的程序員》24

教電磁波與電磁場的瘦高老頭絕影也不認識,因爲最後這學期他壓根就沒去上過課,絕影跟他說自己在出差實在不知道考試這回事,土匪負有不可推卸的責任,他是學習委員,但沒把考試的事情即時通知給絕影。本來他最後抱希望與瘦高老頭能夠通情達理給他一次緩考的機會,沒想到瘦高老頭忽然又大方起來,答應他可單獨預約考試。

接完電話,絕影對周總說:“學校打來的,現在正在考試。”其實他言下之意是:“看吧,我學校裏的事情還多呢,總不可能讓我天天呆公司又無條件跟你出差。畢竟我還沒畢業,學校的事情纔是頭等大事。”

他這樣說,周總緊張起來,忙問他要不要公司給開個證明。絕影搖搖頭說:“老師寬宏大量,答應給我安排一次單獨考試。”

第一次去現場聯調軟件和設備一點都不順利,那KIPACS在自己電腦上明明運行得上好可是連到X光機上就是傳不過來圖像,周總首先認爲是程序的問題,於是他在那檢查程序,搞了大半天,又用採集卡自帶的Demo測試視頻信號,最後他堅定地對周總說:“程序沒問題。”周總只好打電話調來X光機的安裝工程師看,原來是“三通”有一個口子壞了。

兩人又打車去城裏買好新的“三通”,覺得這次一切都完美了,醫生又不滿意,說:“這個‘工作單位’啊”,‘郵政編碼’啊這些信息我們基本上不可能填寫,你把它放在界面上,我們按‘Tab’鍵要好幾下才能跳到下一個,太不方便了。”

沒辦法,絕影只能改,他一邊改一邊罵,多按兩下“Tab”要死啊?就你們想偷這麼一個小小的懶,知道會帶給我多大的工作量麼?

程序就是這樣,你永遠不能按照自己的思路來讓客戶使用你的軟件,因爲他不是程序員。

這KIPACS代碼本來就不是絕影寫的,又都是寫的“Hard Coding”真正是牽一髮而動全局,改起來的難度可想而知。在現場改代碼又不像坐辦公室裏,改完了,扔給測試員:“拿去測,有什麼BUG一二三四五描述清楚,BUG要可重現。”

周總頭上冒着汗,終於還是看到絕影一點一點改完。他對絕影說:“小絕啊,現場就是這樣複雜,有很多問題都是我們不可能想到的。這次我帶你來現場,就是想讓你來熟悉一下現場的情況,沒想到你還真幫上了大忙。以後來到現場就不要叫我周總了,叫周工,行業裏面習慣這樣的叫法。你呢,就叫絕工。”絕影覺得這樣的招呼很搞笑,什麼XX工XX工,感覺就像計劃經濟時代的周車工絕鉗工,很土。

一天工作下來對方醫院放射科主任似乎對工作站很滿意。畢竟在大部分家庭中計算機還在扮演遊戲機和多媒體中心的角色,即使在辦公室,所謂的OA也就是用Word打印點文檔。所以在這麼個小小縣醫院放射科居然安裝了“影像工作站”,主任覺得很洋氣。他說:“華西醫院放射科的工作站我也去參觀過,不過爾爾,報告還得用手寫。看咱們這個,從拍片到出報告,根本不需要紙。要不是醫生必須簽名,連筆都可以不用了。真是辛苦周工了,走,一起去吃飯吧。”

所以程序員實際上就是一個幕後工作者。你程序寫得好,客戶用得很滿意,他們會說:“哦,這個KIPACS軟件不錯,軟件很好用。”不會說:“哦,這個絕影寫的KIPACS軟件很不錯,絕影很厲害。”如果你程序寫得不好,雖然他們不會說:“哦,絕影這人寫的軟件很糟糕。”但是你自己知道。很多時候,別人說你技術不行你都可以接受也可以理解,再牛B的程序員也會有自己不擅長的方面,但是如果別人說你做的東西不行,你往往會非常失望和難過,因爲這不僅僅意味着你在某一方面的技術不行。

聽到主任說起吃飯,絕影這纔想起已經八點多了大家都還沒吃飯,本來都不知道餓,這麼一想還真的餓得肚皮咕咕叫。於是一起吃飯,主任給絕影倒上一小杯酒說:“幹了,不幹就是不給我面子。”絕影連連擺手說:“不行不行,我酒精過敏。”

“小夥子不知道,我們這裏有個說法叫敬酒不幹就娶不到媳婦。”

這主任還真夠狠的,娶不到媳婦等於就是說絕後,絕影想想學校裏的燕兒,一仰脖子幹了酒,又吃了幾口菜,就什麼也不知道了。再醒來,已經是凌晨四點多,他給燕兒發了個短信:我昨天喝酒了,因爲他們說不喝酒娶不到老婆。



出差回來,公司又多了個新面孔,長得一臉老實像簡直和雞哥一個模子印出來的,也是大四的學生,不過是另外一所學校的。後來公司大部分人對絕影有三種稱呼:周總陳董叫他“小絕”,程序員叫他“影頭”,其他閒雜人員叫他“影哥”,只有他和別人格格不入,周總他們在的時候就叫他“絕影”,不在的時候就叫他“BOSS”。絕影跟他說了好多次,這樣稱呼影響不好,可是他依然我行我素,爲了報復絕影也叫他BOSS,他姓劉,絕影叫他“BOSS Liu”。

在公司最困難的時候,幾乎就只有他們倆寫程序,當然,除了寫程序還兼打雜。公司成立後爲了做成第一個CASE不得不跟本市一家醫院簽訂了計算機系統維護合同,所以那邊醫院的電腦一有什麼問題,立馬就給公司打電話,算是真正落實了諸葛亮的“事無大小,悉以諮之”的意見。絕影算比BOSS Liu資格老一點,所以他來了,就把絕影從這事上解脫出來。一個電話把BOSS Liu叫過去,不到10分鐘他又回來,說:“電腦上彈了個警告窗口,我過去按下‘確定’便回來了。”



眼看交畢業設計的日子一天一天臨近,大家都在忙,也在慌,只有兩個人不慌不忙:絕影和BOSS Liu。絕影本來也慌的,但周總總是很鎮定地跟他說:“不急不急,我們5月1號要驗收的項目先把它做好,畢業設計的東西都是現成的,論文讓祕書給你寫行了。BOSS Liu說:“畢業證我肯定是拿不到了,掛了11科還欠學校8000多學費那投資太大。我媽要是知道還不把我打死。”

聽他這麼說,絕影第一次在學習上有了優越感,由於大二打了一年的遊戲,自己也掛了不少科,算算到畢業還有15.5個學分要重修,是15.5個學分,不是15.5科。雖然自己也欠了學校3000多學費,但至少還有希望能還上,哪像BOSS Liu,他是天文數字。於是他開始五十步笑百步:“我說BOSS Liu啊,你媽給了你那麼多錢讓你念大學,居然你連個文憑都拿不到,這生意也太不化算了。”

“你懂個P,我搞過成本分析,大學我基本沒交過學費,投資不算大。等工作幾年有錢了再花錢去買個文憑。這叫‘透支’懂不?也就是現在流行的‘按揭’。”

幾年之後,“透支”和“按揭”這兩個概念真正流行起來,絕影才發現,BOSS Liu雖然沒文憑沒啥文化,但真的很有超前意識,不得不對他另眼相看。



陳董又從外地回來,他拍拍絕影的肩說:“小絕啊,多幫幫周總。”又拍拍BOSS Liu的肩說:“小劉啊,多幫幫周總。”

“這次我從北京回來,連接了幾個大CASE,公司要發展壯大,還要補充新鮮血液。你們呢,把你們這次的CASE做好。我這次回來的目的就是來招人,小絕你是個人才啊,所以我這次就是想去你們學校多招點人。”

聽陳董這麼說絕影和BOSS Liu高興得不得了,再招來新人,他們就算“前輩”,絕影呢,可以多有幾個同學進來也算多幾個伴。BOSS Liu呢,琢磨着自己從繁重的“系統維護”工作中解脫出來。

對BOSS Liu來說那“系統維護”就好比I/O操作,什麼定期給那醫院上門服務,那叫“程序查詢”方式,最原始最落後效率最低。上門服務期限到了又有事沒事打電話讓他過去,雖然改成了“中斷”,但仍然沒有把CPU從繁重的I/O操作中解放出來。招了人了就好,好比加個DMA控制器,工作安排妥當讓DMA控制器去搞去,回來報告個結果,自己這個CPU終於可以用到最需要自己的地方。

陳董也是個實幹的人,沒幾天就跟學校那邊把專場招聘的事情落實好了。他對絕影說:“小絕啊,我們對學校環境不熟悉,到時候你陪我和祕書一塊兒去。”

陳董當然覺得無所謂,但聽他這樣說,絕影卻興奮得不得了,巴不得現在馬上就去學校招聘。你想,同學們都是來應聘的,他卻是來招聘的。以前在寢室裏跟土匪王江們談自己的理想,那王江不是很想扮演這個角色嗎?他做不到,但是我能做到。不知道土匪和王江來應聘的時候會是什麼感想,會不會找自己開後門。

結果陳董的食言水平和他的實幹水平不相上下,幾天以後他就因爲華北那邊一個大CASE而離開了公司。絕影以爲這次招聘的事情鐵定打了水漂不免有些失望,失望的事情還是別去想越想越失望。本來就快把這事忘掉,陳董又從北京打來電話說:“已經跟學校說好了,人一定要去,那就小絕你和祕書一起去吧,去了只收簡歷其它你就不管了。”

那天下午,絕影像模像樣地提了個公文包興奮地跟祕書跑到學校,他不斷跟她說:“這是幾號幾號教學樓,那邊是體育場,那邊那邊是什麼什麼湖。

來到學院辦公室卻絕影沒有看見想像中火爆的招聘場面。辦公室外一個人也沒有,裏面有幾個老師在辦公。絕影老遠望見了曹媽,走過去跟她說:“曹老師,今天下午這裏是不是有個招聘會。”

曹媽問:“你不是找到工作了嗎?這樣,你先把簡歷交給我,我幫你重點推薦。他們正是來招程序員的,你很符合他們的要求。”

絕影看見曹媽的辦公桌上已經擺了厚厚一摞簡歷,他不慌不忙從包裏掏出公司的介紹信,遞給曹媽,平靜地說:“我就是來招聘的。”他原以爲曹媽肯定會大驚失色,沒想到她也是見過大風大浪的人,她也平靜地接過絕影的介紹信,說:“跟我來吧。”

曹媽領着絕影去了一間教師,那裏面已經密密麻麻等了很多學生,見了這場面,絕影腦中突然浮現出高中歷史書上的美國黑奴市場,心中一陣噁心。

本來陳董給他交待讓他收了簡歷就走,等真去了現場,人人可能都會有周星馳《喜劇之王》中的心理――多一點發揮演技的餘地,再多給兩秒鐘,就死定了。所以他一邊接簡歷,一邊很正經地問:“C++怎麼樣?數據結構怎麼樣?用過VC++嗎?獨立開發過什麼應用?”經過這麼一次,絕影感覺其實問問題也很考驗人。如果每個人都問千篇一律的問題那就顯得這個考官太粗糙了,要每個人都問不同的問題,又都是恰到好處的問題,他自己起碼要具有相當專業的知識和經驗。

所以很多時候面試官活得很累,不斷提高自己設計高水平的面試題目當然是他們份內的事情,問題是一個好的面試官每一道題目都是他的勞動成果,就像你寫的程序一樣。可是那些回答問題的人根本就管這些,他們的唯一的目的就是把這題答出來,爲了達到目的,往往不惜編造假話。有些回答一聽就知道是錯誤的,或者是騙人的,可他們回答得怔怔有詞,好像在他們眼中你這題就是專門爲他們準備的或者你出這題沒有一點技術含量,想到自己花了那麼多心思來準備的題目被搞成這樣,搞得你自己都開始懷疑自己的智商。
不過到最後,絕影在這麼多人中還是對兩個人印象很深刻。一個女生,一個男生。

《瘋狂的程序員》25
說那男生,個子不高,其貌不揚,說話聲音極小,樣子老實本分,問他:“會C++嗎?”還便真老老實實地回答:“不會,我會VB。”總之怎麼看怎麼像塊踏踏實實做技術的材料。

再說那女生,問她:“會C++嗎?”她答:“我編程的水平在這個城市應該是數一數二的,怎麼不會C++。” 這真是語不驚人死不休嚇了絕影一跳,想自己在這學校裏呆了四年,論寫程序的水平,自我感覺還不錯,至少在學校裏沒有他看得上的人,聽了這女生的回答一方面認爲她在吹牛,另一方面又開始懷疑自己:難道自己離高手的境界還有一定距離,要不爲什麼連學校裏一個如此高手都不認識。

因爲開始懷疑自己,後面的人絕影都沒怎麼認真問,其中有幾個是自己同班同學,說實話就那幾個人的水平也來應聘做程序員,那絕影都可以去《環珠格格》當領銜主演了。換成平時絕影肯定勸他們不要來丟這個臉,再說簡歷也是花花綠綠好打印了好幾大頁,封面還彩色打印,來這裏應聘還不如把那幾個錢節約起來。但今天是自己來招聘,當着同學的面不好意思讓他們下不了臺,還是勉強把他們的簡歷都收走了。

簡歷收得差不多,絕影像模像樣地對大家說:“大家都回去吧,我們會在兩週內通知大家來面試。”

人陸陸續續散開,絕影想起以前在寢室和土匪王江他們討論畢業後的打算,好久不見了不知道他們工作落實得如何,還是挺想念他們的,於是讓祕書一個人先回去,自己抱着簡歷回了寢室。

絕影前來招聘的消息已經被那幾個同學傳開,土匪拍拍絕影的肩說:“小夥子不錯嘛,沒想到在公司還是很有前途的。”他這樣恭維着絕影,眼睛卻打望着他手裏那堆厚厚的簡歷,一邊幫他接來過來一邊說:“來來,王江,來鑑賞一下有沒有美女!”

絕影說:“美女到是有一個,她居然說她寫程序在這個城市是數一數二的,你們聽說過沒有?”

土匪哪裏管這個,一份一份翻起簡歷,一會評論這個人髮型不好,一會評論那個人兩個眼睛不對稱,總之人人都有自己長相上的缺點,彷彿正因爲這樣才能凸現出他土匪與衆不同之處:論長相,他纔是個完美無缺的人。

當他到那女生的簡歷,絕影才認真看起來,簡歷其實寫得很平常,就憑這份簡歷,放到哪裏都很難把她和頂級高手聯繫起來。

寫過程序的人其實都知道一個人水平如何從他的簡歷很容易看出來。你學了什麼東西,會什麼東西,做過什麼CASE,你就原原本本寫到簡歷上,或者你就把VC++阿,MFC阿,VCL阿,KMD阿這些專業術語寫上去,至少表明你接觸過那東西,這都很震撼人。那簡歷少說也要寫個七八百字吧,哪像現在有些學生,爲了讓自己的簡歷顯得充實一點,挖空心思編虛構事實湊字數,其難度不亞於讓土匪寫200行代碼。

顯然土匪對簡歷上的照片比簡歷更感興趣,一邊掏出筆記了那女生的姓名和電話一邊說:“不錯不錯,還是有收穫。”



到了公司,周總一邊翻那堆厚厚的簡歷一邊問絕影:“怎麼樣?有沒有印象比較深刻的?”

絕影說:“有個男生還行,就是不會C++,我看他電路阿單片機這些還行。”一邊說一邊幫周總找出他的簡歷。

“那也好,我們公司今後也要朝嵌入式方面發展,正好儲備一些人才。”

看來周總是審閱簡歷的高手,他說:“這個不行!”爲啥?那人簡歷主要技能第一條便是:能夠熟練使用Office辦公軟件。“我們這是在招聘程序員,用Office那是最起碼的,你想他還把它放到第一條,看樣子真是沒什麼其它擅長的了。”

“這個也不行!”爲啥?簡歷上寫程序設計語言96分,高數物理都是90多分。“根據經驗來看,成績太好的不一定有很好的技術,在學校他把全部時間都拿去學習考高分去了,哪裏有時間來真正動手實踐?”

“這個也不行!”爲啥?學生會主席,什麼什麼協會幹事,什麼什麼校報主編。“這樣的人,比較適合去當官。”

翻到那女生,周總說:“不行!不要女生。”

絕影說:“她很有意思,她跟我說了一句話:在這個城市論編程,她應該是數一數二的。”

本來周總已經把她的簡歷放到左邊,聽他這麼說,又拿了回來,絕影趕緊又說:“不過我看她的簡歷,應該沒這麼高的水平,肯定是吹牛的,所以不推薦。”

周總緩緩地說:“小絕阿,這就是你不對了。她既然敢說出這樣的話,多少還是有點水平吧,對於人才,我們絕不能放掉一個。可以讓她來面試。”

絕影還想跟周總說幾句,想了一下還是算了,他是八幾年大學畢業,根本不知道現在學校的情況。說實話就絕影他們班,有幾個人敢拍着胸口打保票說我的簡歷百分之百真實可靠?就說來應聘的幾個自己的同班同學,你看他的簡歷一樣寫得充滿誘惑力:凡是主流技術都會,凡是公司需要的東西都會,成績優異經驗豐富能吃苦耐勞有獨立解決問題的能力。總之他寫簡歷的標準就是除了工作經驗,完全符合微軟總部對軟件架構師的招聘要求。



很多時候越忙事情越多,事情越多就越來越忙,眼看要畢業了學校本又要做畢業設計,又要搞體檢又要搞結算又要準備搬寢室,公司裏事情也多來,最重要的是5月1號要驗收的一個CASE。其實這個CASE也不是很大,主要還是上個KIPACS,不過那醫院和大部分醫院一樣,部門特別大,所謂部門大,就是說掛號在一樓,看病要跑到五樓,交費去三樓,取藥又得跑一樓,搞不好住個院還得去另外一棟大樓辦理。後來醫院倒不是覺得病人麻煩,反而是覺得醫生麻煩,你想跑到大樓這頭去給病人照個X光,又得到那頭評片室去看膠片寫報告,最後還得跑去把報告交到前臺。意見幾次三番地反應給主任,於是主任就說:“好,那你們就再給我搞套RIS。”反正醫院能貸款,有錢,要不要RIS也就是主任的一句話,但是主任的一句話有可能就和公司兩三個月的收入相當,所以周總自然不敢怠慢。

周總讓絕影去忙一下招聘的事情,把RIS的CASE交給BOSS Liu,其實也就是一個極小的零頭――RIS中的登記工作站KIREGIS。比如放射科主任掏出一大把花花綠綠的錢,抽出一小份交給周總,周總又從這一小份中抽出一張交給BOSS Liu。

BOSS Liu自己也知道周總把這個CASE交給他其實就是對他的一個考驗,行,可能就轉正了,不行,那就繼續考驗。

一大早絕影去公司開門,發現BOSS Liu已經在門外抽着煙。絕影還是第一次見他來這麼早,平時他都是要接近10點纔到公司,反正周總也懶,有時候甚至下午纔到公司,在這樣缺乏監管的情況下大家自然是能多睡會多睡會。他老遠就跟BOSS Liu打招呼:“早阿。”

“早個P,我昨天晚上是通宵。”

他這麼說絕影突然想起在哪裏看到的一個笑話,說程序員都是習慣晚上工作的,你要上午九點前看到一個程序員,那是因爲他工作了一個通宵。後來老是三更半夜絕影QQ上有人問:“怎麼還不睡覺呀?”

“睡覺?工作纔剛開始呢。”

於是那邊嘆口氣道:“你也是做娛樂行業的呀?”

又或者你跟別人說:“唉,身體不行了,年紀輕輕就腰椎間盤突出。”

於是別人拍拍你的肩道:“兄弟,開出租車的吧。”

絕影這才認真打量起BOSS Liu,一臉憔悴,好像頭也沒梳臉也沒洗,皮膚比平時黃多了,特別是左手食指和中指之間讓煙打上的黃色標記特別顯眼。他關切地說:“那還不如給周總請個假,下午再來。”

“不行,我昨天晚上研究出個大問題,KIREGIS這個CASE又有突破性進展,今天專門來早點給周總看。”

“啥大問題,拿出來分享一下。”

“現在不行,一定要保證周總那裏首發!”

絕影一邊朝他撇撇嘴,一邊打開了公司大門。

進去公司,BOSS Liu就立刻一頭爬在他的電腦上,絕影去裏面房間啓動服務器,讓他把周總出的幾個面試題目拷貝到每個機器上,他嗯了一聲,絕影從裏面出來,他沒動,又叫了他一次,他說:“我知道了。”等絕影跑到休息室抽了只煙出來,他還是沒動,絕影問:“拷好了嗎?”BOSS Liu這才轉過頭,一臉茫然地問:“你剛纔說什麼?”絕影嘆口氣,自己開始一個機器一個機器拷貝。



下午來面試的人還不少,人來得多就顯得公司特別小,公司一顯得小絕影就有點自卑――誰不希望自己是在一家有頭有臉的大公司工作阿。要是讓土匪知道自己就在一家小小的軟件公司打工那還不被他笑死。所以每次土匪問起他公司,他也只有東一句西一句大概大概如此如此這般來打哈哈。要是以前能留在老楊他們那個大公司,現在自己就敢去土匪他們面前牛B了。

其實面試的題目還是以前考絕影的那兩道,一道鏈表的填空題一道冒泡排序法。周總做事也是很有計劃的,計算機專業的安排成一組非計算機專業的安排一組。想計算機專業的做其這個題了應該問題不大,人才大概就從他們中間產生。

在這些人中,絕影還是對兩個人印象特別深刻,還是那個女生和那個男生。

說那女生一來絕影和BOSS Liu就立刻注意了她,不光是絕影和BOSS Liu,在場的所有人都立刻注意她,不僅因爲她是唯一的女生,更在於她的打扮:腳上穿的高跟鞋,走一步就咯噔咯噔響,非常時髦的裙子,比起上次招聘這次顯然是化了妝,總之非常漂亮。化妝的效果就是好,你現在去網上搜索一下,就算芙蓉姐姐也能給她化成楊臣琳。

她這樣的打扮很容易也理所當然能引起大家的注意,大家本來都是大學生,在學校裏也都是那個樣,雖然網上還是有報道說什麼女大學生簡歷裏貼寫真集阿性感照阿不過絕影總認爲那只是遽頭而已。這次他算是親自飽了眼福,原來自己身邊的女同學經過這樣的打扮竟然會如此成熟如此漂亮。

半個小說過去了,居然七八個人沒有一個人交卷,等到一個小時的時候,幾個計算機專業的也許覺得太丟臉,跟周總打了個招呼便走了。周總過來看看他們做地題,搖搖頭自言自語道:“現在計算機專業的,到底學什麼去了?難道數據結構和算法不學麼?”

絕影看那女生也做得挺痛苦,想想就好笑,還說自己寫程序是數一數二的呢。不過這也沒啥,畢竟技術這東西努把力還是能學的,漂亮這東西就是你再怎麼學也學不出來。於是他走到BOSS Liu跟前悄聲說:“你去幫幫那妹妹吧。”

BOSS Liu露出詭異的笑容說:“這種事情還是BOSS你去吧。”
兩人推來推去,眼看時間到了那女生就要被淘汰,絕影突然就在周總眼皮底下徑直向她走了過去。

《瘋狂的程序員》26

這也是很正常的事情。BOSS Liu在那裏搞他的KIREGIS,絕影自己的電腦被他們考試佔用着,於是他經常在他們中間走來走去,偶爾幫他們解決一點小問題,比如VC++從哪裏打開阿,題目在哪個目錄裏面阿。所以周總也沒怎麼在意。等他回到辦公室,絕影趕緊低聲問她:“做得怎麼樣?”

“不行我今天有點緊張,VC++我也用得不多,在學校都是用的TurboC。”

絕影聽了覺得很好笑,還自稱編程數一數二的人物,居然就用TurboC,可惜那TurboC編譯器是16位的,又沒有API給你調用,當然你要真能拿它在Windows下繪製出一個窗口那也的確算用得出神入化,技術絕對是數一數二。

所以後來絕影經常問別人:“會寫程序嗎?”

“當然會,我會C/C++,彙編語言……”

“我說的是會不會寫Windows下的應用程序?”

“Windows下的應用程序?那個用C語言能寫嗎?”

幾句話弄得他哭笑不得,他們總認爲C++就是VC++,C就是TurboC,語言就是工具,工具就是語言。

聽她這麼說,絕影心想:完了。本來說寫程序的女的就少,更何況這個還是個美女,可惜技術不過關,這種水平肯定要被周總刷下來。其實絕影覺得就算招個美女不寫程序又如何?至少能極大地提高他和BOSS Liu的勞動生產率,可是周總肯定不會這樣想,美女不是他需要的,他需要的是程序員,他不需要的東西他就認爲可能別人也不需要。

儘管這樣想,他還是想再幫幫她,碰碰運氣,還是那句話:技術都是可以學出來的,但漂亮學不出來。於是他對她說:“那你就用TurboC做吧。”這已經是寬宏大量仁至義盡了。

雖然絕影把聲音壓得很低,還是被旁邊人聽見,就是那個搞電路單片機的男生,他說:“那我也用TurboC做吧,VC++我也不熟悉。”

“你先等一下。”絕影走進辦公室,對周總說:“那個搞電路的要求用TurboC做題,我覺得無所謂,反正你說招他進來以後主要做硬件方面的開發,只要他硬件方面真的好,不應該在軟件上把他卡了。”

周總點點頭說:“嗯,那你就去安排安排。”

這個事情他必須請示周總,現在周總批准了,要是那美女拿TurboC做題過關也算名正言順。

可是那美女實在太另人失望,她臨走的時候專門找到絕影問:“怎麼樣?”

絕影很平靜地對她說:“先回去等我們通知吧。”

於是她仍然滿懷希望地走了。

這時候BOSS Liu轉過來對絕影嬉皮笑臉地說:“人家問你‘怎麼樣’哦。”

怎麼樣還用得着問嗎?你要知道如果你去面試別人對你有意思,至少主管人員會留你下來哪怕跟只跟你談兩句,問問你一些情況和就業意向,要是隻簡單地跟你說“先回去等我們通知吧”,你就真傻傻地跑回去跟朋友們說:“還不錯,他們讓我回來等通知呢。”那你就慢慢等吧,沒替補還好,有可能輪到你,有替補那你就等着坐一輩子冷板凳吧。

望着那美女的背影離去,絕影心裏還是有點失落,不過想想也算了,畢竟人家是美女,至少還可以憑三圍混口青春飯,自己還是應該像BOSS Liu一樣爬電腦上憑思維吃飯。

後來土匪對絕影說:“上次你說招聘那個女生,回來後說肯定過關沒問題,說你對她印象比較好,特別關照哦!”爲那是絕影氣得咬牙切齒,你說要是真讓他偷到腥了他還沒話說,問題是他什麼便宜都沒撈到,整成黃泥巴掉到褲襠裏,還要不斷地跟燕兒解釋,女人這事情,越解釋就越解釋不清楚,越說自己清白就越不清白,害得他慘淡地渡過了好幾周。



趁着他們做題的間隙,BOSS Liu迅速跑進周總辦公室,絕影知道他肯定是去報告KIREGIS進展情況,出來的時候臉上果然一掃早上的倦容變得紅光滿面。

“BOSS Liu,你到底研究出啥大成果了?現在總可以說一下了吧,別小氣。”

“也不怕給你說,說了你也不懂,我在KIREGIS裏面用了多現成技術!前臺那個登記的地方不斷往數據庫寫數據,X光這邊由要實時同步,那就必須過幾秒鐘刷新一次數據,前兩天用的單線程,數據一多就把界面刷死,現在可好了,管他有多少數據,就在後臺慢慢收,比如你BOSS Jue一個勁地在那寫代碼,我這在這裏一邊寫代碼一邊聊QQ,兩邊都不誤。”

絕影聽他這麼一說大吃一驚,想BOSS Liu的技術現在是不容小覷,說多線程自己早就聽說過,理論上也會做,但一直沒有機會應用到實踐中,所以都是紙上談兵,沒想到BOSS Liu居然能活學活用,起碼這一次他算輸給BOSS Liu了,要是他那時候就知道觸發器這東西,肯定能夠在他面前成功體現出自己的水平――畢竟,就算用多線程做,那也是“程序查詢”方式,比起“中斷方式”來說起碼落後了十年。仔細再回想一下羅雲彬書上的多線程那章,總算想起點什麼,於是對BOSS Liu說:“多線程這東西,搞得不好還是不要搞。那線程同步你做了嗎?”

BOSS Liu仔細回想了一下,線程同步,好像聽說過,不過到底是什麼還不知道。但是總不能面子上過不去,於是打着哈哈說:“用啥同步?這個CASE這麼小,把高檔東西全部用上去還缺乏穩定性呢!我這個昨天晚上開着機跑了兩個小說,萬無一失。”

聽他這麼說,絕影覺得算是挽回一點面子,樣樣得意地說:“推薦一本書你去看,《Windows環境下32位彙編語言程序設計》,羅雲彬,電子工業出版社。上面有專門的章節講多線程。不過估計你看不懂,那是本彙編的書。”

這下BOSS Liu有點不服氣:“你說彙編還得有C++難?我問你,彙編有多少條指令?”

彙編有多少條指令,絕影真還答不上來,於是也打着哈哈說:“大概一百多條吧。”

“那不就對了,就一百多條指令,還得有C++難?我去買一本,就一週,包過!”

後來有一天中午,BOSS Liu請了兩個小時假,來的時候把一本書重重往桌上一拍,那是本嶄新的《Windows環境下32位彙編語言程序設計》,羅雲彬,電子工業出版社,他也同樣重重地說:“怎麼樣,那西南科技書店還沒這書了,我還是訂的,訂了一週。”

再後來,絕影再也沒有聽BOSS Liu說起過那本書。

最後面試結果周總原則通過了兩個人,一個把兩道題目都做了出來,人長得高高瘦瘦的,一個正是絕影先前看中的搞硬件的男生,姓張。後來那男生留在了公司裏,再後來公司做大了,有一次陳董展望未來時說:“明年我們要在哪里哪里建個廠房,還要招多少多少工人,到時候小張你就來負責這個廠。”所以後來絕影和BOSS Liu管他叫“張廠長”。



從上次去成都出差以後,絕影乾脆就搬到公司安排的房子住,反正學校又沒課了,而且學校外面租房子每月還得付70塊錢房租。公司的房子大大的2室2廳,衛生間還帶一個大大的浴缸,比起學校外面70塊錢的單間條件不知好多少倍。他跟土匪他們說:“我走了,公司分了房子,去公司住了。”後來就有一些同學來問:“什麼公司阿?在哪裏阿?真的管分房子嗎?”絕影就得意地跟他們說:“XX科技,搞醫療軟件的,當然分房子了,我不就在那住着嗎?2室2廳吶,70多平米,我一個人住那感覺空蕩蕩的。”

眼看學校裏同學們的畢業設計搞得風風火火,王老師打了幾次電話叫絕影把論文的提綱交過去,眼看這事情拖得不能再拖,絕影纔給周總請了幾天假,說這畢業設計不能在拖了。周總還是不慌不忙地說:“不急不急,畢業設計的Demo我已經幫你做好了,馬上就拷貝到你機器上去,你自己把界面改一改,不過按公司的保密合同那核心代碼是不能提交給學校的。

絕影看周總給自己的材料,果然已經有了用VC++做的Demo資料也是應有盡有,光是那DICOM3.0標準就分中英文兩中版本。看周總準備得如此細緻,絕影心裏有了底。

去學校駐紮了一週,二萬字的論文也寫得差不多了,本來在公司呆了幾個月,那DICOM的基礎知識絕影還是瞭解到不少,再說那DICOM3.0標準的文檔裏面有打段大段概念性的,概念這東西,放到哪都是這樣描述,直接加到論文中,這起碼就三四千字,再加上註釋阿名詞解釋阿又是一二千字,對Demo的代碼的解釋又是三四千字,要寫夠兩萬字還是輕而易舉。英文摘要請周總代勞,周總工作效率就是高,二三十分鐘便交給絕影,於是滿懷信心地去找王老師。

什麼也不說首先王老師就對英文摘要充滿了置疑,絕影的英文水平她是領教過的,什麼“誰又偷貓肉”,要是沒有點水平的人還真不知道他是在說“See you tomorrow”,但王老師就能聽出來。她說:“不行,你這英文摘要翻譯得太牽強,你回去找個英文好的給你指導一下,重寫一遍,不光要翻譯準確,還要做到信、答、雅,知道不?”

絕影也沒跟她說什麼?還有那麼多同學在場,當面頂撞這位老教授還是很不給她面子。他深深地知道,越是高級的知識分子,對“面子”這東西看得越重要,所謂“高級”知識分子,不光說他技術高,也說他年紀高。

過了兩天,他把摘要原封不動地再拿過去,說:“王老師,這次我找了個博士生幫我操刀,他在加拿大呆了好幾年,這次翻譯應該沒什麼問題了。”

王老師接過絕影的論文,瞟了兩眼說:“不錯不錯,這次就好多了。”

說實話絕影覺得自己寫文章的水平還不錯,他最驕傲的事情就是高中的時候代寫情書,50塊錢一封,包成功,寫了3封,還真的100%成功,所以他理所當然地認爲王老師一定會被他論文的內容深深吸引,至少比起旁邊那幾個他認爲話都說不清楚的同學的論文來要好十倍。

結果王老師壓根沒注意他論文的內容――就算注意估計她也看不懂,那也不怪她,老早他選這個題目的時候就是衝着這一點來的:你們老師不是很牛B嗎?就是給你們搞點你們懂不起的東西――她反而不斷地指點:摘要的字體不對,行間距應該是多少,段落應該多重,幾號標題應該用幾號字,什麼地方要粗體什麼地方要黑體,大綱視圖應該怎樣弄。其實不就是格式問題嗎?跟內容毫無關係,用得着拔高到態度問題嗎?半小時指點下來,絕影最大的收穫就是知道了Word裏面“刷子”怎麼用。說來也慚愧,自己還是搞IT天天跟電腦打交道的,Word也用了好多年了,居然還不知道里面有“刷子”這麼個好東西。

後來論文格式又修改了好幾次,總算讓王老師滿意,光打印費就花了絕影34塊錢大洋。終於絕影盼到答辯的這一天。

很多事情都是有人害怕也有人喜歡,比如考試和畢業設計,絕影聽很多同學說:“要答辯了,緊張得要死,到時候大腦一片空白全忘了怎麼辦?還是先來排練幾次。” 這也是人和人之間的區別,他不懂,學得馬馬虎虎的,或者乾脆拼湊的論文,他當然還怕,因爲他有可能掛,但如果你真的認真去研究了資料,親自去做了,那還不是成竹在胸,腦子裏的東西猶如滔滔江水連綿不絕,又如黃河氾濫一發不可收拾,通過答辯還不是易如反掌爾,反而那是一次展現自己的機會。

絕影是躍躍欲試,他答辯組的老師也是躍躍欲試,提問同樣能反應出一個人的水平,好多老師正期待着這個機會向同行充分展示一下自己。可是當他把他的題目提交給他們,大部分人便沉默了。十分鐘的自由發揮時間,絕影挺沒趣地給他們講什麼是DICOM,什麼是PACS,什麼是SCU,SCP,下面異常安靜,比上課還安靜,居然沒有一個人打斷他。論壇答辯老師提問,同樣是沉默,終於有個老師忍不住打破僵局,問:“你論文附件上DICOM傳輸Demo代碼中的‘#deifine’是什麼意思?”

如果是一個來面試的人問他這個問題,他二話不說就讓他“Out”,居然這次還是個教授級別的答辯老師,想就算是來試我C++水平有幾斤幾輛,起碼也拿個水平高一點的問題,至少問個函數模板類模板之類的問題,這也太失水準了。

最後,絕影給老師們鞠了個躬,他們卻只給了他70分。

走出答辯室剛打開“電蛐蛐”,便接到土匪的電話。土匪問:“答辯怎麼樣?”

“當然過了。”

“幾次?”

“一次。”
“媽的,我還過了兩次,第一次格式不對。你過了就好,馬上到寢室來一趟,寢室的都在,等你。”

《瘋狂的程序員》27

絕影以爲土匪又有什麼大事,風風火火跑會寢室結果今天的議題是在哪裏吃散夥飯。

回憶一下大學四年跟土匪在一起討論最多的就是吃飯。

“今天我生日,大家一起吃頓飯吧。”

“今天國慶節,大家一起吃頓飯吧。”

“今天星期六,大家一起吃頓飯吧。”

“今天考試,大家一起吃頓飯吧。”

“今天啥事都沒有,大家一起吃頓飯吧。”

畢業了,散夥了,按理說這也算人生中的一件大事,散夥飯肯定要吃的,而且這是各大學歷屆畢業生的慣例。因爲吃飯的次數多了,學校周邊的館子也是有限的,平攤下來一家館子難免已經吃上好幾回了,像散夥飯這樣的大事情肯定馬虎不得,所以專門開會討論一下在哪裏吃。

會整整開了半個多小時,最後大多數人同意在“陳魚頭”吃散夥飯。說到“陳魚頭”,絕影想起上學期發生的一件事,那天他和往常一樣睡到中午才起牀,燕兒已經上課去了。還沒打開電腦,忽然敲門聲響起。他條件反射地問了句:“誰呀?”

“開門,公安局的。”

他的心嗝噔了一下,前段時間同學們正說現在公安局正在嚴打在學校外非法同居的,難道現在真的查過來了。好在現在燕兒上課去了,想他們也抓不到啥把柄,於是打開門。

公安局的同志進來第一句話卻出乎絕影的意料,他們說:“好大一股煙味!電腦機箱也不蓋好。”

最後虛驚一場,原來是後面樓居然發生了罕見的殺人焚屍的案子,死者就是那“陳魚頭”的老闆,絕影在屋子裏面閉門造車,要不是這次公安局的同志過來問他,他還真對外面毫不知情。

案子很快也破了,本來“陳魚頭”就是地理位置不好,再加上經營不善,都瀕臨倒閉,誰知這個事情發生後在老闆娘帶領下,它的生意又火爆起來,吃飯的人簡直是人山人海。

所以現在賺錢就是這樣,什麼技術啊,水平啊,味道啊,服務啊對人來說都是瞎扯淡,48塊錢一杯的極品南山和98塊錢一杯的極品南山有幾個人能喝出50塊錢的價格差?要命的是明明啥都沒喝出來,還故作深沉地說:“看,這就是98和48的差別,這個餘味太帶酸……”什麼才能賺錢?是噱頭,是眼球。哪怕你死了,你要死得其所,讓人殺人焚屍,成了大案子,最好上了新聞頭條上了公安廳掛牌督辦。知道了這一點,你就能夠明白爲什麼現在“芙蓉姐姐”火爆得不得了,也狠賺了一筆錢。

最後吃散夥飯的時候是7個人,超薄帶了他的傳說中的恐龍女朋友,土匪帶了他據說是女朋友的女朋友,絕影和燕兒一起去,王江還是單身。飯吃到最後大家還是有些傷感,超薄要回老家,土匪是家裏人安排去了成都電信,王江決定留下來繼續考研,絕影還是老老實實呆在公司。



又在公司呆了幾天,班長打電話讓絕影回學校去領畢業證照學位照,絕影自己回想一下,英語又沒過四級,還有15.5個學分沒有重修――那都是大二是給拖下的爛賬――不要說學位證,就是畢業證都拿不到。沒想到班長又打電話給他,這真是晴天霹靂般的驚喜。

等他興高采烈地跑到學校,班長又潑了他一頭冷水:“對不起搞錯了,沒有你的學位服。”

絕影感覺這是當面對他侮辱,他沒好氣地對她說:“下次搞清楚一點,我和你們不一樣,我在公司事情很多的,來一趟學校不容易,我回去了。”

班長本來不是故意整他,聽他這麼說,確實還是覺得自己有點對不起她,小心翼翼地說:“下午還要開畢業大會拿畢業證,你不去了嗎?”

“不去了,公司忙,只有半天假。”

他邊說邊往回走,本來畢業大會他就沒準備去參加,欠了15.5個學分肯定又拿不到畢業證還要在大會上丟臉。

那天下午是燕兒幫絕影去拿的畢業材料,碩大的信封裏面只有一封給公司的畢業生推薦信。後來土匪他們給絕影說那天肖瀟作爲學校唯一兩個省上重點培養的基層公務員之一出盡了風頭。



畢業了,絕影就明正言順地跟周總說要轉正,自己已經在公司實習了八個月,每個月就是250塊錢的補助,燕兒已經爲實習跟絕影鬧了好多次,就是覺得他太不化算,按照《勞動法》,實習期不能超過三個月。可是周總也有他名正言順的理由:你沒畢業,沒畢業公司就不能跟你簽訂正式合同,否則公司就違法。絕影也沒去詳細研究到底違法不違法,總之好歹現在賴到畢業了,周總再沒有理由再不籤正式合同。

周總問:“小絕啊,你期望待遇是多少呢?”

絕影想也沒想就說:“1500。”爲什麼想也沒想就說,正是因爲對這個問題他已經想了很多次了。那幾年在這個城市,估計人均工資水平也就是1000左右,自己是寫程序的,並且領導他們對自己貌似還比較滿意,自己也確實在關鍵時刻幫他們解決了大問題,自然要價應該比一般人高一點,把跟一般人的差距體現出來。反過來說,自己又是應屆畢業生,換到其他公司去說又沒有一點工作經驗,要價太高根本無法讓人接受,所以也只好高不成低不就開個1500。

他以爲周總會很爽快地答應他的要求,周總卻說:“這個嘛,我先跟陳董商量一下。”

過了幾天,周總才說:“小絕啊,你提的待遇我和陳董原則通過了。就是你準備合同籤幾年?”說完馬上又補充道:“當然,籤幾年都無所謂,這應該由你自己決定。”

絕影想也沒想就說:“2年。”爲什麼想也沒想就說,正是因爲對這個問題他已經想了很多次了。本來想就籤一年,看看形勢混點經驗,用一年時間或許還能物色到一家更有前途的公司,可是你提的1500的工資他們都接受了你才籤一年合同顯得太沒誠意,這樣算來只有籤2年比較好,既表示出一點誠意,又給自己留有一點餘地。

合同順利地簽下來,周總整了一大堆材料交給董事會,當然那畢業證是假的,周總隨便用一個應聘者的畢業證前面疊上絕影的照片,掃描下來再把名字改了就算給他做了張畢業證,但對絕影來說,正兒八經的畢業證還是要去拿,媽每年花了4000多元供他念大學,爲的還不是這麼一張文憑,要是畢業了連畢業證也沒拿到,這生意也做得太虧了。於是就去參加學校的“換證重修”。

所謂“換證重修”,就是你給學校交錢,一個學分120塊錢,交了錢就讓你去參加補考,把學分都補考完就給你畢業證。本來這就是最後一次機會,監考老實要求也放得很低,比如你去咖啡廳喝咖啡,你給了錢你就是大爺,你要是交了很多錢,你就是上帝,就是VIP,別人進去就是:“先人您好。”,你進去就是:“絕先生您好。”別人喝普通的杯子,你的杯子還在上面刻上“絕影先生”,那感覺就是不一樣,倍兒有面子。特別是有幾門課本來就是自己學院的老師,以前在學校大家都是一個學院的學生,沒啥特殊的,現在大家都畢業了,回來補考一下還遇上大家都是一個學院的,就比如原來大家都是四川人在四川打工,都沒覺得有啥特殊,後來去北京,偶爾遇到一個四川同鄉,那也不管你到底是哪裏的都感覺親切得不得了,有啥事情都會照顧有加。

所以絕影順利地通過了前幾門考試,不是順利,是異常順利。老師把卷子給他讓他一個人在那做,自己估計跑出去打牌,大概打了兩三個小時跑回來看看他做的卷子,指着上面的題說:“這個,是這樣嗎?書上怎樣說的?翻書看看。”

等他翻書又做一遍,問:“這下能及格嗎?”

“你自己算算能得多少分?”

算來算去:“大概能得67分。”

“67分,夠了,及格了,你走吧。”

等到出成績的那天一看,果然是67分,一分不差。

就是最後那門理學院的科目麻煩,那老師監考就特別嚴,有個代考的人就被當場揪了出來。老師說:“都認真做,只要你認真學了都能過,要是你覺得過不了,就要多跟老師聯繫溝通,我把電話寫在黑板上。”

都已經畢業的人了,有幾個還有水平能真的過?於是下來合計一下不如請老師吃頓飯,由絕影去打這個電話,老師在那邊吞吞吐吐地說:“吃飯,有什麼好吃的?天天都在吃飯。”

覺得這招不行,幾個人再合計一下,不如送點東西,再由絕影去打這個電話,老師在那邊吞吞吐吐地說:“送東西,有什麼好送的?也不知道東西好不好,能用不。”

絕影本來就是個急性子,乾脆一個人打電話過去,說:“要不,乾脆就封個紅包吧。”那老師才說:“好吧,你什麼什麼時候到我家來詳談吧。”

老師笑呵呵地收下絕影裝了300元人民幣的紅包――那錢還是絕影從周總那裏借來的――纔拿給絕影一張空白的試卷和一張寫滿了正確答案的試卷,說:“你再做吧,別亂整,做個六七十分就行了,不要一模一樣地抄,步驟變換一下。”

做完交給他,他說:“叫你不要做太好了,怎麼全抄的標準答案?”這麼說,他還是把新試卷收下。絕影跟他說:“告辭告辭。”走到門口,他突然叫住絕影說:“現在還有念研究生的,有一種叫先上車後買票的辦法。”

從那天絕影開口提出“紅包”的事情他就對這老師很噁心,現在他又這樣說,絕影不得不繼續裝着很謙虛地問:“先上車後買票?老師您有路子嗎?”

“我還是有一點的,要是你有意思,就再聯繫吧。”

絕影走出他的樓,那時候他在心裏想,這輩子我也不會去念研究生。

就在這兩週之內,絕影、BOSS Liu、張廠長都處理完了學校的事情,從現在開始,算是全日制員工,周總專門召開了一個會議,大概就是說從現在開始離開學校了,以後要全力把精力花在公司上,本來那個五一節驗收的CASE一拖再拖都拖到了現在,雖然那邊放射科主任拿了公司不少回扣,但拖了這麼久也不好向上頭交待,已經說了幾次要儘快驗收儘快驗收,奈何那段時間正好又是畢業答辯離校手續這些事情多,大家都沒什麼心思,所以現在要全力投入進來,會上,周總專門表揚了BOSS Liu,說他以大局爲重。

BOSS Liu洋洋得意,至少他把KIREGIS做得像模像養,張廠長新進去的人就不說了,可絕影居然什麼都沒做。
那天晚上,絕影正在公司分的房子裏上網,辦理BOSS Liu就住在絕影樓下,上來敲個門最多只需要半分鐘,但他卻打個電話過來,對絕影說:“走,陪我其喝酒!”

《瘋狂的程序員》28

一般情況下人在什麼情況下喝酒?多半朋友聚會聊到興奮了,或者發生了什麼刺激人的大事,比如戀愛了,失戀了,發財了,破產了……

絕影想這麼晚了,又沒有什麼聚會,BOSS Liu找自己喝酒,肯定是受了什麼刺激,畢竟同事一場,還是應該好好開導開導他,於是屁顛屁顛跟他跑到樓下燒烤攤。

BOSS Liu一來就大聲武氣要了兩瓶啤酒,一碟煮花生,兩條烤魚。今天是他們倆最後一次領“生活補助”的日子,BOSS Liu顯得特別大方,他點菜的口氣就像武松的“老闆,來三大碗酒,切二斤牛肉”或者孔乙己的“溫兩碗酒,這次是現錢,酒要好”一樣。絕影跟他推辭不喝酒,土匪他們都知道他對那玩藝過敏出差的時候也有過慘痛的教訓,BOSS Liu卻不知道,他越是推辭,BOSS Liu越是覺得他不給面子,或者深藏不露,就越是讓他喝。

所以這喝酒勸酒裏面也有很多道理,比如喝醉了的人總說自己沒醉,沒醉的人反而不停地說醉了醉了不能再喝了。你說:“這個技術,我不會,沒接觸過。”別人反而說:“你肯定會,就是不願意說!”

最後還是讓絕影堅持了原則,BOSS Liu給他點了瓶豆奶。

兩人坐定,絕影平靜地說:“說吧,有什麼事?”

“沒事,就喝酒。”

後來絕影才知道,BOSS Liu就是很普通人不一樣,就是喜歡沒事的時候喝酒,當然,朋友聚會或者發生了什麼刺激的人的事他也會喝,但還是以沒事的時候喝爲主。這習慣和他喜歡沒事的時候寫程序差不多。大部分人工作的時候寫程序,他喜歡在不工作的時候寫程序,雖然他工作也是寫程序。

BOSS Liu喝酒也和普通人不一樣,一般人幾杯酒下去,酒力上來,就開始誇誇其談,也就是所謂的“放開了”。BOSS Liu兩瓶啤酒下去就像呷了兩口茶,面不改色心不跳,仍然平靜地對絕影說:“你有所不知,寫程序,本來乃是我的副業,我以前真正的主業是下象棋。想當年我在棋院連擺二十幾盤,殺得他們屁滾尿流失了魂……”

“既然如此,爲何你現在不下棋了?”

“這個你就有所不知了。下棋,對大部分人來說畢竟是消遣,你要到棋院下棋,最多跟你下100塊錢一盤,下幾盤人家莫清楚了你的底就再也不跟你下了。那下棋的人也就那麼多,最後人人都莫清了你的底,就沒人跟你下了。就算進了專業隊,補助也就是那麼多,這輩子都沒有翻身的機會,人就完了。”

絕影想這話的確說得有道理,想當年高中的時候自己叱吒文壇,還自詡爲“XX四大才子――之首”,居然還像模像樣地在學校張羅一個文學社,居然還得到文聯副祕書張的親筆信,可後來到了大學在大一一個風雨交加的夜晚,他向超薄借了5塊錢,去樓下小賣部買了10根散煙――紅塔山,等寢室熄燈,土匪他們都已經入睡,熬更受夜地寫了一篇文章:《我和電腦》,得了學校唯一一個一等獎,拿了500元獎金,還差點加入了作協。可從此以後,他就封筆了。別人不知道爲什麼,他知道:你一篇文章從動筆寫到修改到再修改到發表到拿到稿費,真可謂是費盡千辛萬苦。可那稿費是頂天了一個字一塊錢,那幾個錢不要說養家餬口,就連菸草費可能都賺不回來。再說了,現在網絡發達,隨便十一二歲的那些小娃娃寫點幾百個字的 “印象派”文章發到網上都敢跟你一比高下,枉你看了那麼多書知道那麼多典故滿腦子天文地理知識,一點用處都沒有。

所以他還是覺得寫程序好。起碼寫程序要學,不像那寫文章,只要你會說話,把說的話寫出來就叫文章。而且寫程序的收入也頗豐,雖然現在在公司體現得不是那麼明顯,但那50行100元的三元線性迴歸程序卻堅定了他的信念。

絕影這樣想着,BOSS Liu繼續說:“我現在最大的心願就是自己寫個象棋程序,你知道不,象棋程序最關鍵的就是局面優劣判斷……”

他這樣說,絕影還想起自己研究過一點遺傳算法,於是接着他說:“如果能把遺傳算法用到裏面去就爽了。這樣就可以簡化好多計算。”

說起遺傳算法,好幾年後絕影都覺得沒白研究,雖然他的“研究”僅限於“知道”,以後隨便別人說起什麼,他都能說:“如果能把遺傳算法用到裏面就好了。”

別人說:“這個SSR就是太複雜。”

他說:“如果能把遺傳算法用到裏面就好了。”

別人說:“這個圖像識別技術就是太複雜。”

他說:“如果能把遺傳算法用到裏面就好了。”

別人說:“這個三維重建技術太複雜。”

他說:“如果能把遺傳算法用到裏面就好了。”

反正別人也不懂遺傳算法,就算懂,也就僅限於“知道”。他一講“遺傳算法”就彷彿講大道理,就彷彿在念《心經》:“是大神咒,是大明咒,是無上咒,是無等等咒…..”

等BOSS Liu吃飽喝足,他站起來很大方地喊:“老闆!買單!”

他這是典型的四川人性格,哪怕就是吃碗一塊錢的酸辣粉,吃完後都要大大咧咧地喊:“老闆!買單!”

絕影搶着去買單,一把被BOSS Liu推開。後來在任何場合絕影總是會搶着買單,唯獨不搶BOSS Liu的,因爲經過那麼一次教訓他知道他搶不贏他。明明兩個人都是窮人,也許身上的錢還沒有他年齡多,都還要搶着去買單,不知道這是不是程序員的習慣。

第二天兩人還是睡到樓下幼兒園放《小哪吒》才起牀,那是九點十五分準時。公司規定九點鐘就要上班,他們倆卻總是在放《小哪吒》才起牀,如果不是那聲音太大把他們吵醒也許他們還要睡。

學校的事情已經了結,周總讓他們把所有心思都放到五一節驗收的這個CASE上來。其實五一節已經過了很久了,CASE卻拖到現在,那邊放射科主任幾乎是每天一個電話,BOSS Liu負責做登記工作站,絕影做KIPACS影像採集部分,原來那個KIPACS在影像採集功能上實在太不完善,BUG又多,絕影不得不重新來做,也是邊做邊罵以前的程序員。

BOSS Liu一直因爲自己KIREGIS中的多線程技術洋洋得意,可是KIREGIS老是隻在公司中內部測試,他說:“公司裏這點數據,根本無法體現出多線程技術的優越性。我那KIREGIS設計容量是十萬級別的數據!”

等待的日子是辛苦的,終於有一天,周總說:“小劉啊,今天咱們一起去XXX醫院,先把軟件全部裝上去,他們的機器已經到位了。小絕,這次你就不用去了,在家多休息休息。”

這正是BOSS Liu期待的。他忙接着說:“就是就是,絕影你回家好好休息吧,這次我去,應該沒什麼問題。”

絕影回到家,沒想到燕兒今天也來了。本來他們還沒放假,這邊離學校又遠,她平時就難得來一趟,這次來還順便買了菜正在做飯,在這種情況下,最浪漫的事莫過於從後面摟着她的腰說:“親愛的,你辛苦了。”可絕影偏偏不懂浪漫,他心裏惦記着KIPACS的安裝要領不知道BOSS Liu聽進去沒有。當時本來想給他寫個文檔,BOSS Liu覺得太浪費時間,給他說了幾句要點,他又一直在那裏擺弄KIREGIS也不知道他聽沒聽,反正他最後是拍着胸口給絕影打了保票。

吃完飯,他對燕兒說:“今天公司去安裝軟件,我忙了這麼久,周總讓我今天早點回來休息,估計現在他和BOSS Liu還在醫院呢。今天在家我不用工作了,好好陪陪你。”話剛說完,絕影最擔心的事情便發生了。周總電話打過來,說:“KIPACS測試好了嗎?怎麼在這邊視頻出不來呢?”

絕影一聽就急了,KIPACS捕捉視頻是絕對沒問題的,肯定是他們在安裝上出了什麼問題,他又耐心地跟周總講了一遍裝要領:要把 “bin”目錄中的東西拷貝到安裝目錄,然後運行regist.bat註冊採集卡和報告格式的ocx,再安裝採集卡驅動,然後在DSN中添加一個KIPACS數據源,驅動程序爲“MS Access”,文件指向“DB”目錄中的KIPACS.mdb。說完了,他小心翼翼地試探道:“要不我來一趟吧。”

“嗯,你還是來一趟把,打車過來。”

一聽周總這麼說絕影氣得要死。你早想要自己來那我講那麼多要領有個屁用啊。要不你就直接讓我來一趟,要不你聽了要領自己在安裝一次,不行再讓我來。這就好比明明路標上已經標明“解除60公里速度限制”,你開到70公里,交警刷刷就是一張罰單。你下車來指着標誌耐心地說:“警察同志,已經解除60公里限制了呀。”那交警點點頭若有所思地說:“是呀。你說得很對呢。”他這麼說你以爲OK沒事了剛要轉身上車,可他話鋒一轉:“可是罰單都已經開了。下次吧,下次不罰你了。”那有屁用啊,下次,下次我超速的時候你都不知道哪去了。

燕兒聽到他們的電話,對絕影說:“你還是去吧,早點去早點回來,都已經十點了。下次再陪我。”

於是他滿懷對燕兒的愧疚打車去了醫院。果然是安裝的問題,最早的KIPACS用的SDK2000採集卡,但那東西效果實在太差,這次醫院的要求要高一些,於是換成了SDK3000。爲了這次更換絕影還專門重寫了於採集卡相關的代碼,原來那個程序員用的ocx開發,搞得像VB,這是他最忌諱的,於是他全部改成了API調用。沒想到BOSS Liu聰明一世糊塗一時,偏偏去裝個SDK2000的驅動程序。驅動沒裝對,視頻出不來,兩人又怪絕影的程序沒寫好。對他們來說這是個小小的問題,絕影兩分鐘就可以解決,可就這麼一個小小的問題卻要絕影大半夜打車10公里跑到醫院來。對絕影來說,平常大半夜打車10公里來解決這個小小的問題也是小小的問題,可今天,燕兒還在家裏等着自己,對他來說,這就是大事。他們永遠不能理解這事對他來說有多大。

換個驅動,KIPACS果然如在公司測試環境中一樣流暢地運行起來。絕影拍拍BOSS Liu的肩說:“小夥子,下次注意點!”這話的言外之意是:“出這個問題責任不在我,在你。我寫的程序,怎麼會有問題呢?”回頭看看周總,他還是絲毫沒有讓絕影回去的意思,看來他最後的一絲幻想也落空了,想想反正這麼晚都已經出來了,就算現在回去燕兒也還是對他有意見,還是跟他們一起搞完再回家算了。

那天晚上,絕影三點纔回家,燕兒已經睡熟了。

再一次去醫院,是驗收的日子。那放射科主任手忙腳亂。醫院上頭的領導要來視察,如果領導不滿意,責任肯定都在主任頭上,主任又把責任下放到周總頭上,周總又把責任下放到BOSS Liu和絕影頭上,所以絕影他們也是手忙腳亂。

KIREGIS的測試效果還是讓人滿意,BOSS Liu一路順暢地給領導表演瞭如何登記,這邊登記的數據如何從X光機上調出來,如何從CT上調出來。KIView測試效果也不錯,這個軟件由周總負責,本來就是歷經考驗的成熟產品,直接裝上用就行了。走到X光機這裏,周總胸有成竹地說:“下面是KIPACS工作站,它從KIREGIS數據庫中讀取登記的記錄,將TH600拍攝的圖像數字化並轉換成DICOM圖像,可以進行圖像處理,然後可直接打印報告,拍攝的膠片可以直接打印到包工中。下面由公司小絕來演示下使用流程。”

絕影也胸有成竹地走過去,從前臺登記,調閱記錄,拍X光,待圖像進入KIPACS他開始演示調窗。調窗本是放射科醫生的專業他自然不懂,只能胡亂地衡窗寬縱窗位地大幅度調,圖像也跟着大幅度變化起來。正在醫院頭頭準備點頭的時候,突然,屏幕黑了。


《瘋狂的程序員》29

見屏幕一黑,絕影也不知道是怎麼回事,以前在公司測試的時候從來沒出現這種情況,反正肯定是程序出了問題,壞就壞在還是全屏,圖像一黑,整個屏幕就黑了。他用眼角的餘光瞟了瞟周總,還好周總正在興致勃勃地給醫生們介紹KIPACS是如何如何好,只有醫院領導一個人發現了問題。他趕忙退出全屏關掉KIPACS,再次打開。

醫院領導正要開口,絕影搶在他前面說:“這是正常現象,一般KIPACS用久了就要重啓一次。”那言外之意就是:“這黑屏的事,沒啥大不了的,我們早就知道了。並且這又是不能解決的,要能解決我們還不早就解決了。就比如手機一樣,就算是Nokia N95,夠高檔了吧,可是你能拿它放DVD嗎?放不了,還是將就着用吧。所以還是麻煩你們偶爾重啓一下吧。”

周總聽他這麼說,回過頭來,丈二和尚摸不着頭。

最後醫院領導還是在驗收報告上籤了字,一行人撤回公司的時候,周總問:“小絕阿,那個KIPACS重啓是怎麼回事呢?以前怎麼沒聽你說過?”

絕影哪敢給他講很話,忙說:“沒什麼大不了的,回去我調研一下,估計還有些小BUG。”

在公司做CASE就是這樣,雖然公司要求所有BUG的發現和修正都要最終體現到軟件開發文檔裏,但實際操作起來,往往是程序員發現了自己的BUG能隱瞞下來的都隱瞞下來,自己抽個時間或者加班把它修改了,這樣給領導的印象要好一些。這和現在很多小煤窯的做法差不多,雖然上頭三令五申要杜絕安全隱患,但事故總還是要發生的,雖然又說發生事故要如實上報及時補救,但小老闆們總是能隱瞞不報就隱瞞不報,自己私下處理了事。你想真要是如實上報你一個小小煤窯一年12個月就報了二十多個事故上去明年的開採許可證還怎麼可能拿得到?

絕影說是小事,回到公司又看了半天都還是沒搞明白,問題就出在調窗上,這個調窗原理說簡單點其實就是把圖像的一些屬性調整一下然後重新繪製到DC上,小幅度地調整都沒有問題,就是大幅度長時間調整最後顯示圖像的部分都會黑掉。先他以爲是對WM_PAINT消息的處理有問題,這個就比較麻煩,系統經常要發送WM_PAINT這個消息,在裏面下個斷點或者加個MessageBox就一直要不停地彈出。搞了半天還是找不出個所以然。你想要是真是對這個消息處理出現了問題,那應該一早調窗就有問題纔對。

調試了幾次,絕影發現系統變得越來越慢,打開任務管理器,乖乖,KIPACS居然佔用了300多M內存。要知道KIPACS剛啓動時不過只佔用了17M內存。看樣子像是內存泄漏。這樣想,他繼續調窗,調一下發現內存漲上去可又沒降下來,果然是調窗的時候發生了內存泄漏。

知道了原因解決起來就要快得多,原來是GetDC獲取DC後沒有使用ReleaseDC把它釋放,這部分在WM_PAINT消息中,WM_PAINT消息又頻繁發送,所以那內存泄漏起來真是要命得很。

加上ReleaseDC,KIPACS終於可以流暢地調窗,看看任務管理器,內存佔用基本穩定在20M。

搞完這個BUG,絕影看看時間,已經是晚上9點多,公司的人早不知道什麼時候都走光了。這次的事情還是給絕影留下了深刻的教訓以至於在很常一段時間,別人問他:“影頭,你看看我這程序,怎麼老是出問題阿?”他都會跟別人說:“先看看是不是有內存泄漏。”

問題解決了,等到第二天周總來到公司,絕影便輕描淡寫地對周總說:“昨天那個KIPACS需要重啓的問題我已經解決了,是個小問題,內存泄漏。”

所以什麼叫打腫臉充胖子。明明昨天花了5,6個小時憋得幾乎走投無路終於解決出的問題現在在老總面前卻輕描淡寫地說:“是個小CASE而已。”想BOSS Liu也許也是這樣,自己不知道熬了幾個通宵腦細胞不知殺死多少終於給做出個多線程出來,卻輕描淡寫地說:“多線程嘛,那個還不容易,二三十分鐘就搞出來了。”兩個人都是愛吹牛,好像自己能耐大得不得了,什麼技術阿方法阿算法阿解決方案阿還不一切都盡在掌握中,原以爲牛這樣吹了,大家就決定自己有多了不起,結果最後受苦的是自己,開心的是老闆,老闆們正是利用了這種心理,他們會說:“不錯不錯,這麼個大問題能這樣快地解決,這個程序裏面還有二十多個BUG,都是小問題,給你一天的時間夠了吧。”

周總對絕影反映的問題還是比較關心,他說:“內存泄漏這個問題是廣泛存在的阿,這種問題又最不好調試。我給你介紹個軟件吧,BoundsCheck,專門測試內存泄漏。”

在以前,絕影絕對不會去關心別人介紹的什麼軟件,首先那軟件是別人介紹的,自己又不熟悉,軟件好不好阿,怎麼用阿都要自己去摸索,特別是這個BoundsCheck一聽就知道是個英文版的軟件,還要拿金山詞霸去翻譯菜單或者網上到處去找漢化版,本來以爲用這個軟件能極大地提高勞動生產率,結果反而花在學習上的時間都遠遠超過了它提高的勞動生產率,這叫“磨刀誤了砍柴工”。

可這次絕影還是比較慎重,昨天雖然把問題解決了但實在把自己搞得太痛苦,也幸虧昨天開了任務管理器發現了問題,要不說不定把代碼跟蹤到太平洋還不知道問題在哪裏。

去網上下個BoundsCheck6 for VC,原來是大名鼎鼎的Numega公司出的,想能出SoftICE這樣的軟件的公司出的東西還能有假嗎?就比如今天微軟宣佈出了一個新的操作系統,那還不成爲各大網站的頭條新聞。所以不僅是衣服,就是軟件也有個品牌效應。

那天在公司又調研了一整天,絕影第一次知道了“純化測試”這個詞。以後每次周總說:“OK,明天我們進行Purification。”絕影就跟大家翻譯道:“好,明天我們進行純化測試,沒裝BoundsCheck的把BoundsCheck裝上,不會用的找我。”



最近幾天BOSS Liu在公司頗爲得意,看來醫院對KIREGIS試運行非常滿意,要他修改的地方也很少。KIREGIS的代碼一直是BOSS Liu在負責,絕影從來沒去看,這也好,世界上最幸福的事情就是你把事情交給別人別人做好了交給你居然和你的要求一模一樣,根本不用改。因爲沒什麼事做,BOSS Liu正好潛心研究起C++來。

本來有好多事情都是一樣,會做容易做好難,就說這C++就算你是寫了五六年程序的程序員,說函數模板、類模板、純虛函數、虛基類這些東西你又用上了多少。BOSS Liu研究了一些這方面東西,再加上KIREGIS在醫院取得了成功,覺得差不多火候已到,絕影也不過爾爾,不過就是彙編好一點嗎?還是那句話,彙編不過100多個指令,有什麼難的。

可絕影總以爲他對C++的研究應該僅限於“理論”上。

兩人見了面,BOSS Liu問:“你知道這個XXXX基類的構造函數會被調用幾次麼?”

絕影自知肯定回答不上來,在這種情況下最好就不要去回答,BOSS Liu是有備而來故意刁難你,不是帶着請教的,所以就算你僥倖答對了,也並不能讓他對你欽佩的感覺油然而生;要是你答錯了,就正中他的下懷,從此以後凡是有技術上的討論,他總是會拿“你XXXX這個問題都不知道,還說個P呀”來壓你。

這正如魯迅先生說的,一家人生了孩子,你說:“這孩子好呀,以後要當什麼什麼大官有多少多少錢。”那你是騙人的,可人家父母愛聽。你說:“這孩子最後會死。”這是真話,可人家父母不愛聽。怎麼辦,你最好就說:“呵,這孩子……你看……呵……哈哈……”

所以絕影避開問題地重點,也打起哈哈來:“研究C++阿?有什麼好研究的?我告訴你,C++能做到的,用匯編都能做到。彙編能做到,C++還有些做不到哦。”

這是絕影的殺手鐗。首先把問題轉移到彙編上來。這方面他有幾年積累,算是個小行家。再說的確在自定位和精確計算代碼長度這兩個技術上只有彙編能做到,這是高級語言的死穴。管它什麼語言,他用這兩點都能把它殺了。

BOSS Liu很不服氣地說:“我知道你那彙編,在Windows下不過是換成‘invoke’來調用API罷了。還能唬我。BOSS Jue,你去各大公司看看。你那玩藝過時了。”

“你懂個P,存在就是合理,懂不?這是哪個大哲學家說的。”

“我知道我知道。可你那玩藝就快連存在的價值都沒有了。我問你,除非你搞病毒,還能有什麼彙編能做高級語言不能做的?”

這又將了絕影一軍,每次他跟別人說:“我嘛,擅長彙編。”就最怕別人問:“你搞病毒的?”別人這樣說,就好像說:“你這人,真長得就像個賊。”所以每次他都不得不跟別人講一大堆什麼彙編不一定搞病毒,除了搞病毒彙編還有什麼什麼用途,還能寫什麼什麼程序。想了半天,絕影實在想不起彙編還有什麼優勢,但沉默下去就是認輸,從此以後,BOSS Liu就可以名正言順在他面前顯擺C++,從此以後自己和彙編語言在公司中就再沒有什麼地位。請急之下,他忽然又想起大學時候做過的大數運算庫,終於洋洋得意地說:“誰說沒用了,我曾經把一個C++做的大數運算庫算法原封不動地翻譯成彙編,算1024位乘法速度居然提高了200倍。我用匯編,可以把大部分操作數都存到寄存器中,可憐的C++阿,還得全部存到內存中,做高級運算還是應該在一旁休息去吧。”

說完這話,BOSS Liu沉默了。這是理論論據和事實論據都充分。本來彙編速度快這是毋庸置疑的,再加上絕影有寫好的程序擺在那裏,BOSS Liu從哪裏駁都駁不倒。見他不說話,絕影大模大樣往自己桌子上一坐,心裏嘀咕着:“還跟我比C++,我彙編是通吃。”

大概過了10分鐘,BOSS Liu忽然跳起來大聲說到:“BOSS Jue我差點讓你給忽悠了,剛纔忘記了CACHE。現在的CPU都有CACHE,CPU對CACHE的訪問速度和寄存器差不多,C++會把經常使用的變量放CACHE裏面,速度應該和彙編差不多才對。”

絕影本來以爲可以穩坐釣魚臺了,沒想到BOSS Liu就是這麼個不見棺材不掉淚的人,聽他這麼說還是有道理,至少從理論上講應該是這樣,這下他又解釋不了實踐上200倍的速度差,現在沒有理論作爲依據,就是牽強地去跟BOSS Liu解釋也會把自己在這次爭論中置於非常不利的地位。最後,還是絕影沉默了。

從那次爭論以後,BOSS Liu再也沒給絕影誇過C++的好,也沒再誇自己在C++上的造詣有多深。絕影也沒再在BOSS Liu面前顯擺彙編有多無所不能,自己彙編有多爐火純青。兩人都心知肚明,他們倆水平一般,要是繼續在這語言孰優孰劣上爭論,誰都沒必勝的把握,如果輸了,臉就丟大了。還不如好好再深造幾年,到時再一比高低。

很多年以後,絕影終於想到當初想不出來的問題:彙編語言使用寄存器並不是對寄存器訪問比對內存訪問更快,而是對寄存器尋址比對內存尋址更快。很多時候他想把這個告訴BOSS Liu,但他終於還是沒告訴他。



一晃兩個月過去,絕影和BOSS Liu去醫院對他們的軟件系統作了兩次例行維護和更新,醫院的規模還算大,登記數據已經有三萬多條,KIREGIS還是經受住了耐力測試。KIPACS經過絕影兩次更新基本上也運行比較穩定。在領工資的時候,周總對絕影說:“XXX醫院的CASE已經驗收合格,這個月給你發500元的獎金。因爲這個CASE的收入也不多,就你KIPACS貢獻最大,所以獎金也就你有,對其它的人就不要聲張了。”

本來絕影覺得這麼大的CASE忙了這麼久才500元的獎金周總也真是太扣門了,但聽周總這麼說,絕影還心裏笑着走出了他的辦公室,恨不得立馬當衆大聲宣佈:“知道嗎?XXX醫院項目獎金500元,就我絕影一個人有!”

BOSS Liu也進了辦公室。周總還是說:“XXX醫院的CASE已經驗收合格,這個月發給你500元的獎金。因爲這個CASE的收入也不多,就你KIREGIS貢獻最大,所以獎金也就你有,對其它的人就不要聲張了。”

當然,BOSS Liu在出來的時候也恨不得力馬當衆大聲宣佈:“知道嗎?XXX醫院項目獎金500元,就我BOSS Liu一個人有!”

大家一個二個領完工資,臉上都喜氣洋洋。公司的電話響了,張廠長積極地搶着去接了電話,說了幾句,回過頭來說:“醫院打來的,找絕影,好像程序有些問題。”

絕影一下傻了。傻的不是程序有些問題,是醫院居然指名點姓要找絕影,而且醫院居然還知道“絕影”的名字,自己麻煩了。

《瘋狂的程序員》30
見絕影嚇得臉都變了色,BOSS Liu打趣的說:“想不到BOSS還是從原始部落出來的!據說有些原始部落就是怕別人知道你的名字,別人知道就能用咒語讓你死。”

絕影白了他一眼,接過電話。

電話是放射科主任親自打過來的,在那頭急得要死,說系統不能用了。

明明去安裝的時候都是好好的,這BUG再怎麼嚴重也不至於讓整個系統都不能用了吧,事情要真有那麼嚴重自己剛到手的獎金估計又要泡湯。忙跟他說:“什麼時候發現問題的。”

“前幾天就開始了,不過還勉強能用。今天他們說不能用了,我跑過來看,果然不能用了。”

“是什麼情況?”

“前幾天是登記的時候速度太慢,登一個人起碼都要等5分鐘,還不如以前用紙登記快。到今天,簡直是不能登記了,估計起碼要等一個小時。”

聽他這麼說,絕影終於鬆了口氣。這是意料之中的事情。想醫院一天做的病人起碼有幾百個,就算如BOSS Liu所說KIREGIS設計容量是10萬級別數據量那最多也就幾個月就撐爆了。再加上那些X光機,CT機拍的片子轉換成DICOM圖像一張動輒就是好幾十M,這麼大的數據量不慢死纔怪。本來在這種情況下應該配套一個數據備份和刻錄的軟件,奈何CASE的時間太緊,驗收的時候也就是勉強才做完連Beta測試都沒有這些增強要求自然沒時間去給他考慮,周總的意思是先等驗收過了,錢到手了,大家閒下來了,再花點時間慢慢給他做個備份系統。

雖然話說“顧客就是上帝”,現在好多顧客認爲自己付了錢,還真把自己當成了上帝,東西出一點小問題就蹦炸起來:“壞了!不能用了!你們趕緊給我搞好!”絕影和BOSS Liu以前給別的醫院做系統維護的時候聽多了這樣的抱怨,反而反感起來。那時候沒辦法上頭有命令必須要去做,現在又不一樣了,東西驗收是你籤的字,錢我也拿了,老子現在就是上帝!

於是他慢條斯理地說:“別急別急,那是因爲數據量太多了,正常情況。你想想用了那麼久了,機器裏面裝了那麼多數據,哪有不慢的道理,就是你自己機器時間長了你還不是得拿Windows優化大師搞一搞。”

“那現在怎麼辦呀。”主任這麼說,聲音有點變調,絕影忽然又有點可憐起他來。

“這樣吧,你們自己不是有網管嗎,讓他把硬盤裏的數據拷出來刻成光盤然後刪掉,數據少了速度自然就快了。”

“這種事情我們怎麼敢搞啊,萬一把系統搞壞了是小事,數據掉了我們都交不差,現在衛生部規定所有醫學數據都至少要保存5年,這個事情誰都馬虎不得啊。你給想想辦法幫幫忙啊!”

絕影當然知道這事情他們不能搞,這樣說就是想嚇嚇他,以前東西還在做的時候周總總是說:“小絕啊,今天主任打電話過來,說那個KIPACS還需要個什麼什麼功能。”所以他肯定地認爲KIPACS搞那麼長時間加那麼多功能出那麼多BUG罪魁禍首都是這個主任。他一個小小的要求在那時候就能讓絕影起碼多加三天的班。

見主任說話都哆哆嗦嗦,想像着他人在那邊全身像篩糠似地打着顫,絕影的虛榮心忽然得到極大的滿足,全身都自在起來,於是用很大方地口氣說:“這樣吧,這事情我我給上面反應一下,我們再調研調研,看能不能給你們做個工具專門來備份。這樣對數據就比較安全了。”

“那就最好了。但是這幾天我們怎麼辦呢?”

“這幾天?你們以前沒裝我們系統的時候是怎麼做的現在就怎麼做。等到我們把東西做出來吧。機器先不要開了,要再開機器出了什麼問題數據掉了那就是你們的事情了。”絕影知道那主任怕的根本就不是系統壞了,按照合同,壞了你絕影得再給我裝,裝到我滿意爲止。他最怕的是數據丟掉。現在哪個軟件的License上不是寫的:由於用戶操作導致的數據丟失,公司概不負責。絕影他們公司也是這樣寫的。數據掉了就你自己的事情,你得自己想辦法給醫院領導給衛生部交待。

主任在那邊唯唯諾諾地說:“好,好。那你們儘量快點。急死人了。”

放下電話,絕影對BOSS Liu說:“你懂個P。名字這東西,讓別人知道了不得了,其他人他都不認識,以後每次事無鉅細他打電話過來都說:喂,找絕影。那還不把整死啊。



下班回家的路上,BOSS Liu從路邊的郵政儲蓄那裏給家裏寄了300塊錢。絕影覺得他也太扣了,要寄就多寄點,至少都得1000,你300塊錢,自己都不好意思拿出手。他迫不及待給燕兒打了個電話,說:“你今天過來吧,我有重要的事情跟你說。”

這學期燕兒也是大四了,絕影在哪個時候別人早不知道他行蹤在哪裏。但女生不一樣,膽子比較小,每天還是老老實實呆在學校,雖然學校裏課也沒多少事情也沒多少,每次來絕影這邊好像還得下很大的勇氣似的。

將近兩年的時間過去,絕影也深深地摸清了燕兒的脾氣。要想把她哄過來還得對她說:“有重要事情要跟你說。”至於什麼重要的事情,當然是“重要”到要當面才能說,好像就怕電話裏一說這事便讓全天下人都知道了,肥水流了外人田。

燕兒也不懂吃一塹長一智,雖然每次過來聽絕影面授機宜結果都大失所望,原來就這麼屁點大個事情還勞駕自己親自跑過來。女人就是這樣,同樣一個花招只要你願意繼續耍,就可以讓她永遠上當下去。

等她來絕影這裏已經差不多八點了,晚飯也還沒吃。絕影神祕兮兮地從錢包裏掏出一把人民幣,先一二三四五六七鋪開,說:“看見沒有?RMB2000大洋,這個月工資。看2000有多少!”說完又把人民幣合攏,掂了掂重量,比了比厚度,突然把錢往天上一撒,又趕緊一張一張揀起來,邊揀邊說:“快揀錢啊!”等錢全部揀完,絕影把它緊緊撰在手裏,好像那不是2000,是二十萬。

燕兒心裏想着他有重要事情要說,對RMB興趣不大,問:“有啥大事情,快說啊。”

“就這個事情。”

“就這個事情?”

“就這個事情。工資1500,加上XXX醫院的獎金,總共2000大洋整。”

“就這個事情?”

“就這個事情。那500獎金全公司就我一個人有,因爲我貢獻最大。別以爲BOSS Liu的KIREGIS做得好什麼多線程,那都是忽悠人的,周總都說了,KIREGIS等於是送給他們醫院的,真正的重點是我的KIPACS。”

本來燕兒還是有點不高興,自己大老遠跑一趟原來就說這麼個事情,在電話裏面完全就可以說清楚。不過看見絕影手裏撰着錢樂得傻笑,她還是很替他開心。她挺關心他,問:“吃飯了嗎?”

“沒吃,等你來一起吃。今天領了工資去吃火鍋,哈哈。去那家‘劉一手’,沒想到他們表面上不咋的,生意還火爆得不得很,我去觀察了幾天,幾乎夜夜都爆滿。”

本來兩人都窮,難得上一次館子,不過火鍋店卻例外。想絕影每次說話都以:“小時候家裏窮……”開頭,兩人以前在學校的時候每週都得算計着明天還有多少錢,該吃什麼,有時候錢還真接不上來,於是就去吃火鍋。學校外面的火鍋消費滿10元就發張1元的代金券,下次來的時候抵1元錢,沒錢了,就約幾個同學說:“走,今天沒事,一起吃火鍋。”吃完火鍋AA制,別人付現金,他們付代金券。

所以今天吃火鍋,兩人感觸還是很深。絕影從來不喝酒,今天也沒喝酒,卻像喝醉了的人一樣,一直跟燕兒滔滔不絕地說話。

他說做那個KIPACS以前的程序員做得要多糟糕有多糟糕,十幾個cpp文件到處都是定義的全局變量,又沒用匈牙利命名法,沒有註釋,甚至書寫代碼連縮近都沒有,自己居然給他改好了。虧得周總他們以前還說那個人是個高手,自己還崇拜了他起碼半年。

他說那個放射科主任,挺着大肚子,腦袋上光光的,要求還挺不少,又不一次性提完,一會給他提一個一會給他提一個,害得他反過來複過去修改。就像放屁一樣,你要麼一次性把屁放完,好像屁還是寶貝似的還節約着放,一會放一個一會放一個,你自己到是爽了,可把別人整慘了。

他說調窗的時候內存泄漏,差點把他害死,那天晚上他加班加到晚上九點,飯也沒吃,好歹給搞了出來,周總都還不知道。要是換成BOSS Liu,還不一定能做出來,這項目多半就給掛了。

他說那數據庫備份,本來當初就應該做,周總硬是說不做。現在想來還是周總老謀深算。要是真給他們做了,今天他們也不會打電話過來孫子一樣求公司。想起自己在大學的時候,老師說他們以前給別人公司搞電話交換機,搞好了把錢收了裏面留個後門,保修期一到馬上撥過電話過去,那交換機就不工作了,別人公司急得不行讓他們去修。修,當然行,過了保修期,得付錢。周總他們雖然還沒有這麼惡毒,但終歸可以在維護這方面卡他醫院一下。他們態度好,就送一點,他們態度不好,就緊一點,反正我已經收了,你吃屎的還得聽咱拉屎的話。

絕影只管自己滔滔不絕的說,有很多東西他也知道燕兒聽不懂。她不知道什麼是cpp什麼是全局變量什麼是匈牙利命名法,也不知道什麼是內存泄漏什麼是GetDC,ReleaseDC,可他還是給她說,對他來說,除了燕兒,再也沒人可以這麼和他分享他的工作和他成功的喜悅。這2000塊錢是什麼?對別人來說,就是普通的一個月工資加獎金,對他來說不是,這是他第一次一個月工資加獎金。

燕兒什麼話也沒說,一邊不斷給他夾菜一邊靜靜地聽他講。



醫院數據庫備份工具很快就做好了,本來周總老早就計劃了這個東西,驗收完回來就讓絕影來做,工具很簡單,就是把KIREGIS用的MS SQL數據庫中的數據導出到Access數據庫中,把原來的數據刪除了,把Access數據庫的內容刻錄下來就OK。本來MS SQL好像自帶有導出成Access的功能,寫個腳本就能實現,但絕影和BOSS Liu對這個實在不太熟悉,兩人又懶,不願意去網上搜,更不想去論壇上提問。首先網上搜沒針對性,人家寫的東西,又不是專門量身爲你這個CASE打造。一句話,麻煩。去論壇上提問,那是守株待兔,還要看大蝦們今天有沒有時間心情好不好來給你解答。

於是就自己做,把MS SQL數據庫的內容讀出來,再寫到Access數據庫中去,反正當初在開發的時候就用ODBC,其實這一讀一寫代碼差不多。

絕影再去醫院給他們裝這個備份工具,主任再不像從前那樣趾高氣昂,反而對絕影有點畢恭畢敬,起碼對他說了五個“謝謝”。走的時候絕影說:“怎麼用也寫到文檔裏面去了。你們最好還是派專人來操作,免得人多手雜把數據給損壞了,另外要是出了問題也容易追究責任。”

忙完了這些,大家差不多可以暫時閒下來,BOSS Liu繼續研究他的C++,每天還是坐在他的電腦面前看代碼寫代碼。張廠長去負責KIPACS遙控器的CASE,這也是個增強功能,不用很急。周總又天天坐辦公室了估計又在調研什麼大CASE。

絕影一時找不到什麼事情好做,在公司擺弄彙編也不太合適,再說也沒什麼東西還擺弄的,彙編那東西,就是寫個“Hello World” 的窗口都要擺弄好久,實在不好“抽時間”來擺弄。不過“抽時間”去書店轉轉還是可以的,於是又去西南科技書店買了本書:《加密與解密》,看雪編著,電子工業出版社。本來絕影在看雪論壇上轉悠了一陣,覺得那上面都是高手,好多東西都還是看不懂,他看不懂的就覺得別人是高手,其實他也看不懂《史記》,於是他也覺得司馬遷是高手。

正當絕影、BOSS Liu、張廠長三人悠載悠載地過着小日子的時候,有一天,周總把絕影叫到辦公室,嚴肅地說:“小絕啊,我很少批評你,可這次你犯了個嚴重的錯誤!”


《瘋狂的程序員》31

聽周總這麼說,絕影嚇了一跳,不光他嚇了一跳,BOSS Liu和張廠長也嚇了一跳。在他們印象中,周總臉上總是帶着平靜地表情,即使偶爾批評起人來,也還是帶着平靜地表情。這時候,絕影突然想起念大學的時候,本來和燕兒在校外租了房子悠閒地過着小日子,沒想到有一天公安局會突然來敲他的門,想到公安局肯定是來查自己非法同居來了,嚇得要死。想在來看,周總一定是來清算平時不按時到公司,作風懶散的事情,果然是“出來混,遲早是要還的”。

周總毫不留情地說:“你看看你寫的代碼,這個備份工具裏面,你居然一次性把SQL數據庫裏的數據全部讀出來放到內存,再寫到Access數據庫中,爲什麼要這樣,爲什麼不讀一條寫一條?”

一聽不是清算作風的事情,絕影又帶着慶幸地送了一口氣,就像當初打開門,原來公安局是來了解殺人焚屍的事情,跟非法同居完全不沾邊,自己一下從犯罪嫌疑人變成證人,其中的成就感不言而喻。

再說周總問的這個問題絕影也早就想到過,於是胸有成竹地說:“這個問題我當初也想到了,考慮到讀一條寫一條可能太浪費時間,還不如一次性讀到內存中,那樣肯定要快得多。”

聽絕影這麼說,周總慢條斯理地說:“小絕啊,這就是你經驗不足了。你在公司裏測試有多少數據?就一百多條,一百多條數據能測出什麼?要是數據有幾萬十幾萬呢?你全部讀到內存中,內存根本不夠,操作系統只好頻繁地使用交換文件,這樣速度不但不會提高,反而會慢很多,你自己看看,你係統每次用久了後是不是慢得很?那就是因爲用的時間長了,內存佔用多了,系統使用交換文件,最後慢得不得了。”

絕影一邊聽周總說,一邊注意他的表情,彷彿還帶了點洋洋得意的神色。雖然傳說中周總寫程序還是很牛B的,但絕影從來沒見過他寫的代碼,對這個傳說還是持了點保留意見。沒想到這次分析問題周總還是講得頭頭是道,這個問題,沒點經驗的人還真發現不了。於是他唯唯諾諾地說:“有道理有道理。是我沒考慮周到。”

“既然這樣,那就趕緊改吧,別等問題暴露出來纔來忙,我們要防患於未然。你趕緊改,我在旁邊看着,改好了重新送過去。”

周總說完,泡了杯茶,端了根板凳坐在絕影旁邊。

絕影突然覺得不自在起來。大家在公司各忙各的,就算實在沒事可做也要裝出很忙:打開一個Workspace,選中一個內容比較豐富的cpp文件不斷把滾動條拖來拖去,特別是周總出來,就故意用手托住腦袋,做出痛苦的冥思苦想狀。在這種狀況下,絕影能夠很容易“偷偷地”把程序寫出來。現在周總坐到旁邊看着他,他反而不知道程序該怎麼寫了。

所以有時候寫程序就像放屁。放屁這個事情畢竟是件不雅的事,所以大部分人還是要偷偷地放。比如幾十個人擠在公交車裏,冷不丁誰偷偷放個屁,於是大家一邊捂着鼻子一邊互相指責:“你放的,你放的。”而真正放屁的人看到這情況,爲掩人耳目,也充當起南郭先生,不斷說:“誰放的?誰放的?”在這種情況下,屁很容易就放出來了。要是真正讓你在大庭廣衆衆目睽睽之下來放屁,怕就算你吃下兩斤豌豆也放不出也不敢放出一個來,最要命的是肚子咕咕姑不斷叫,就是不敢放。

最後絕影終於還是把程序憋了出來。周總滿意地點點頭,說:“這還差不多,這還差不多。”



原以爲這個問題解決了世界從此就太平了,絕影和BOSS Liu又變本加厲起來,以前他們是早上聽到《小哪吒》才起牀,奈何那幼兒園實在太準時,每天都是九點十五分放《小哪吒》,看來在起牀這方面是沒什麼迴旋的餘地,於是他們只好中午吃了飯再回去睡個午覺纔去公司。

終於有一天,周總說:“公司慢慢壯大起來,管理也要跟上。這樣吧,以後大家早上9點簽到上班,中午12點吃飯,下午1點又簽到,6點下班,剛好每天工作8小時,簽到兩次,沒問題吧。”

大家唯唯諾諾地點頭,絕影估計周總已經知道了自己和BOSS Liu懶散的作風,可是他不好發作。進一步思考,肯定是有人告密了,多半是張廠長乾的好事,因爲每天就他來公司最早,9點就到了。

看家都沒什麼意見,周總繼續說:“公司當然要有公司的紀律,這兩天我已經制訂了公司的一些相關規定,就把它貼出來,這裏面要特別講的一點是上網。你們的合同裏面已經寫了,上網必須在服務器上上,而且必須與工作相關。最近我發現有人在上網的時候做一些與工作完全不相干的事情,以前我沒說,今天就特別說一下,特別是上QQ,這個是要堅決杜絕的,大家也知道,現在QQ的那些病毒多得不得了,要是把服務器打誇了就不好了,主要是那上面有很多重要的東西。”

絕影和BOSS Liu他們都知道,什麼QQ病毒啊那些都是周總忽悠人的。一個搞IT的公司,不要說絕影這種早在大學時代就和病毒鬥爭的人物,就是隨便一個倒茶的祕書也知道如何避免在上網時中病毒這個基本道理。本來工作就是工作,工作就是不應該上QQ,這根本不需要什麼理由,現在周總又找些非常佔不住腳的理由來說,反而讓大家覺得非常好笑。所以有時候很多事情找個不那麼充分的理由還不如不找理由。

末了,周總拍拍絕影的肩說:“大家沒什麼意見就這樣吧,以後就先由絕影就來負責早上籤到這個事情。你把公司員工的名單打個表,每天大家就在表上籤,月底把表交給我,按就照簽到的次數來覈算工資。”

絕影狠狠地點點頭,就差沒說一句:“包在我身上。”其實他心裏最清楚,周總讓他來負責,根本就不是因爲對他的信任。你想劉備白帝城託孤,對諸葛亮說:“我那個兒子,你能扶就扶,不能扶就把他廢了自己上位吧。”他這麼說了,諸葛亮就算有這個心也再沒這個膽,本來可能心裏還想着:那小子,過兩年就把他廢了吧。現在還怎麼敢!只好誠惶誠恐地一邊磕頭一邊說:“臣哪敢不效肱股之力啊!”諸葛亮是聰明人,他知道說不定兩邊都埋伏好了刀斧手就等着砍他呢。正因爲劉備有這本事,所以管你諸葛亮頭腦如何如何聰明,關羽武功如何如何高強,他永遠都是他們的領導。

於是絕影又無奈地對BOSS Liu說:“明天還是早點來吧。”

本來BOSS Liu對絕影一直都不服,論技術他也不輸,論酒量自己肯定比他大,這次絕影跟他說話語氣卻很軟,於是他的心也軟了一下,說:“嗯,BOSS的事情,是應該配合一下。”

穩穩當當又過了幾個月,這天剛上班不久,BOSS Liu忽然對絕影說:“BOSS不好,出大事了!”

絕影慢條斯理回過頭來,說:“啥事,曰。”他知道“不好”,“出大事了”這是BOSS Liu的語氣助詞,無實意,去掉這些助詞,BOSS Liu實際說的是:“BOSS!”也就是喊他一聲,所以他也迴應得不慌不忙。

“周總今天早上把U盤還我了。”

絕影正忙着優化KIPACS的代碼,過幾天他又要和周總出差去另一家醫院安裝,這次他頭也沒回說:“你的U盤是應該還給你嘛。”

“問題是我U盤上有QQ。”

“你U盤上有你的裸照又如何,反正是你的U盤又不是我的U盤,是你的裸照又不是我的裸照。”

“問題是我昨天晚上把U盤插服務器上上QQ了。”

“你不跟周總說他咋會知道你在服務器上上QQ了?”

“問題是我昨天晚上走的時候忘記取U盤了,今天早上週總還給我的。”

聽他這麼說,絕影提他捏了把汗,放下手上的代碼,回過頭來問:“周總咋說?”

“周總說:‘小劉啊,這是你的U盤嗎?’我當時還想,裏面不是有我的照片嗎?你都看了還問。”

“那周總知道你在服務器上上QQ了不?”

“不知道――我不知道他知不知道。”

“周總太狠了。我覺得他多半知道了。”

“那我不是完了。”

“管他的,反正他又沒說啥,穩起,他不說你不說,裝傻。對他這種人,就得裝傻,懂不?”

“嗯!裝傻。先把U盤上QQ刪了。”

過了半個小時,絕影走到BOSS Liu面前,小心翼翼地說:“我考慮了半天,還是告訴你個祕密吧。”

“曰。”

“走,咱們先出去抽根菸。”

BOSS Liu極不情願地跟他跑到廁所,說:“趕緊說趕緊說,我手頭上事情還多。廁所好臭,幹啥跑這來說?”

“這次是個驚天大祕密,我怕我說了嚇死你。”

“又是驚天大祕密,你哪次說的事情不是驚天大祕密。”

“是真的,這次如假包換的大祕密。”

“快說吧少廢話!”

“其實我在服務器上偷偷裝了個CCProxy。”

“考,你當週總白癡啊?你看周總天天在他自己電腦上上網,VPN他都會用,你還CCproxy呢。你就等着死吧。”

“BOSS此言差矣,我用的服務方式啓動,隱藏了界面,又把exe名字改了,改成svchoost.exe,天都不知道我在裏面乾的啥。實話告訴你,我那代理已經成功運行兩週了,看來還是經受住了考驗。就比如你,你知道我裝了這個嗎?”

BOSS Liu想想也是,自己天天去那服務器上轉悠,有時候晚上下班了還假裝加班去上面上上QQ,絕影那代理服務器就在自己眼皮底下工作居然都沒能發現,雖然這方法比U盤上QQ要笨十倍,不過好像還真有用,看來不管你周總武功有多高,還是明槍易躲,暗箭難防啊。

“既然BOSS有路子,那就拿出來共享了嘛。你想我哪次領了工資沒照顧你?”

“這是當然,所以我思來想去,最後還是決定把這個祕密告訴你。一會回去周總不在的時候我把你機器的IP添加上去。不過千萬要小心,萬一被周總髮現了嘴巴一定要緊,別說是周總,就是公安局的,只要你嘴巴咬得緊他們都不能把你怎麼樣。”

“BOSS你當我劉某啥人啊!你放心,這事到了我這裏就算進了保密局了。”

BOSS Liu斬釘截鐵地這樣說,絕影忽然想起個事情,當初康有爲找袁事凱計劃大事,說:“你要想發達,就到老佛爺面前告我造反吧。”袁事凱拍着胸脯說:“君視袁某爲何如人也!”沒想到袁事凱轉過背就把他們告了。想到着,絕影感覺這事懸了。



陳董又風塵僕僕回到了公司,到公司的時候還拖着他的箱子。加上他蓬亂的頭髮,簡直是個專業出差人員,誰也想不到他會是公司的董事長。

到了公司,陳董第一件事是拍着絕影的肩語重心長地說:“小絕啊,多幫幫周總。”第二件事是拍着BOSS Liu的肩語重心長地說:“小劉啊,多幫幫周總。”

放下包,陳董水也沒顧得喝,說:“你們不是想做大CASE嗎?這次我帶大CASE回來了。”

《瘋狂的程序員》32

陳董一臉嚴肅又略帶洋洋得意,絕影和BOSS Liu在心中盤算着這個大CASE能大到什麼程度,100萬,500萬還是1億,於是都期待着陳董繼續往下說,恨不得拍着胸脯說:“陳司令,你就下命令吧!”

陳董掉足了兩人胃口,才緩緩地打開自己的電腦,擺弄了一陣,向二人招招收,說:“過來,過來。”

兩人探過頭去,屏幕上是個國外的軟件,全是英文。陳董說:“這是個石油上的軟件,叫PVT2000,因爲油田那邊還需要個功能這上面又沒有,我們必須給它加上去,其實也不難,簡單地說,就是根據兩個二次函數在座標系上繪製它們的圖像,求出交點並把座標標示出來。”

本來兩人看那PVT200看得興致勃勃,心裏琢磨着該不會讓咱們也做這麼個大象出來吧,沒想到陳董這麼一說,就相當於讓咱們做一根大象的尾巴,也許只算尾巴上的幾根毛。就比如你看周正龍拍老虎一炮走紅,想起當年自己還拍了不少,那周老虎算啥,也不過爾爾。於是將自己的老虎報上去,夢想着自己也憑着這老虎一炮走紅,沒想到幾天後你的老虎讓上面給刷下來,領導批示:這分明是隻貓嘛!

陳董看出兩人有點失望,立刻說:“別急,這只是一小步!首先,這是個收費的軟件,就讓你用一個月,所以咱們還得先把它破解了。要是不破解,後面的都沒意義。所以這纔是大頭,考驗人的地方。小絕阿,你進公司的時候就聽說你彙編不錯嘛,這次可是你發揮的時候到了。”

聽到後半部分,絕影頓時精神振奮,他長期跟別人吹牛說:“對加密算法,軟件逆向工程有一定的研究。”但吹牛畢竟是吹牛,就算你把牛吹到天上去,畢竟還是有掉下來的一天。他總是夢想着有一天他跟別人說:“對加密算法,軟件逆向工程有一定研究。那XXXX軟件知道嗎?那個軟件多牛B,也讓我破解了。”事實勝於雄辯這是顯而易見的道理。

和絕影相反,BOSS Liu反而像泄了氣的皮球。自己對彙編和逆向一竅不通,想充其量陳董也就是讓自己做那個求交點的部分,那還不是弄個DC畫幾根線算下數學函數就完了的事情。虧得自己多C++研究了那麼久,就像讓他去做飯,可惜自己滿腦子天文地理IT知識,竟然一個也用不上。

頓了頓,陳董問:“小絕阿,當初我就想到你說你彙編有把握,才冒險把這個CASE接下來,你看看,怎麼樣?”

本來絕影準備說:“沒問題這事就包在我身上。”但聽陳董這麼說,意識到這個事情還是很嚴肅,保守一點比較好,於是說:“嗯,破解這個東西,7分技術3分運氣,我還是隻能試一試,不能說一定能做出來,不過做出來的機率應該還是比較大的。”

開完會,陳董把PVT2000拷貝到絕影的U盤上,和周總繼續在辦公室討論更大的事情。他們倆走出來,到廁所裏一人點了根菸,BOSS Liu對絕影自嘲地說:“BOSS,維護世界和平就靠你了。”

“哪里哪里,還是要靠你。”

“不不不,靠你就行了。”

“太失望了,原來這就是陳董的大CASE,看來在公司沒機會做真正的大CASE了。”



星期六,燕兒又來了絕影這裏,給他做了絕影最愛吃的鯽魚湯。絕影喝着湯說:“陳董又回來了,說帶了大CASE回來,原來就是指頭那麼點小項目,滿以爲有機會鍛鍊一下,不知道又要等到何年何月了。好再還有個破解的工作可以作作,勉強打下牙祭。”

“既然有機會,就好好給他們證明一下嘛。”

“不是我不想給他們證明。破解這個事情,我給他們說的7分靠技術3分靠運氣,實際是完全顛倒過來――3分靠技術7分靠運氣。我要運氣好,十分鐘就搞出來了,要運氣不好,搞個十天八天都啥都沒有。關鍵是寫程序,寫個十天半個月,你至少知道大概還要多久能搞出來,搞破解,你搞了十天八天,還是不知道啥時候能搞出來,到底能不能搞出來。”

“那就加油吧,盡力去做。”

“好,那我就去做了。”說完,趕緊爬到電腦面前。

絕影這招相當聰明,以前是燕兒做飯他洗碗,今天用這招剛好把洗碗的工作也推掉。

本來破解就是個細緻工作,那時候技術又不發達,調試器還得用SoftICE,面對那個黑洞洞的窗口,還得記一大堆命令。好在有本《加密與解密》,本來看其實也沒看什麼,就這時候查查SoftICE的命令,權當工具書來看。哪像現在有Ollydbg,還可以邊聽mp3邊調試,什麼反彙編代碼,直接一個複製粘貼到記事本中然後慢慢分析。不過話又說回來,正因爲技術不發達,那時候軟件也大多不加殼,就是加也基本都是些菜殼,哪像現在什麼ASProtect,Armadillo,Themida還帶虛擬機保護,不過就是個1.3L的VVT-i發動機,還給加個悍馬的殼子,發動機價格3萬,殼10萬。

這PVT2000看來又比較簡單,試用一個月,到期就給個對話框提示不能運行,好像要一個序列號,絕影自己知道,就他現在這技術,要找到序列號或者做個註冊機那這項目應該算得上是個大CASE。但很顯然以陳董他們給他的時間,他們並沒把他當做大CASE來看,所以管你白貓黑貓抓到老鼠就是好貓,只要讓他能運行就好。

從這個MessageBox下手,下了斷點往前翻應該在就附近,再把斷點往前下一點,一步一步跟,代碼他大多沒看懂,遇到CALL跟進去轉老半天也不知道它的意思,乾脆把CALL全部忽略掉,遇到跳轉就去修改一下試試,JL改JNL,JE改JNE,反正都說了7分靠運氣,高手破解,多半是把程序看懂了,就算看不懂,也大致有點了解,所謂暴利破解,沒有一點技術含量,說出去只有被同行恥笑。絕影自認爲不是高手,全憑猜測也無妨,三四百行彙編代碼,跳轉也就那麼幾十個,一個一個去改來看看還不行?所以窮舉法還是個很有意義的方法,至少對絕影來說很有意義。

說幸運總是垂青有準備的人,可是絕影一點準備也沒有幸運居然垂青了他。就在他把那個JZ XXXXXXXX改成JNZ XXXXXXXX後,PTV2000居然順利運行了。再試一次,又成功了,程序被斷下來,連G命令也沒下,趕緊手舞足蹈對燕兒說:“出來了出來了,破了!”喊完了,覺得不過癮,馬上給陳董打個手機,反而平靜地說:“陳董,那個PVT2000,破解出來了。”

這次是陳董興奮地喊道:“太好了!”

打完電話,記下那斷點位置,新建一個文本文檔:破解記錄.txt,在上面寫到:一、bpx messageboxa斷下後F12找到地址XXXXXXXX。二、重新運行PTV.exe在XXXXXXXX處下斷點,斷下後將JZ XXXXXXXX修改爲JNZ XXXXXXXX。

內存破解做完了,總得做個補丁,反正又沒加殼,就做個文件補丁,到看雪論壇上去下載個CodeFusion,小心翼翼地將XXXXXXXX處的JZ改成JNZ。再寫個Readme.txt,使用說明:將目錄中pvt.exe拷貝到安裝目錄替換原文件。

做完這些,絕影把所有東西用WinRar打個包,拷貝到U盤中,覺得這次便萬無一失了。



陳董收了絕影的U盤,笑得合不攏嘴,連聲說:“小絕阿,真是從來沒讓我們失望過。”

接下來,BOSS Liu當然開始忙着做那個函數繪圖,以他現在的技術,那東西根本難不到他不就是用GDI往DC上畫曲線嗎,MSDN上給你寫得清清楚楚,你要是菜得連英文也看不懂,就到百度google上去搜,現成的代碼多的是。

等BOSS Liu把東西做完,陳董交給了油田,滿以爲又有獎金可領,誰知人家裝上軟件就不能用急得陳董團團轉:“不是破解了麼?怎麼還是盜版的運行不了。”

絕影想了老半天說:“對了,剛裝上去,應該還是正版可以用,哪知道我把JZ換成了JNZ,反而變成了盜版。”

“那怎麼辦?”

“早知道當初應該直接改成JMP,要不我重新改一個給人家。”

“那不行,人家那邊領導正參觀呢。”

“要不這樣,你讓他現在先用原來的exe,等一個月時間到了變成盜版的了,再換成我的exe。”

“也只有這樣了。”



最後驗收通過,這個陳董所謂的“大CASE”的結果是絕影領了300元獎金,BOSS Liu領了100元。發了錢,陳董又去跑業務去了。



公司領導的分工很明確,陳董負責跑業務和石油項目,周總負責公司日常管理和醫療項目。早先周總就讓絕影優化KIPACS代碼準備跟他去安嶽出差,結果計劃被陳董的“大CASE”打破,沒辦法,就得乖乖等,等陳董的“大CASE”忙完,周總說:“小絕,PVT2000的工作到此爲止,先放一放,去安嶽的事情準備好了嗎。”

本來人都有這樣的心理:一個CASE做完不管多大多小,都想休息一下,其實做完CASE只是個藉口,就是想多休息一下。本來絕影也想懶散一下,但考慮到跟周總去出差又不用絞盡腦汁去想辦法貪污食宿費交通費還有100塊出差補助,加上PVT2000的獎金,這個月又能至少拿1900大洋,他還是對周總說:“沒問題,可以去了。”

跟周總去出差,是非常安逸的活,大事都有周總頂着,自己只需要幫他打打雜,在醫院安裝調試都比較順利,就是醫院要求標配的19寸CRT顯示器換成17寸液晶顯示器。其實這簡直是扯淡,稍有常識的人都知道,對醫學圖像的顯示,CRT顯示器效果遠遠好於液晶顯示器。但是稍有常識的人也都知道,對放射科的醫生來說,影像工作站也都是扯淡,他們拿電腦來幹啥?輔助診斷是小事,打遊戲看電影也許纔是正事。

周總一個電話打到公司,原本想讓BOSS Liu去跟電腦公司談一談換顯示器的事情,誰知道他竟然沒在公司,現在正是下午三點,公司的人說小劉下班了。s



回到公司,BOSS Liu還是好好的,周總說:“小劉阿,你昨天下午怎麼不在公司?”

“我有點事情。他們說可以下班了,我就先走了。”

聽他這麼說,周總來了火氣,大家不都好好在工作嗎?怎麼會說下班了,你小劉憑空污人清白,也太不厚道了。於是嚴肅地說:“小劉阿,對你的技術我們沒什麼好說的,但是你這樣做太沒紀律性了。公司無法滿足你這種自由的彈性工作制。我看你還是先回去反省一段時間吧。”

聽他這麼說,BOSS Liu大吃一驚,做得好好的,怎麼說走人就走人,充其量就是曠工半天嘛,頂天了扣我兩天工資。還說我不厚道,看來你周總才最不厚道。這麼想,他說:“嗯,我知道你的意思了。”

“那你什麼時候把寢室的鑰匙交給我?”

“明天吧。”

BOSS Liu出了辦公室,本來他借了絕影一本《數字圖像處理》,說好借兩週,現在他還給他,絕影很大方地說:“拿去看吧,看好了再還不遲。”

“不用了。我走了。”

“走了?不回來了?”

“嗯。”

聽他這麼說,絕影覺得他挺可憐的,等於是被周總炒了魷魚,周總也確實有點過分了。BOSS Liu平時也做得挺好,雖然老和自己鬥,但一是一二是二技術和項目上絕對沒有含糊的地方。

此刻BOSS Liu也覺得絕影挺可憐的,這麼大一個公司――陳董描繪得很大――本來就只有兩個人在寫程序,現在走一個,不是隻有他BOSS Jue一個人寫了,以前資本家對兩個人剩餘價值的榨取現在轉移到他一個人身上了,你說他多可憐。不過自己也覺得很鬱悶,第一次失業,還是被老闆炒魷魚。

回到寢室,BOSS Liu越想越不是滋味,立刻收拾好東西打個車到公司把鑰匙交給周總,回頭便走,周總忽然說:“小劉啊,以後如果你覺得自己不錯了,我們隨時歡迎你再回來。” BOSS Liu很想很生氣的回答說:不用了。但是想了想,還是留點後路以防萬一,所以還是假裝很平靜的回答:好的。



BOSS Liu離開了公司,絕影忽然覺得有點寂寞,晚上給燕兒打了個電話,沒等他開口,燕兒說:“有個事情,我想你幫我想想辦法?”

“大事?”
“嗯。”

《瘋狂的程序員》33

問個“大事?”本來是絕影的客套話,其實不管是誰只要說跟絕影講事情,他都去問個“大事?”一來表示自己已經作好準備聽,二來表示自己對這事已經有了足夠重視的準備,完全是出於禮貌。

自己客套起來,沒想到燕兒卻當真了。就像大家朋友幾個客套起來,不免誇獎你老婆幾句:“夫人真是漂亮阿。”你說:“哪里哪里。”本來也是句客套話,那人卻當真起來:“全身上下,哪裏都漂亮!”

絕影想一個女人家,在學校唸書還能有屁點大的事情,於是大大咧咧說:“有什麼事,儘管說,看看啥大事,還能難到我。”

“其實給你說也沒多大用,我自己的事情,估計你也幫不了我什麼。”

他這麼說絕影急了。男人阿,就怕別人說這個這個事情你做不了,這個這個事情你幫不了忙。自己明明是忙得焦頭爛額還要胸口拍得像大猩猩似的說:“有事您說話!”特別又是在自己女人面前,命可以不要,但臉不能丟,於是絕影忙說:“有啥事,說,我連PVT2000都能破解,看還有啥做不到的!”

“還不是找工作的事阿。這幾天寢室都在討論。我們英語專業的又不像你們出來好歹還算有個技術,找工作什麼的也要容易得多。”

“啥叫學的技術?我跟你講,我都是自己學的,想當年我天天在租的房子裏寫通宵程序,你又不理解,你忘了?現在大學,你以爲還像以前真能學到東西?”

“就算編程是你自學的,但你以前自己說過你還能做手機,管你是不是吹牛的,總之就是你們的專業比我們好。”

燕兒這麼說,絕影想起以前確實老跟她吹牛說自己能做手機。畢竟自己學的通信工程專業。別人問通信工程學些啥阿,絕影也說不上來什麼數電模電單片機DSP電磁波C語言樣樣都來,學到後是門門懂樣樣瘟,自己都不知道到底學的啥,更別說給別人說,於是只好說:“通信工程嘛,就是造手機的。”這麼說別人也倒容易理解。

但說到做手機,他心裏知道自己的分量,不要說手機了,就是朋友讓他幫忙焊個天線收衛星電視他都擺弄了半個月毫無進展,只好推說買不到材料做不出來。朋友問啥材料買不到,他也說不上來,依稀記得大一的時候教焊收音機,裏面有個材料叫“中周”,於是還像模像樣說買不到中周。可朋友說仍然死咬住不放說要什麼型號的中周我去城隍廟給你買過來。沒辦法,絕影只好說:“那型號的比較特殊,我去看了,四川可能還沒有賣的。誰叫你要收美國的臺!”

見燕兒提起自己丑事,絕影忙讓她打住,說:“那到也是,你們英語專業的就是惱火。你知道我英語爲什麼那麼菜嗎?關鍵是那玩藝實在太沒用了。你想你英語學得再好能比得上美國一個種田的農民嗎?你隨便到加拿大美國去看下,一個四五歲的小娃娃都哇啦哇啦滿嘴流利的英語。”

“那有什麼辦法?當初專業就是報的這個,如今都要畢業了,難道讓我重新去念個大學?好了好了,知道你能幹行了吧,你說我現在該怎麼辦呢?”

其實重新念個大學又有啥用,反正在大學念什麼專業也不一定能學到多少東西。你想想,英語那東西,不過一個工具耳,有啥不懂的,直接去網上在線翻譯一下,或者直接把金山詞霸打開就行,特別是那些單詞,明明字典上都有,還要一個一個去背,字典上有的東西爲啥還背呢?那不成了背字典了,傳出去還不被人恥笑。再說了,現在社會上不都流行裝麼?絕影正是利用了人們這樣的心裏,雖然自己英語菜一樣在大家面前講英語,反正他講的啥大家又多半聽不懂,聽不懂就越覺得他講的是高級英語。

“那你準備做哪方面的工作阿?”

“還沒考慮好,現在情況都不好,我們班好多同學簽了工作都是文員方面的,我也想先找個這方面的工作做着,先學點經驗。”

“文員說起來就複雜了,小公司打雜你肯定又不願意,大公司要的又是高級人員,人家英語動輒就是6級8級,還要求‘身量苗條,體格風騷’,多少多少年工作經驗。”

“就是阿,所以說找工作難阿。”

“要不這樣吧,反正你還暫時沒找到工作,我跟周總他們說,讓你先來我們公司實習着,還能有錢拿,這樣咱不就成了丁克家庭了。”

“要是能去你們公司就太好了,反正陳董周總他們也是加拿大回來的,說不定以後還有機會。親愛的,你真是太好了。”

“我又沒錢又沒權,再不對你好點,你能跟我?”

絕影給燕兒打完保票,又想起今天給燕兒打電話的目的,反而討論“大事”用了這麼長的時間,完全偏離了電話的主題。所以女人就是比較容易大驚小怪,不就是找工作麼?屁點大個事情,想當初自己同學還在參加招聘的時候咱就已經是面試人員去學校招聘人了,尿還能把活人憋死?工作還能把活人難死?關鍵是你剛畢業第一份工作應該報着什麼樣的態度?就是學點經驗長點見識用功一點學點實用的技術。怕就怕那些人一上來就是:公司有多大阿?有多少人阿?薪水多少阿?――更牛B一點的直接問年薪多少阿?――管吃管住嗎?保險買多少?

他失落地對燕兒說:“唉,今天BOSS Liu離開公司了,讓周總炒了魷魚。”

“所以你也是,不要以爲自己能寫點程序就多不得了,現在能寫程序的人多的是,你不來寫程序,有的是人排着隊來寫;你這個公司不去做這個項目,有的是公司排着隊來做。”

“那到不是。畢竟跟BOSS Liu一同進退,還是戰鬥了這麼久了。我阿,還是有點軍人情節……”

掛了電話,絕影又開始犯起愁來,該怎麼跟周總他們說燕兒工作的事情呢?



陳董又風塵僕僕地回到公司,雖然臉上依稀還有點倦意,但看得出來這次出去還是很成功的。走進公司,他第一件事是拍着絕影的肩說:“小絕阿,多幫幫周總。小劉走了,以後公司就靠你了。”

後來陳董又滔滔不絕講了老半天,講這次PVT2000現場客戶很滿意,講今年公司在石油方面保持了去年的發展勢頭,醫療方面也慢慢開始走上正軌,講BOSS Liu無視公司紀律擅自離開崗位,而且還是在周總出差的時候,情節特別惡劣。他講的絕影一也沒怎麼聽進去,一心想着燕兒託付的事情,本來想插話進去,想想還是算了,這個事情,還是在公司之外說比較好。

按慣例,每次陳董回來,總會和周總絕影一起用晚餐,公司其它員工是沒資格去的,不是沒資格,是陳董根本就不跟他們說。由此可見公司高層對絕影的重視程度,也正因爲這樣,絕影有時候也迷迷糊糊地真把己也當成了公司高層,一般人說:“我們公司,怎麼怎麼怎麼……”有點自豪的感覺。絕影說:“我公司,怎麼怎麼怎麼……”好像那公司就是他開的。

這次心裏有事,出門前絕影主動說:“陳董,今天就讓我來買單吧,以前總是你們請我吃飯,次數太多了,我自己都不好意思,以前嘛還在公司實習,現在也轉正了工資也不低,這麼久一來你們對我特別關照,請你們吃頓飯也是情理之中的事情。”

陳董哪裏知道絕影心中的算盤,滿口誇絕影成長了阿,懂事了阿。

吃飯的時候,絕影極力勸兩位老總喝點酒,說一年下來做幾個CASE也不容易,好歹大家辛辛苦苦一年下來還是有了一點小小的收穫,陳董回來一趟又不容易,是時候稍微放鬆一下。

喝了點酒,陳董來了興致,又開始給絕影描述公司未來的宏圖大業,說公司要發展,要壯大,要招人,要不斷補充新鮮血液。講到這,絕影不失時機地插入燕兒工作的話題,生怕陳董一口拒絕自己的臉可就丟大了。

沒想到陳董反而大方地說:“小絕阿,你是公司的重要員工,你的問題,當然就是我和周總的問題,這事情別說你跟我說了,就是你不說,我倒要主動要請小龔到公司裏來。讓你們小倆口在一起工作,方便。回頭咱們就來詳細落實一下她來公司的事情。小絕阿,你不要覺得我今天喝多了,話有點多,我跟你講,我確實有點醉了。”

聽他這麼說,絕影心裏的一塊石頭算是落地了,又後悔起來:早知道這事情他會主動安排,豬才花這麼多錢請領導吃飯還喝這麼好的酒,按照BOSS Liu的觀點,自己這個成本覈算做得實在是太失敗了。

其實地球人都知道,喝醉了的人往往說自己沒醉,反而沒醉的人卻一個勁說自己醉了不能喝了。陳董心裏打的算盤絕影根本不知道。正如他所說,公司要發展壯大,不做CASE壯大個屁,沒人寫程序做個屁的CASE,這樣推理下來,加上BOSS Liu又離開了公司,兩人的關係領導還是心知肚明,要是絕影也跟他跑了,這公司還搞個屁,總不能讓燕兒來公司寫程序。

所以資本家確實有值得我們學習的地方:一、可以招個文員進來,應付公司打雜的瑣情;二、本科剛畢業,工資不用開很高;三、可以和絕影安排在一個宿舍,節省了公司開銷;四、最關鍵的,還讓絕影覺得自己像欠了他好大一個人請,以後就得巴心巴幹跟着他幹。此乃三十六計中借刀殺人的最高境界――借了別人刀,把別人殺了,還讓別人掉下的頭給自己說聲:謝謝。



回到宿舍,絕影馬上給燕兒打了個電話,平靜地告訴她她託付的事情已經順利解決,燕兒在電話那頭激動萬分,與絕影的平靜形成鮮明對比。

絕影剛放下電話,“電蛐蛐”又叫了起來,到現在,那“電蛐蛐”由於超期服役再加上年久失修,聲音聽起來已經沒有原來那樣清脆。

電話是BOSS Liu打來的,絕影拿起電話說:“我正要給你打電話呢。”

“哪里哪里,還勞煩BOSS親自給我打電話。我這次是專程來給BOSS彙報工作的。”

“少來擡扛了,最近這麼樣阿?工作落實了嗎?”

“BOSS你也是明白人,你曉得,幹咱們這行的,混了點經驗了,哪裏有你去落實工作的,都是工作來落實你。此地不留爺,自有留爺處,啥簡歷阿,學歷阿,都是瞎扯淡的,你直接把你寫了幾年程序,做了些啥CASE寫進去,別人不招你纔怪,哪像那些大學生,什麼‘熟練Office辦公軟件’都還寫到簡歷裏去。”

“哦,哦。你對,你有道理。新工作不錯吧。”

“工作要是不行,我咋好意思給BOSS彙報呢?我現在到成都了,這邊公司給海事局搞船舶GPS,有幾個人貌似還很牛,搞過神舟五號的,正兒八經是放衛星的。”

“還神舟五號呢,給我一個億,我給你搞個神舟十號!”

“BOSS,我給你說正經的,你要不要過來我們公司,待遇比周總那邊好多了,管吃管住3K,以後還能漲。老總問我有沒有什麼人纔可以推薦,我首先就想到你。”

聽他這麼說,絕影有點心動,覺得多感動,畢竟自己還是挺惦記BOSS Liu,難得BOSS Liu也有惦記自己這份心,兩人在一起時間雖然不長,但相處還很好,至少不像某些公司裏面爲了那麼幾百千把塊錢的獎金去費盡心機勾心鬥角。那管吃管住3K對他來說也是極的誘惑,3K阿,自己在公司拼了老命最多一個月纔拿到2K。

再說了, BOSS Liu說:寫程序,不是一個人的運動。可自己現在在公司就比如一個人踢足球,踢不贏別人不說自己踢着還很沒勁。踢足球還得找好球隊,隊員水平不用說,至少要能默契能打點配合,自己水平要是高點,起碼也得去個英超意甲,你要是在國內踢超級聯賽,幾年下來自己一身好武功反而都給廢了。

想到這,絕影熱血澎湃對BOSS Liu說:“BOSS這次可要感謝你的關照了,回頭我想辦法給周總他們說一聲,那邊就麻煩你幫忙關照一下。”

“那是肯定的嘿嘿,我在老總面前都把你吹上天了,老總現在就怕你不來,說工資的事情還可以商量。”



放下電話,絕影在牀上翻來覆去一夜沒睡,第二天一早打個電話給BOSS Liu說:“我想了一夜,還是不來你們公司了。”

《瘋狂的程序員》34
BOSS Liu吃了一驚,問:“昨天不是說得好好的嗎?今天怎麼又不來了?”

“我考慮了一下,我剛讓陳董幫忙把燕兒工作落實了,馬上就走人,實在太不人道了,傳出去肯定會被人笑。”

“BOSS不對阿,這不是你的作風阿。你想就算陳董把你老婆弄到他公司去,充其量就千兒八百一個月,你自己還受制於人,你老婆還要受人鄙視。你現在直接跳槽過來,兩邊工資的差價早就彌補了你老婆工資上的損失。”

“算了。特別是現在你走了,你也知道公司能寫程序的就剩下我一個人,我不是那種人。這個事情以後就不要再提了。讓周總他們知道不好。”

“BOSS你這不是把我整慘了阿。昨天晚上聽你說要去,我馬上又給老總打了個電話,老總又把我誇獎一翻。你看我都把你吹到天上去了。你要是過來,前途肯定是大大的,退比你現在待遇好,進還可以謀求更大的發展。你現在又說不來了,讓我怎麼去向上頭交待?”

“我曉得我曉得,這次我是把你整慘了,下次你整回來。我這次是真的走不掉了,都是人家的人了。BOSS,前途還是留着你自己用,好好把握吧。這次實在對不起了。”

“算了。怪就怪我吹牛吹早了。唉,BOSS你要記住教訓,吹牛害死人吶。”

放下電話,絕影暗自得意,那千把塊錢工資差價算個啥?公司沒人寫程序算個啥?幫燕兒落實工作這個人情算個啥,關鍵是你BOSS Liu比我先去那公司,那你就是我前輩,永遠都是我前輩,永遠都可以壓着我。給我升職,你就得先升職,給我加薪,你就得新加薪。就像搞傳銷一樣,管我做到一個月三五十萬,只要你是我上線,你賺錢就比我多。賺錢都是小事,關鍵是我絕影不能在別人下面做事,特別是在一個技術不比自己高的人下面做事,寧做雞頭,不做鳳尾。



來到公司,陳董和周總早就坐在辦公室裏,看看BOSS Liu走後空下的位置,絕影不免有些自責,想起BOSS Liu平時待自己也不薄,昨天晚上一時欠考慮答應了他估計現在他正想辦法給領導交待。他那位置本來就有點背,但是過不了多久還是會有人來坐,正如燕兒說的:“這程序你不去寫,有的是人來寫;這項目你公司不坐,有的是公司來做。”進來資本家的公司,你就永遠不要指望自己能把這個位置坐穩了。

本來最近公司裏也沒啥事好做,絕影發了半個小時呆,陳董忽然叫他進辦公室。辦公室裏除了陳董和周總,還有一個女人,四十歲上下,個子很矮,小時候絕影媽媽說:“矮子多做怪。”所以絕影一直對矮個子特別有成見。陳董用地道的北京腔介紹道:“小絕阿,這是公司新來的會計,侯老師。”

出於禮貌,絕影還是和她握握手,心想不就是一個會計嗎,還老師老師的,說我一個軟件設計師,拿出去至少也是個中級職稱――工程師,稱呼我一句絕影老師尤不失下曹從事,那會計,頂天了一個註冊會計師,還能有多大能耐?會計還能下蛋?還能教出一大羣會計?

侯老師卻對着絕影做了一個很專業的微笑,說:“你好你好,以後工作上還請多關照。”絕影聽了,反而茫然不知所措。

兩人寒暄一陣,拉拉扯扯說了些無關緊要的話,沒話找話,絕影感覺非常痛苦,侯老師同樣感覺非常痛苦,只是陳董在一旁不斷說:“嗯,對,工作上的事情,你們倆多聊聊,多溝通溝通。”他這麼說,絕影就想抽他,你想作爲一個程序員,跟一個連C語言是哪國語言都不知道的人在一起聊工作,還能能聊出個什麼?

平時周總催項目像催命似的,總說:“小絕阿,加緊點阿,前緊後鬆前緊後鬆。”其實他自己最知道,哪裏有前緊後鬆的,前面你要是緊了,後面多出的時間還得幹其它的,就是前緊後也緊。有了經驗,你就知道該怎麼做,要麼前鬆後緊,要麼前鬆後也鬆,休息完全是自找的,你永遠不要指望資本家會主動對你說:“小絕阿,工作挺累的,多休息休息,今天就別上班了,玩遊戲吧。”今天陳董放了大把大把時間讓絕影和會計聊天,周總竟然像沒看見,坐在那裏居然一直一言不發。

等陳董覺得差不多了,這才緩緩地說:“小絕阿,今天讓你進來,公司還要個重要決定要跟你宣佈,你到公司這麼久了,做出的成績我和周總也一直看在眼裏,經過我們董事會研究,決定從下個月開始給你加薪300,希望你繼續努力,只要你努力,我們就會看在眼裏的。另外,加薪這個事情,暫時只針對你,先不要跟別人說。”

本來陳董期待着這個消息能給絕影帶來一點震撼效果,沒想到絕影並不買賬,只是平靜地回了一句:“嗯,我知道了。我會繼續努力的。”

其實不就是加薪300嗎?屁點大個事情還“董事會研究決定”。就算是“董事會研究決定”吧,那董事會還不就你和周總兩個人開的,又想到上次陳董說的芝麻大個大CASE,氣不打一處來,最煩的就是他這種拿雞毛當令箭的脾氣。再說了,BOSS Liu也離開了公司,本來以前可以兩個人做的工作現在全得我一個人來做,你要加薪,也得把以前BOSS Liu那份全部算到我頭上,至少也要算二分之一吧,搞到現在才加薪300,這買賣還不是公司賺了。

所以資本主義從尼德蘭革命發展到現在已經是相當成熟了,資本家對工人的剝削是越來越隱蔽,表面上看起來你還佔了便宜,其實更大的便宜早讓他們賺去了,壞就壞在大部分人根本就不知道,要不物產階級早就在世界範圍內把資產階級打垮了。

辦公室裏沉默了一陣,周總覺得氣氛有點不對頭,才擡起頭來說:“小絕阿,成都那邊還有個公司也要裝個KIPACS,就在近期過去。你看看還有什麼補充的工作要做沒有,沒有的話就把東西裝備一下,特別要注意一些細節方面的,雖然這次CASE比較小,但有另外幾家醫院來參觀,面子工程,對推廣我們公司的產品還是很重要的。陳董也和我們一起過去。”

絕影接到了命令,想終於可以脫離跟會計聊天的苦海了,忙說:“好,好,沒事我先出去準備了。”



KIPACS的安裝絕影已經重複了很多次,這次的CASE是輕車熟路,加上陳董添油加醋對軟件功能的描述,其他幾個醫院對KIPACS是佩服得五體投地,當即表示了購買意向。回到賓館,陳董拍着絕影的肩說:“小絕阿,看到了吧,做產品不僅僅需要技術。做成功的產品更不僅僅只需要技術。”

絕影若有所思地點點頭,他深刻的體會到,這個KIPACS到後期基本全由他一個人負責,這裏面有些什麼技術含量他最清楚,可最後KIPACS安裝出去,或者給別人演示,別人在對它讚歎的時候有幾個人會想到陳董背後的這個小夥子?

看到絕影的認同,陳董又來了勁,說:“反正都來了成都,我也很久沒來了,這邊我還有個很好的朋友鍾工,以前在GE工作,想約出來見個面聊幾句,絕影你也和我們一塊去吧,你們都是年輕人,聊得來。”

絕影本想拒絕,想自己一個搞技術的,從學校出來就呆在公司,每天就和電腦、代碼、BOSS Liu、周總打交道,說實話有點怕生,再想起那天和會計無聊的談話,心中又恐怖起來。但是陳董又盛情難卻,畢竟他還是董事長,就算犧牲一下自己,滿足他的虛榮心,於是勉強應承下來。

幾個人約在一家茶館見面,成都街上什麼最多?就美女和茶館最多。工作、談生意、吹牛、打牌、泡妞這些事情都可以放在茶館進行,當然,爲了適應不同的需要,茶館也就有些變種,有些偏重打牌,於是機麻一套一套的,反而茶水成了次要。有些偏重泡妞,便一間一間隔開,點上個蠟燭,弄得不倫不類。有些偏重工作,於是小吃阿無線網絡應有盡有。有些偏重談生意,於是加上西餐阿工夫茶之類的中西結合。

鍾工和他一個朋友一起來,初看上去,絕影並不覺得他有多麼年輕神奇,怎麼會被陳董如此推崇。整個聊天過程果然如絕影所預料,除了剛見面的互相介紹,絕影就只能一個人坐在那吃牛肉乾喝茶,算是真正的喝茶。陳董跟鍾工談得滔滔不絕,從鍾工的辭職談到GE公司的現狀,談到現在醫療設備的利潤、市場和售後服務,根本沒有想過要扯點話題給絕影一點發揮的餘地。這些問題他都不大關心,自己是個寫程序的,用BOSS Liu的話說,寫程序的,走到哪裏都是寫程序,走到哪裏寫到哪裏。如今在公司做醫療,說不定明天就出去做GPS,做遊戲。

兩個小時終於熬了過去,天已經全黑了。鍾工站起來說:“走吧,我送你們。”絕影跟着他們走在最後,幾個人上了鍾工的車。

這是輛黑色的本田車,因爲前面有個大大的“H”,說成“本田”是他的習慣。如果是周總,他會說“Honda”,他是從加拿大回來的。如果是陳董,他會說“ホンダ”,他是從日本回來的。

絕影事先並不知道鍾工有車,現在來看,他的確很年輕,大部分男人在他這樣的年紀還正做着車房的夢想。

成都的繞城高速修得很好,車跑在上面異常平靜平穩,打開前照燈,車裏的儀表都亮起來,打開天窗,涼風從車頂嗖嗖地灌進車。絕影望着窗外,想起初中的一個大年初一和朋友一起出去玩,到凌晨兩點大街上一輛車也沒有,幾個人唱着歌,大模大樣地像汽車一樣走在馬路正中間,從火鍋店走到家,這是他第一次走馬路的正中間,馬路真的很寬敞平坦。他想像着,自己什麼時候能駕着車,正兒八經地從馬路中間走過,應該駕駛一輛什麼車從這條路成都繞城高速上駛過。現在說什麼談戀愛散步就“壓馬路”,如果真的能夠壓着馬路談戀愛,是一件多麼幸福的事情。



回到公司,陳董問:“怎麼樣,覺得鍾工怎麼樣?”

“聽你們談話,覺得他真是個不錯的人。我喜歡他那輛車。”

“一輛本田車算什麼?現這樣的車在路上多的是。”

“那是不算什麼,但如果是自己的,一輛就夠了。陳董,那車多少錢呢?”

“也就二十多萬吧。不值錢。”

“嗯。就算二十萬也很了不起了。”

“是阿,他本來在GE工作,也算很不錯了,後來硬是辭職自己來做,做醫療器械的維修。我們這兒好幾家醫院的維護都是他在做。一年四季到處跑,還是很辛苦,很不容易阿。”陳董說完頓了頓,彷彿又回憶起自己當年的辛苦和不容易,過了一會,才又說:“小絕阿,知道這次爲什麼讓你和我們一起去見鍾工嗎?”

“不知道。”

“我想了很久,很多事情終歸還是要你們年輕人去做。我是老了,以後很多事情都不可能親力親爲,這次有個事,我想讓你獨自去做。”



《瘋狂的程序員》35
本來絕影就對陳董說的話不抱什麼太大的希望,感覺他總是誇誇其談,而且會把芝麻小個事情描述得西瓜那麼大,所謂希望越大失望越大,久而久之絕影便學會了:若要不失望,就不要抱希望。

陳董還不知道絕影竟然是這樣想的,他要是知道了,還不把他氣死,人都是這樣,你跟別人說什麼,特別是你自己覺得很有意義很重大的事情,總希望別人也認爲這事很有意義很重大。很多領導講話,講到自認爲重點的地方,總是習慣停下來,留幾秒鐘等待掌聲。如果該到掌聲沒有掌聲,次數多了自己也就覺得沒有意思,或者認爲下面聽講的人層次太低,還沒領會到講話的精神。所以一般領導的祕書深喑此道,總是在講稿某段話後面打個括號標註:此處可能有掌聲,略微停頓二三秒。

他呷了口茶,緩緩地說:“公司必須要發展,市場規律如此,逆水行舟,不進則退。現在正是公司非常緊迫的時候,我們還需要大量的程序員。項目我來拿,如果拿不到項目,小絕你們可以罵我。但我拿到項目了也要人做,你一個人是遠遠不夠的。所以我們還要招人,還要大量招人。我和周總商量了,小絕你在公司呆了這麼久,技術上我們覺得你沒有任何問題,而且希望你以後能在技術上負起主要責任。所以我想這次讓你來獨自負責一次招聘的事情,我和周總都還有自己的事情,很難兼顧,希望你能把它做好。”

陳董說完,絕影心中一驚,他萬萬沒想到陳董會把這個事情交給他單獨來辦。在他心中,陳董辦事一向相當謹慎,凡是稍微關乎公司的事情他和周總一定親力親爲,正因爲這樣,很多時候他覺得他們反而不像老闆,一個老闆,居然自己親自計算員工的工資並且親自發到員工手上,那也太沒有老闆的氣質了。

一個女人,如果在一羣男人面前不拘小節,那說明她爲人放蕩邋遢,但是如果她只在一個男人面前不拘小節,那隻能說明她對這個男人完全信任,換句話說:在她心裏,她就是他的人了。在公司也一樣,如果領導把一些重要的事情交給員工去做,那說明這個公司管理制度太不健全,領導太粗糙,但是如果領導把一些重要的事情只交給一個員工去做,那隻能說明領導對這個員工是完全信任。

絕影明白這個道理,所以他心中一陣暗喜。寫程序算什麼?說實話,在公司寫的程序能有多難?如果真的要說難,那只是說給用戶聽的,程序員心中自己知道有幾斤幾兩。公司的程序需要多高的技術水平?不需要,也就是說,只要給他足夠的時間,公司程序上的問題他都是有把握解決的。

但是不光是程序員,對所有員工來說,在一個公司應該怎樣發展,這本身就是一個問題。從到公司的第一天,絕影就告訴自己不能在公司寫一輩子程序,至少不能在公司一輩子只寫程序,技術總是要進步的,新人總會出來取代舊人。你要保持自己的技術不落後不被淘汰,你就得不斷地和新人競爭,不斷地去學習,新人們剛畢業,對他們來說除了工作的時間都可以拿來學習,但是老一輩不一樣,你要結婚,有老婆有家有孩子,客觀因素決定你不可能有他們那麼多時間。

想起BOSS Liu熱衷於中國象棋,而絕影自己更喜歡國際象棋,這兩種棋本身就體現了中西方文化差異。中國象棋和國際象棋最大的兩點區別是:中國象棋中老王永遠都只在自己的城中,運籌於帷幄,國際象棋殘局中,老王反而是戰鬥的主力;中國象棋中兵永遠是兵,從你一生下來就是兵,等你拱到對方的底線,你就失去了你所有的價值,國際象棋中,只要兵能夠成功衝到對方底線,甚至就可以變成後,正是拿破崙說的:不想當元帥的兵不是好兵。

陳董說完,大家沉默了幾秒,絕影平靜地說:“沒問題,我會好好去落實的。”

聽他這麼說,陳董點點頭,說:“既然讓你去做,就要給你權利,我和周總商量了,先讓你做技術主管,之後凡是新招聘進來的程序員,都由你負責,包括現在的小張,呆會我會把這個事情告訴他。”

聽到這個決定,絕影心中異常興奮,好幾年之後,絕影和BOSS Liu混成了老油條,總有以前的小弟打電話來報告他們:“影哥,劉哥,我現在在公司升職了,做了XXXX。”他們總會馬上問:“加薪了嗎?”

“沒加。”

“沒加說個P啊。這個世界,薪水纔是王道,那個什麼什麼職位公司多的是,只要老闆高興,今天給你一個明天給你一個,甚至隨便一個跑銷售的推銷員,名片上都印的‘業務經理’。小夥子啊,你還高興呢!太沒經驗了啊!”

不過當時畢竟還是絕影第一次升職,所以他還是像小弟一樣高興得不亦樂乎。出了辦公室,他馬上給燕兒打了個電話。

原以爲燕兒也會爲他高興,沒料到燕兒也只是很平靜似乎不經意地問了句:“加薪了嗎?”

一句話又說到絕影的硬傷,他只好支支吾吾地說:“薪水嘛,按理應該是在年底才加薪的。今年應該會加吧。”

“我馬上就放假了,可以來公司工作了。還不知道陳董他們給我開多少工資呢。”

“回頭我幫你問下,他們的意思是你現在還沒畢業,所以是實習,估計和我當初實習差不多。”

“那他們也太扣了,現在隨便出去問哪家公司,250塊錢的工資人家都拿不出手,虧他們還說得像模像樣的。”

“算了,反正抱着混點經驗的態度去嘛。”

燕兒的表現和他預料的不一樣,這讓絕影非常失望。



暑假的第二天,燕兒便來公司正式報道。陳董說:“現在公司條件好了,250塊錢的實習補助就不再實行了,以後一律漲到300。”

燕兒的工作不難,但是雜,雜到除了寫程序和老總們必須親自做的工作,其他的都需要燕兒去做。又是打掃衛生又是接待訪客又是寫材料又是跑國稅地稅又是做彙報。要是換到現在,員工們的辦法多得很。工作多,工作雜,工資低是不是?工資低我們就聯合起來集體搞罷工,你公司就兩個老總總不可能事無鉅細都去處理,更不要指望能讓下面這幫搞技術的人去給你報稅――他們連去國稅局坐幾路車都不知道。你說不加薪是不是?不加薪我就跳槽,反正我啥事都在做,對你公司是知根知底,我一跳跳到其他公司,你公司不養我我就做你競爭對手,看我一招一招盡往你軟肋上打。

可是那個時候人就是老實啊,人善被人欺,燕兒自己一天到晚累得要死也只能回家跟絕影發發牢騷,兩個人對着空氣把老總罵得狗血淋頭,第二天還是得把鬧鐘調到七點半按時去上班。

周總讓燕兒把公司招聘廣告擬好發到學校社區上去,效果還真不錯,第一天絕影就收了十幾封簡歷。簡歷看多了,絕影也看出一點門道:你說公司招VC++程序員,再怎麼簡歷上也應該出現VC++啊,MFC啊,SDK啊之類的,要是連這幾個關鍵字都沒出現,那多半基礎太差,也就是尚停留在TurboC的基礎上,這樣的人你就不要對他抱多大期望,招聘這個事情,對周總他們來說沒什麼大不了的,對絕影來說可就大了,招進來的人總要能夠幫自己分擔一部分工作,要是真招上幾個抱這“學習”目的進公司的人,自己不但工作上要累,教他們更要累。所以家庭聯產承包責任制就是好啊,凡事都要跟自己的利益掛上鉤,做起來才積極纔有效率才能嚴格把關才能做得好。

幾天下來,絕影精心篩選了七八個簡歷,讓燕兒一一打電話通知他們來公司面試,本來應聘的都是大學生,外地的多,再加上公司的位置又確實不好找,燕兒一次一次不厭其煩地跟他們講從學校出來坐幾路車,做到哪里哪里哪一站又轉幾路車,到終點又怎麼怎麼走。畢竟是面試的學生,大家態度都比較好,只是一個牛人竟然直接問:“自己開車怎麼走?”問得燕兒竟一時語塞不知如何回答。

大學生們陸陸續續來到公司,絕影按照事先的計劃一一問了他們一些問題。這和很多大公司面試不一樣,大公司面試大多是專業人事人員,出的題都比較有水平,但正因爲他們是專業人事人員,招技術人員就是外行面試內行,結果往往是把那些有面試經驗技術一般的人招進了公司卻錯過了真正的技術高手。絕影和他們不一樣,他不會出什麼題,乾脆就出些跟技術本身相關的題,他說他懂Platform SDK,就問他取窗口標題用什麼函數,要是這個問題都答不出來,再簡單一點,GetWindowText函數有什麼作用,要是連這都不知道,那就直接讓他走人。

兩個小時的面試下來,七八個人中竟然只剩下三個,再上機做到鏈表的程序填空踢,居然又淘汰兩個。也不知道這羣學生是抱着什麼態度來參加面試的。其實對他們來說也很簡單,大學還沒畢業,你要說在學校學到什麼,其實也沒學什麼,就算學到了,真正又有幾家公司能對上口?反正現在招聘信息也是滿天飛,於是便廣泛撒網重點培養,管他會不會,去面試了再說,如果面試不上,再等另外一家,如果上了,再進公司去學,其實自己本來是不會的,進去學了,便也就會了。

這次招聘的結果還是讓絕影感覺到BOSS Liu的離開對公司來說是個很大的損失,這羣大學生的水平和BOSS Liu的水平比起來差遠了。什麼真本事沒有,回答起面試問題來卻頭頭是道。遇到答不上來的問題便顧左右而言他,打起哈哈;運氣好一個問題正中下懷便添油加醋東拉西扯借題發揮。

那剩下的一個人叫小王,絕影對他印象也相當不錯,如果他自己說的水平屬實,絕影覺得他應該可以培養成第二個BOSS Liu。他自己說他對MFC相當熟悉,幾個簡單的問題也馬馬虎虎回答了上來,好像確實還懂MFC,想起自己剛進公司對MFC一竅不通,後來還不是到了這個水平。絕影便給他一週時間,還是讓他做個讀寫註冊表的Demo,想當年自己也是靠這個讀寫註冊表的Demo取得公司信任,終於一步一步做到技術主管這個位置。

本來絕影還是對下面的人非常信任,既然你自己接任務的時候胸口拍得比大猩猩還響,那你肯定表示你有把握,既然你自己有把握,我就應該讓你自己充分去發揮。周總卻不這樣認爲,他總趁沒人的時候對絕影說:“小王啊,任務佈置下去你還是要盯緊點,不能讓他閒着。”

一週下來,絕影想那Demo應該也做得差不多了,但小王也沒來彙報,便忍不住問:“小王啊,讀寫註冊表的做出來了嗎?”

“還沒有。快了。”

“一週了,還沒做出來,遇到什麼問題了嗎?”

“是有點問題……”

“那讓我看看。”

絕影走過去,小王極不情願地把他建立的工程打開,工程還是做得像模像樣,小王在旁邊說:“就是不知道怎麼回事,編譯不過。”

絕影編譯一下,VC6的Output窗口顯示:error C2065: ‘Cstring’ : undeclared identifier。就這麼一個錯誤,雙擊上去看,那一行的代碼是:Cstring str;。

很顯然是把“CString”寫成了“Cstring”。絕影氣不打一處來,指着上面問:“‘Cstring’是什麼?”

小王戰戰兢兢地回答:“字符串處理類。”

“MFC中字符串處理類是這個嗎?”

小王用手摸着頭,看着絕影,似懂非懂地搖搖頭。

“我再問你,MFC中字符串處理類是什麼?”

再搖搖頭。

絕影起身,走進周總辦公室,周總問:“怎麼樣?”

絕影搖搖頭:“不行。”

“你讓他進來。”



周總再讓絕影進辦公室的時候,對他說:“小王的工資我已經跟他結算了。你送他出去一下吧。”

絕影把小王送到電梯,所:“回去再好好學習一下吧,你覺得可以了,再跟我聯繫。”

小王很尷尬的點點頭。

回到公司,絕影忽然感覺很失落,想起小王說的自己對MFC很精通,更有一種被騙的感覺。他對燕兒說:“周總讓小王回去了。”

燕兒擡起頭說:“周總也真是,應該等到下班,大家一起走。”
正說着,周總走出辦公室向大家招招手,說:“大家先把手頭工作放一放,進來開個會。”

《瘋狂的程序員》36
一干人各自收拾了自己的東西來到周總辦公室,燕兒還沒在公司開過會,特別謹慎,專門備了筆記本和筆。

周總的桌子上亂糟糟地擺滿了資料,菸灰被風從菸缸裏吹出來飄得滿地都是。他聳聳鼻子慢吞吞地說:“半年下來,我們到好幾家醫院做了CASE,總體情況還不錯,客戶對我們的印象很好。現在看來時機算是成熟了,我們不能總搞KIPACS這樣的小CASE,沒多少技術含量,總是被動挨打。小絕,小張,這段時間,你們也積累了一些技術,按照陳董的長遠發展方針,是時候搞點自主知識產權的大東西了。你們意見如何呢?”

不等燕兒和張廠長反應過來,絕影搶先說道:“嗯。我覺得周總您這個決定十分正確。現在KIPACS做得多了,的確感覺這裏面沒多少技術含量,而且產品單一,公司畢竟是要發展的,總這這個東西也不是辦法。”

絕影搶着說,是因爲周總說的一直以來也是他心中的想法。現在隨便一個七八歲的小孩,問他長大了要幹啥,他都說:“要做大公司,做什麼都不重要,但一定要大,大魚吃小魚,小魚吃蝦米。”絕影沒周總那麼高瞻遠矚,在他來看,KIPACS已經開發得差不多,老是把代碼搞來搞去小修小改,或者把if/else換成“?”運算符實在提不起他寫程序的興趣。程序員,一定要做大程序,做什麼都不重要,但一定要大,寫了幾年程序,別人問你做了些什麼,你要說就做翻來覆去改了幾年KIPACS,自己都不好意思。

周總點點頭,說:“小絕說得很對。咱們公司的目標就是以PACS作爲發展方向,但嚴格的說KIPACS並不是真正的PACS。下一步我想做的就是自己真正的PACS。之前由於公司的發展方向還沒確定,這個事情也就一直沒提上來,半年項目做下來,公司算是解決了溫飽問題,也暫時閒下來,現在我們就要看長遠一點了。小絕,你覺得現在來做PACS怎麼樣?”

絕影猶豫地點點頭說:“行到是行,不過到目前爲止,我對PACS還一竅不通啊。”

“這個不要你操心,PACS我和陳董之前已經搞過好多年,對這個基本上有所瞭解,這段時間我又調研了一下,蒐集了很多資料。讓你做,我當然會把一些東西教給你。”

“那應該沒問題。只要您佈置下來。”

“好,我先說說我的想法。PACS是基於DICOM標準的,現在要我們自己實現對DICOM的支持是不可能的。絕影你以前做過畢業設計,DICOM標準你可能大概看了一下,那東西太複雜,讓專家們去搞吧。以我們的實際情況,我們應該儘可能利用現有資源。有個DCMTK的開發包提供了對DICOM標準的支持,但這個開發包我看了一下也比較複雜,主要是C風格,未來的開發方向現在還無法精確的預期,但我認爲我們至少要有個自己的開發平臺提供對DICOM的支持,所以我建議我們在這個開發包上先做點工作,我們就可以直接在這個基礎上做DICOM圖像處理方面的應用,當然,以後我們可能會擴展到DICOM傳輸、歸檔、打印、成像這些方面,但圖像處理要最先做,可以直接先用到KIPACS中。現在KIPACS中圖像處理並不是基於DICOM,太不專業了。你們明白我的意思嗎?”

周總滔滔不絕講了半天,聽得張廠長和燕兒找不着東南西北。他們能明白什麼?這時候,也只有絕影若有所思地點點頭。

見絕影點頭,周總釋然地收:“好,好。小絕啊,這個CASE是個長期項目,就像炒股一樣,我們這次是長線,事實證明,股市裏面賺錢的總是長線操作的人啊。現在你既然已經是技術主管了,這個項目就由你去負責。DCMTK我已經放到共享裏面,你先去看一看,有什麼不明白的就來問我,還需要些什麼支持直接跟我講,我會儘可能提供條件。你先去把計劃做出來,覺得準備得差不多了可以開工了,就告訴我。”

絕影堅定地點點頭,彷彿終於接到了維護世界和平的大任務。



出了辦公室,張廠長對絕影說:“周總等於是跟你一個人開會。我還是去忙我的了。”

燕兒謹慎的神情從開會一直持續到現在,絕影走過去,問:“怎麼樣?記了些什麼?”

“什麼也沒記。”

公司裏就絕影一個人心情激動,熱血澎湃,什麼DCMTK他也顧不上去看,反正遲早都會去看的,現在要緊的是先把計劃做出來,CASE先上線,其它的問題是車到山前必有路,到時候再想辦法解決。

其實周總開會時一邊講,絕影就在一邊想,他那個思想,絕影很容易理解,畢竟以前搞KmdKit的時候接觸過一些驅動方面的開發。那驅動也是分這樣層那樣層,上層通過調用下層提供的接口來實現某些功能。這辦法就是好,只要好好把下面這層寫好了,就不用變了,以後要用,直接在這個基礎上往上開發,改一改,實現這個功能,再改一改,又實現那個功能,要是像以前DOS時代那樣每個品牌的打印機都去設計一套直接操作硬件的驅動,那還不把程序員累死。

花了半天的時間,絕影終於在Word上把自己想的層次圖畫好,他迫不及待地拿給周總,說:“周總,我計劃好了,你說的是不是分層設計的思想?我的想法是我們把系統分層三層,最上層是應用程序,包括圖像處理啊、歸檔啊這些,中間一層就是我們要開發的,針對不同的應用,分成不同的模塊,比如管圖像處理的,管歸檔的,最下面一層就是DCMTK。現在我們要做的,就是開發中間這一層。”怕周總不明白,他又在黑板上邊講邊畫,講到重點,便在上面標記一下,或者打上箭頭,不一會,畫的層次圖便被他塗改得面目全非。

周總一邊思考一邊點點頭:“很好,很好。這就是我的想法。你說的中間這一層上很重要的,首先直接用DCMTK開發應用太煩瑣,如果我們有中間層支持,再按照你的思想分成模塊,那以後開發應用就如同搭積木一般簡單了。你的想法很好,我完全同意。”

聽到周總的表揚,絕影更來了勁:“我想就想API或者驅動一樣,我們這一層設計好統一的接口,把它寫好,以後就不用改了,要什麼功能我們直接調用就好了,應用程序的開發繞過了DCMTK,要方便得多,直觀得多。”

“嗯。沒問題。你覺得行就準備開始幹吧!”

“那這個CASE叫什麼名字呢?”

“就叫DAP吧,之前就想好了,DICOM Application Platform,DICOM應用平臺。所以這是個平臺性的項目,長期的項目啊。現在你說到分模塊設計的思想,我想根據DICOM的內容,我們初步分一下,至少要有圖像處理模塊、傳輸模塊、查詢模塊、歸檔和打印模塊。現在想到的就這麼多。先做圖像處理的部分,我看這個模塊就叫DcmImage吧。小絕啊,你要盡力去做,還有什麼問題嗎?儘管提出來。”

聽周總說DICOM Application Platform,絕影覺得有點好笑,現在啥東西管他芝麻綠豆大都愛冠個Platform的大名,QQ裏面的TXPlatform就是證明。大概就是受微軟Platform SDK這個名字的影響吧。雖然現在說菜鳥崇拜微軟,高手不屑微軟,但從這點上來看,微軟對中國寫程序的影響還是不小,現在好多寫程序的,問他會啥?答:Win32 SDK,MFC。好像C++就等於MFC,對他們來說,萬一哪天微軟倒閉了,C++也就倒閉了。

再說周總給項目起名字也太沒有創意,老總和程序員不一樣,程序員做出一個項目,往往寶貝得像兒子似的,給兒子起名字,那肯定要精挑細選,說不定還要去問問周易,就像BOSS Liu,絞盡腦汁起碼也能想出“Shiny”這種有意義的名字。周總大概是受了魯迅先生的影響,總喜歡“硬譯”。

不過話又說回來,在公司終於有期待的大CASE來做了,你還要求什麼?好多練武的人練了一輩子武連《降龍十八掌》祕籍的封面都沒見過,比起他們,絕影覺得自己還算幸運得多,於是說:“其它沒什麼了,我就是擔心人手不夠。”

“這個你放心,這是長期項目,你慢慢去做,就儘管去做行了,我承諾你在兩週內給你解決人手的問題。”



出了辦公室,由人手的問題,絕影又想到了BOSS Liu。好幾個月沒聯繫,不知道他現在如何。於是溜到廁所,給他打個電話。

BOSS Liu接電話的聲音還是那樣底沉,好像他老闆就在他旁邊看着他接電話,絕影也用低沉的聲音問:“怎麼樣,BOSS,幾個月不見了,混的如何啊?”

“累啊,天天加班。還是以前公司好啊。可以十點鐘才上班。”

“現在做啥CASE啊?拿出來交流一下嘛。”

“我哪能做什麼大CASE啊!說出來還不讓BOSS你笑話。”

“少來了,別小氣。拿出來交流交流。”

“真沒啥大的,還不是在做GPS的。那GPS數據收起來好慢,收一個包得好幾分鐘,BOSS你有沒有啥好辦法啊?”

“我能有什麼辦法!你那GPS我還一竅不通。做出來了你給我個,我也來研究研究,給燕兒整一個帶脖子上。”

“算了吧,我一個人要能整出來,早發財了。對了,BOSS,你最近又在忙什麼啊?KIPACS的BUG修完了沒有啊?哈哈。”

“什麼KIPACS,做那玩藝有啥意思,現在我做大CASE了,DAP懂不?”

“DAP?”

“說出來嚇死你!DICOM Application Platform!”

“動不動就是Platform,是夠嚇人的。”

“唉,BOSS啊,如果你當初沒離開公司,估計發展也多好的。現在我都升職做技術主管了。”

“那是應該恭喜你咯。主管,管多少人呀?”

絕影仔細想想,技術主管,管技術,公司現在搞開發的就他一個,就算生拉硬扯把張廠長也算進去,那也才兩個,自己是主管,最多也就只管一個人,要是老老實實給BOSS Liu說,肯定被他笑死。於是打着哈哈說:“現在都啦,新招進來的人都歸我管呢。”

他這麼說,BOSS Liu反而撲哧一笑:“行了吧BOSS,少忽悠我了,估計你也就是個光桿司令,如果我在公司呢,你還能多管一個人,還好我走了。不然你一個光桿司令加我一個光桿兵,那傳出去我們倆都夠丟人的。”

“胡說!”

“行行,BOSS你放心,光桿司令的祕密我絕對不告訴別人。你放心,事情到我這就算進了保險櫃了。升職了,周總給你加薪了吧?”

“沒加,估計年底才加。”

“那他不是哄你呀。周總他們也太小氣,你還一個主管,我現在在公司一個小兵,工資都有3K了。”

“那不錯嘛,不過你大城市,消費太高,要沒3K打死我都不會去的。”



放下電話,絕影越想越想不通。BOSS Liu說得對,現在公司要是沒有自己,還能活嗎?要說技術,雖然自己不一定在BOSS Liu之上,但一定不在他之下,要說到貢獻,自己對公司的貢獻就更大了。別人張廠長每天朝九晚五上班下班,自己有時候還爲了項目進度自覺地加班。說心裏話,有時候項目壓下來,自己首先想到的就是如何去解決,如果幫公司渡過難關,從來沒想過自己應該怎麼怎麼樣。剛纔聽BOSS Liu這麼一說,就覺得委屈起來,自己辛辛苦苦地幹,無非就是希望公司看到自己做出的成績,會給自己應得的回報,但除了一個光桿的“技術主管”,公司到現在什麼也沒給他。

這麼想,絕影覺得BOSS Liu說得非常正確。自己雖然天天在公司閉門造車,水平到底怎麼樣說實話自己也不清楚。但BOSS Liu畢竟經歷過跳槽和求職,他都說自己沒有問題,那多半沒什麼問題,再說了,實在不行還能進他公司,工資也不會比他低。怎麼也比呆在公司強。
打定主意,絕影把燕兒叫到外面很認真地對她說:“我想辭職了。”

《瘋狂的程序員》37
燕兒一把拉住他,低聲說:“你瘋了。隔牆有耳朵,這種事情,回家再說。”

回到家中,絕影一直悶悶不樂,燕兒也在一旁幫他下決心說:“你想想,你在公司足足實習了八個月,才250塊錢的工資,你說我來公司實習300塊錢尤不失下曹從事,畢竟那是打雜的工作。陳董每次回來都說:小絕啊,從來沒讓我們失望過。可見對他們來說你還是非常重要的,但是說實話你那待遇也太低了。就說我們寢室一個同學的男朋友吧,人家在一家賣場跑採購,每月都有3000塊工資,那還只是工資,加上回扣啊出差補助啊通訊補助啊算下來,怎麼着也得過5000吧,而且那還純粹就是個體力活,讓我去我也能做得下來,可是你自己寫的程序呢?那可不是人人都能寫的,也不是人人都學得會的。”

一席話說得絕影又熱血沸騰起來。早幾年人們都覺得做技術的人很牛B,往往給人的印象是生活粗糙,不修邊幅,做的又盡是些匪夷所思的事情。那畢竟是做的腦力勞動,中國幾千年的思想下來就是“勞心者治人,勞力者治於人”,所以搞技術的莫名其妙有了優越感,越是有優越感,就越是不修邊幅,魯迅先生能做到把喝咖啡的時間都拿來工作,我還不能做到把梳頭洗臉的時間拿來工作?

所以封建社會的腐朽思想害死人:人人都認爲搞技術好,於是人人都來搞技術,搞到最後技術實在太多了,反而如何把技術銷售出去才成了擺在人們面前的最重要的問題,於是慢慢地搞銷售才成了王道。

燕兒的話說得一點不假,與其自己在公司天天寫代碼累得要死要活才這麼點工資,還不如人家搞銷售的天天在外面跑。想到這裏,絕影堅定地點點頭說:“嗯。我主意已定,不必多說了,睡覺吧。”



第二天一起牀,燕兒問:“怎麼樣?想好怎麼給周總說了嗎?”

絕影又猛然想起昨天晚上的事情,眼看DAP項目已經上綱上線,再想想雖然自己認爲在公司待遇不怎麼樣,但比大部分同學還是高出一大截,關鍵是公司還管住,還給他這麼大套房子。那賣場跑採購掙三千五千一個月畢竟還是少數,要不是少數,燕兒也不會專門拿他來舉例子,人比人是比死人,那他怎麼不去跟Bill.Gates比去?畢竟是畢業沒多久,燕兒也還在念書,啥事都還沒穩定下來,難得公司對自己這麼信任,可以說只要公司不倒閉,自己就不會失業,還是穩定壓倒一切。

又說BOSS Liu跳了幾次槽,工資也慢慢上去了,但打游擊打一槍換一個地方始終不是長久之計。你看看現在各大大公司的CXO,不是公司創始元老至少也是在公司呆了十年八年的。

這樣想,絕影又動搖起來,他對燕兒說:“辭職的事情還是先放放,先做DAP,現在說走就走太不人道了,那不是我的作風。”

“怎麼睡了一覺變得這麼快啊?”

“我又好好想了想,人家跑採購的雖然工資是要高些,但畢竟不穩定,今天公司可以讓你跑採購,明天就可以讓我去跑,這個月跑得好給你五千塊錢,下個月銷售淡季沒有業績一分錢也不給你,壓力還是大啊。不比我們,每天朝九晚五就夠了。”

“昨天什麼都不好,今天怎麼又全變成好的了?真是奇怪。”

“不奇怪不奇怪,反正你還沒畢業,好歹咱們倆都呆在公司還算穩定,辭職這個事情還是個大事,等你畢業了咱們再打望打望。”



打消了跳槽的念頭,絕影開始認真盤算起DAP來,周總也不食言,果然在一週內就給他招了個新人小李。招聘的事情絕影完全不知道,周總說那小李厲害得不得了,絕影去問了問他,他劈里啪啦什麼“熟悉C/C++,VB,VC,VFP,Dehphi,最擅長的還是Visual C++”。他這麼說,絕影突然想起周杰倫的《雙截棍》:什麼刀槍跟棍棒,都耍得有模有樣,什麼兵器最喜歡,雙截棍柔中帶剛。可絕影怎麼看怎麼也想像不出他有多厲害。

按照先前跟周總的規劃,要把DAP分成好幾個模塊,正好模塊之前的藕合很低,於是絕影自己做DcmImage,讓小李做DcmPrint。周總問:“這個DAP,預計多久能做完啊?”

絕影想了想說:“大概要三個月吧,主要是人手不夠,要是再有一個人,估計兩個月就夠了。”

“既然這樣,讓小張也來做DAP吧,反正現在公司沒有其它的項目,總不能讓他一直閒着,讓他也來做,能做多少做多少。”

絕影分給張廠長DcmConfig模塊,他第一句問的是:“可以用VB做嗎?”

絕影狠狠地說:“這又不是做玩具。”

這樣說,絕影想還不如不讓張廠長參與到DAP項目中來,以他C++入門級水平來做DAP,只怕到時候做了又要返工,返工還好,就怕周總說:“小絕啊,時間是不等人的,你看看,就在小張的基礎上修改一下吧。”

這一改,還不把人改死?



其實DAP這個項目說起來難度也不大,那DcmImage也就是搞個CDCMIMAGE類,把DCMTK的函數封裝一下從DLL中導出來。對絕影來說,也無非就是把慣用的DEF的EXPORTS換成__declspec(dllexport),唯一的難點就是這DCMTK,函數多,看起來複雜。如果是微軟,財大氣粗,就一個MSDN也至少得寫出好幾十G,什麼目錄、索引、搜索、書籤功能一應俱全,你說這光打字就得多少人?好在這麼做多多少少也能讓人看出點門道,那DCMTK幫助文檔看起來卻更像Word文檔,看得他頭都大了。

周總說:“別看文檔,看Demo!”

可裏面的Demo也完全是外國程序員的風格:管他屁點大個功能,都寫得異常複雜,C++裏面管他函數摸版、抽象類、重載、throw/tray/catch,能用上的全給他用上,彷彿他的目的就是不讓你看懂。

如果只是寫個DcmImage.dll倒也罷了,絕影自認爲自己不是微軟裏的牛人,一次性就成功,總得寫個exe來測試。於是自己這模塊一來二去便花了一個多月。寫到這裏,絕影慚愧起來,原以爲那KIPACS自己耍得頭頭是道,DAP還不是個程序,能難到哪去,真正寫起來,才發現自己實在自不量力,按照現在的評估,別說三個月,就半年都還有點危險。

自己這邊進展不大,估計小李那邊也好不到哪去,兩人平時各幹各的本來磨合就少,這天中午吃飯,小李突然對絕影說:“影哥,我準備辭職了?”

絕影以爲他只是準備要走,隨口問了句:“準備什麼時候走呀?”

“明天。”

這可讓他吃了一驚,一個多月下來,雖然絕影總認爲他沒周總說得那麼厲害,但看得出來他也的確是個能做事的人,看看公司現在這些人,表面上張廠長也能寫點程序,可絕影和他心裏都清楚,他那些不過也只是些玩具而已。

現在小李突然跟他說要離開,以後DAP的事情還不是全部落到自己頭上,那還不把自己累死。他小心翼翼地問:“怎麼了?有什麼不滿意的?”

“其實也沒什麼不滿意的,就是來的時候周總就承諾我辦個月做下來就給我轉正。到現在都一個多月了,每天他只是催我好趕緊做,要好好幹,轉正的事情提都不提,也太不厚道了,我也剛畢業不久,不想再浪費時間了,所以前幾天我另外找了個工作,明後天我就要過去。”

所以還是年輕人狠啊,本來這DcmPrint寫到一半,也就只有他自己最瞭解自己的思路。先不說小李走了自己要多做多少工作,就讓自己現在去接着寫DcmPrint那難度也足夠大了。

所以現在的年輕人確實比較前衛,啥事情都是先斬後奏:先同居再談戀愛,先懷娃娃再結婚,先到工作再辭職。

人一定要有骨氣,所以絕影也只是象徵性地對他說了幾句惋惜的話便把事情上報給周總。

周總問:“你有什麼意見?”

“沒什麼。他要走就讓他走咯。我原以爲他技術有多厲害,看了一個月也不過如此,比起以前的小劉都還差遠了。小劉不是也離開公司了嗎?我覺得他沒什麼好留的。”

“行,那我原則上也同意了。只是項目的進度你能把握嗎?”

“當然,我先做着,不過我也希望能儘快補充人手。”

“你覺得再要多少人合適?”

“兩到三個吧,但是如果是熟手,一個也就夠了。”

“那沒問題。這事情我來安排,你安心去做DAP吧。”

出了周總辦公室,絕影才感覺壓力突然來了。剛纔是站着說話腰不疼,現在想想,DAP那麼多模塊要做,又要一點一點去研究DCMTK,關鍵是還要接着小李做DcmPrint做KIPACS的時候就恨死了以前的程序員,現在又要再重蹈一次覆轍。但是剛纔在周總面前自己又不得不表現得對小李的離開不屑一顧,否則,自己和公司受制於人,以後會非常被動。



雖說周總又承諾解決人手問題,但絕影想還是不要對他抱太大的希望,正如小李說的,一個多月下來周總也沒跟他談轉正的事情,周總要是誠心希望他能留下,哪有不談轉正的道理,莫非周總報着節約成本的目的故意招的試用期員工?

絕影還是想到BOSS Liu,想以前跟BOSS Liu一起配合多快樂啊,什麼東西交給他做,管他花多少時間你都不用操心,到時候直接問他要東西,拿過來就能直接用,這和自己的風格有點像。像張廠長這種,你還得祈禱着他最後交上來的東西可以不修改可以不返工。

這麼想,看來人手的事情還是要靠自己,先給BOSS Liu打個電話,看他有沒有好的人選可以推薦。

BOSS Liu接了電話,還是用低沉的聲音問:“BOSS,有啥事啊?”

絕影說:“沒啥,問下你現在好不好。”

“還不是那樣,天天寫着程序呢。BOSS,有沒有啥新技術,拿出來討論討論嘛。”

“我哪有啥新技術啊,以前沒好好學C++,現在要用了,正後悔呢。還是你有先見之明。”

“我早就說了,要想餓不死,就得學C++,怎麼樣?DAP還是得用C++吧。”

“是是是,還是你厲害,說正經事,你有沒有認識的人能寫程序啊?給我推薦幾個,我這裏正缺人手呢!”

“人到是有,不過BOSS給你說實話,一個都達不到你的要求。你想要是有好的,我早介紹到我公司來了,我現在還不是愁得要死。”

“少來了,有好人就拿出來,別藏着自己用。”

“唉,真的沒有。你看我周圍的人,天天都是吃飯喝酒,昨天晚上才喝了,今天又喝,別人喝了酒唱歌,我們喝了酒下棋,幾個人可能是故意整我,把我灌醉還要我讓兩先,害得我今天又輸了50塊錢。”

“唉,這可愁死我了。BOSS你不知道啊,本來有個小李的,做了一個月又走了,我還得給他收爛攤子。”

“你也別愁了,我跟你說,凡事還是得靠自己,你想BOSS你要是一個人就把DAP做出來了,那你就立馬升級成牛B人,以後在朋友面前一提到BOSS Jue,獨自完成了DAP的開發,那都是響噹噹的名字,再怎麼也能跟求伯君有一比吧。”

“算了不跟你說了,看你真是醉了。”

“你放心,我沒醉,晚上回去還要寫程序。”

掛了電話,絕影彷彿還聞得到BOSS Liu的酒味。看來BOSS Liu的小資生活還是過得有滋有味。本來他以爲自己做了技術主管也能做上這樣的滋潤生活,奈何事事還得親力親爲,既然要親力親爲,那這主管的頭銜有何用?



兩週下來,人手的事情還是沒有落實,絕影也怠慢起來,就慢慢做吧,等人。

又等了幾天,周總對絕影說:“小絕啊,DAP是個長期項目,做到這裏我想我們還是先放一放吧。”

《瘋狂的程序員》38
周總一說放一放,絕影就怕得要死。天知道這一放又要放多久。比如饅頭這東西,剛做出來的時候熱氣騰騰還帶點甜味確實蠻好吃的,放一會涼了也還能吃,要是你放個一天兩天,那饅頭就變成了石頭,還如何能吃?

程序也是如此,好端端一個程序,若能一直寫下去,倒也像香噴噴的饅頭,越寫越多,越寫越有勁,要是哪一天突然讓你停下來,N個月後再讓你來看,明明是自己寫的東西,反而全都不認識了,程序員又不是狗,靠鼻子認東西。再來寫等於從頭再來,從頭再來還好點,至少思路都是自己的,現在還要順着以前的思路寫,接別人的活寫着寫着就罵以前的程序員,接自己的活寫着寫着就罵自己。

絕影強壓住心中的怒火,周總慢條斯理地說:“上次醫院那套系統用了這麼久了,最近根據他們的反饋,效果還不錯,還有好幾家醫院來參觀過,正好給咱們免費打廣告。一套系統做好了,我們不能僅僅滿足於系統本身,也應該再做點增值產品,一來可以擴展KIPACS的功能,二來還可以再給我們增加點收入。”

本來絕影認爲KIPACS確實沒有什麼技術含量,基本上沒有什麼再開發的價值,相比起來,DAP的價值要大得多。如果是別人這麼說,他肯定拿出一大套說辭來有力地反駁他,奈何這話又是周總說,現在公司收入的大頭還是得靠KIPACS,於是繼續聽周總往下說。

“最近我調研了一下,發現一個很簡單也很實用的功能,就是遙控器。比如以前我們在KIPACS上點擊‘拍攝’按鈕來拍片,醫生一邊要兼顧病人的體位,一邊又要到控制檯上來操作,實在不方便,離放射源也近,不如拿個遙控器,遠遠地就可以拍攝了,你說多方便。”

他這麼說,絕影幾個人不約而同地點點頭,周總也確實想到獨到之處。現在什麼東西都有人做,做的多了,競爭就激烈起來,本來大家的技術都差不多,比就比什麼?比誰的設計新穎,誰的設計更人性化,系統是越來越複雜,操作要越來越簡單,就比如Photoshop,東西是好,但學起來太難,起碼得買三五本書,要想稍微提高一點至少還得報上一個培訓班,比學寫程序還難,所以儘管早在大一的時候絕影就打算學Photoshop但直到今天還是什麼也沒學會。

程序員的想法往往是所有人都是程序員,這麼簡單一個程序,不說你看一眼就懂,至少你擺弄個三五天也應該耍得有模有樣。有這種想法,設計起來就粗糙了,能省的地方就省了,比如軟件配置,就不專門做配置模塊了,你自己去修改ini文件吧,大不了給你寫個文檔,哪個Section哪個Key是什麼什麼功能。

可是用戶偏偏和你想的不一樣,想想傻瓜相機這個概念剛出來的時候多火爆,所以你就得把用戶都當成傻瓜,你永遠不要指望他會把鼠標移到工具欄上停留個三五秒自己去發現上面的Tooltip,最好啥都做成一鍵式,一鍵拍片,一鍵恢復,一鍵出報告,然後在大大的按鈕上把這些用紅色字體都標註得清清楚楚。

周總見大家都很贊同他的觀點,頗有點得地說:“現在遙控器的優先級要高一些,小絕你先把DAP的項目放一放,這個屬於硬件方面的開發,小張你應該比較瞭解,你好好去調研一下,有什麼問題讓小絕多提供些支持。”

張廠長聽了周總的話,胸有成竹地使勁點頭,想在公司這麼久,被絕影嘲笑自己做玩具都不直到嘲笑了多少次,奈何自己一個搞硬件的偏偏身在軟件公司,有一點鶴立雞羣的味道,那些雞不但不覺得自己漂亮,反而嘲笑自己長得太醜。這次可是一次揚眉吐氣的機會。

絕影心裏還是有點不舒服。他覺得周總心裏有偏見,不要說周總,全世界對軟件都有偏見,都覺得硬件好,念初中的時候,老師就說:什麼是硬件?硬件就是看得見摸得着的東西。什麼是軟件?軟件就是看不見摸不着的東西。人們的心態就是這樣,往往更喜歡實實在在捏在手中的東西。早些年佈雷頓森林體系的時候,你跟他說金屬本位制,美元也是硬通貨,直接跟黃金掛鉤的,可人們還是偏偏喜歡黃金,眼看金融危機一來,趕緊把美元全部換成黃金,搞得美國也沒了那麼多金子,不得不放棄美元,美元也變成了貨幣符號,最後害了誰?還不是害了自己,自己辛辛苦苦掙再多錢,不過是貨幣符號而已。



張廠長興沖沖去城隍廟電子市場出了幾次差,每次都抱回一大堆電阻啊,電容器啊,電路板啊這次材料。本來他就愛搗鼓這些玩藝,加上這次都是公費報銷,雖然以他的人品肯定不會中飽私囊,但放在公司裏也差不多就是自己一個人用,當然要儘可能多地充實自己的工具箱。

絕影見他每天都忙得不亦樂乎,忍不住問:“怎麼樣?有眉目了嗎?”

“當然當然,一週下來,還是小有收穫。”

“有啥收穫啊?拿來見識見識。”

聽他這麼說,張廠長小心翼翼地從箱子中翻出手機大一個遙控器,遞給絕影說:“就這個,如何?九鍵的遙控器!”

絕影掂了掂,感覺輕飄飄的,想起小時候買鋼筆,媽媽說要買重的,重的好,從那時候開始,就覺得輕的東西不牢靠。你想黃金啊白金啊這些值錢的東西,哪樣不是沉甸甸的,要說輕,就塑料這些不值錢的東西才輕。於是問:“這麼輕呀?頂用嗎?”

“當然頂用了。發射功率大,有效範圍30米。”

“不會吧,我家的電視機遙控器拿到門口基本就不能用了,這玩藝能有這麼厲害?”

“我怎麼可能吹牛呢?來我給你試驗一下。”

張廠長說完,從絕影手中接過那個遙控器,三步五步跑到公司外面,絕影跟着他跑過去。出了公司,張廠長說:“不要說10米20米,就是隔道牆,信號都能過去。”

他一邊說一邊按下上面的鍵,兩個人再進到公司裏面,果然,張廠長桌上電路板上的燈亮了。

絕影見那桌上的東西堆得是七零八落,好多東西都沒見過,原來畫電路圖,電阻一個個都花生那麼大,虧得這次張廠長從城隍廟帶回一大串電阻,才直到原來現在科技進步了,電阻都做得米粒這麼小。

絕影一邊大量張廠長的辦公桌一邊忍不住伸手去拿,張廠長趕緊喝道:“小心,別碰!”嚇得絕影又趕緊撒手。

“這東西就是單片機,小心,別給我碰壞了。”

“就這麼點大,就是單片機?”

“當然了,AVR Mega16芯片!”

就輕輕碰了一下,張廠長居然對自己大呼小叫,絕影覺得他也太小氣了,他狠不得告訴他:不要說區區一個單片機,就是數字信號處理器,老子在大學也早就學過了,而且成績還不奈。雖說張廠長是搞硬件軟件的,可說不定自己一樣也能搞硬件開發。壞就壞在自己當初把學電路的時間都拿去學寫程序去了,要不今天也不至於在張廠長面前如此無知。

周總聽到呼聲,也從辦公室走出來,見張廠長桌上擺滿了電子元件,好像進展不小,便問:“怎麼樣?小張,進度如何了?”

張廠長認認真真地回答:“材料都已經差不多了,就差芯片的開發了。”

“還有什麼問題嗎?”

“目前還有兩個問題。一是還沒有開發板,二是還沒有集成開發環境。”

“那你有什麼打算呢?”

“開發板有三個方案。現在我這裏有一個我同學自己做的開發板,不過他應該不會免費送給我們;二是我們可以去買一個現成的,估計差不多100塊錢;三我們也可以嘗試自己做一個。”

張廠長說完頓了頓,似乎在等待周總。周總皺了皺眉頭問:“自己做,有把握嗎?”

“沒做過。”

“那我們還是不要冒險了。就跟你同學說一下,看他能不能便宜點賣給我們。反正他的東西都借給你用了這麼久了,你上手起來也比較快。”

“嗯。還有集成開發環境。現在有兩個選擇,一是用BASIC語言,有現成的BASCOM,相關的資料和教材我都有;二是用C語言,對這個我不是很熟,網上查了一下,可以用KeilC。”

“BASIC肯定不能用,這裏先否決了。我們一直是用C/C++做開發,技術要能夠爲以後做積累。你就去調研下用C語言做吧。有什麼不懂的多問問小絕,他對C語言比較熟。”

用C語言來開發顯然是張廠長不願意,他本來就擅長BASIC,用起來可謂輕車熟路,正因爲自己擅長這個,所以雖然在公司呆了這麼久,C/C++方面他還是沒怎麼提高,讓他用C語言來開發,等於是讓他從頭開始學。

不過項目既然已經下來,自己就必須得頂上去,張廠長也是焦頭爛額突擊C語言,居然在一週內有了突飛猛進。原以爲應付這麼個小項目應該沒有什麼大問題,但真正做起來,方纔覺得書本上的知識實在太有限了。好在公司裏還有絕影撐腰,周總說了,有什麼問題,找他。

絕影看了他的程序,忍不住在心裏笑,所有的變量居然全部定義成全局變量,寫一個函數判斷第一個參數是否大於第二個參數明明一個return a>b;就行了,他非要寫成if(a>b) return TRUE; if(a<=b) return FALSE; 好在雖然程序寫得糟,但邏輯思路還是正確的,問題就出在和芯片相關的函數調用上,那C語言,光一個芯片類型就花了整整幾十K的頭文件來定義,看得絕影也是暈頭轉向,只好給他說:“應該是芯片定義的問題,你再好好看看。”

絕影一席話,讓張廠長如獲至寶,趕緊又埋頭忙他的去了。反正絕影又閒得無事,於是向張廠長要了一份芯片官方的開發手冊研究起來。

看了一個下午,想這AVR單片機開發哪裏有那麼複雜,一本開發手冊,一個彙編器,一個下載器足矣。那彙編肯定是難不住自己,大不了要用什麼指令,要怎麼設置標誌位到手冊上查就是了,虧得張廠長還裝個50多M的開發環境。反正現在有流行玩單片機,普通小市民見面打招呼不外乎就是:“吃飯了嗎?“大老闆們打招呼往往是:“怎麼樣?官司打贏了沒有?”搞技術的人,特別是搞硬件的,打招呼卻是:“最近玩啥板子呢?拿出來研究研究!”絕影雖說學了點單片機的毛皮,但這種流行的玩藝的確還沒有實際玩過,這次正好什麼條件都有,於是下班的時候,把張廠長拉到一邊,低聲說:“今天晚上,就把你那開發板借我用用吧,我也去過過癮。”

平時難得有絕影向張廠長請教,所以張廠長倒也大方,叮囑了幾句也就把開發板借給了他。

回到家,絕影望着那開發板和芯片感慨萬千,好不容易有個實戰的機會就這麼給浪費了,那太可惜了。要幹就幹個大傢伙,就把那遙控器的芯片程序用匯編寫出來,也拿給張廠長和周總瞧瞧。

其實用匯編來做芯片開發也並非想像中那麼複雜,主要還是這個項目太小,也就是從I/O口取到遙控器的輸入,編碼一下再從I/O口發出去,關鍵是用匯編,中斷控制得自己來做,好在自己當初在學校就專攻了彙編,這玩藝也難不到他。

忙活到半夜三點多,這程序居然還寫了出來,其實總不過一百來行,彙編成HEX再燒到芯片裏,居然才佔了4K空間。

絕影洋洋得意地收起自己的作品,想像一下,你張廠長能做出來又如何?畢竟是你是搞硬件專業的,我不跟你比這個,但是我一個搞軟件的,也還不是一樣做出來了,你能來跟我比軟件開發麼?所以說,拯救世界,征服宇宙,得學彙編。



說有志者事竟成這話一點不假,用在張廠長身上特別適合,經過周總這次委以重任,他還是很快從C語言文盲進步到獨自完成了芯片程序開發的水平。

上交任務這天,他和絕影心裏都揣着小九九。張廠長是基本上獨自一人完成了整個任務,絕影呢,用匯編做出芯片的程序,在BIN體積上佔了很大優勢。這可難到了周總,本來絕影的任務應該是輔助張廠長做上位機的開發,他卻偏偏要搶張廠長的功勞,奈何他又是技術主管,於是他聳聳鼻子說:“小絕用的彙編,小張用的C語言,這樣吧,咱們明天來開個會,決定用誰的程序。”

《瘋狂的程序員》39
自己做的東西,就是怎麼看怎麼滿意,絕影和張廠長都覺得自己寫的程序好,周總肯定要用自己的。

周總還是決定用張廠長的程序。絕影用匯編做的,公司以前沒嘗試過,他還是不想冒這個險,畢竟C語言纔是入門語言,大部分程序都懂,以後萬一出了什麼問題要臨時維護也不愁找不到人。

這個決定後來在很長一段時間裏讓絕影一直耿耿於懷。現在單位裏特別是國有單位,年輕人往往對年長的領導腹緋很多,而上了年紀的領導又對這些年輕人意見很大,歸根到底,人老了,不求有功,但求無過,凡事畏畏縮縮,又覺得年輕人辦事不牢靠,太激進太冒險。

絕影原以爲周總從國外回來,靠技術起家大刀闊斧創辦這麼個公司應該是年輕有爲敢想敢做的人,當然公司創業初期周總也確實是這樣,沒想到公司過了最艱難的時候稍微穩定下來,周總的思想也開始陳舊。一方面要他負責技術減輕他和陳董的壓力,一方面又不給他機會充分發揮他想法。



遙控器的CASE搞完了又要搞DAP,想起來絕影就頭痛,暑假的時候燕兒在公司還要好點,現在開學了,燕兒也走了,周總就知道佈置任務,驗收代碼,張廠長就知道擺弄他那堆電子元件,現在整個公司連個跟自己談得攏的人都沒有,苦水都沒地方倒。

做這DAP就像打麻將,反正四川人愛打麻將是出了名的,說在飛機上聽到麻將的生音就知道成都到了。

說到打麻將,在每把開始之前人人都是躊躇滿志,想這把要和就和個大的,屁和?屁和根本就不和,至少也得和個大對子清一色的,還非得自摸,關三家,家家都關他個三翻五翻的。

這麼想,等牌上手了,才發現原來生活並不是想像中那麼美好。牌雖然是爛了點,好在自己技術還不錯,總還是有點希望,於是按部就班地打,誰知是打啥來啥,越打牌越爛,爛到最後,算了,破罐子破摔,本來都已經到了絕望的地步,忽然發現自己居然和了個十三爛。

原以爲DAP嘛,不過簡單的C++封裝,當初想得熱血沸騰,真上手做了,才發現這樣問題那樣問題又冒了出來,既然問題都已經來了,沒辦法,想憑自己的技術儘量去解決吧,結果是修改一個BUG,又製造兩三個BUG,越解決問題越多,弄到最後,這CASE估計就死了,沒法做了。可是和打麻將又不同,打麻將打到最爛的時候還有個十三爛的和法,就比如日本流行的“敗者復活戰”,本來都敗了,居然又可以復活,等於是天上掉下的機會。可是程序寫爛了,又沒有“復活”這麼個機會。所以,寫程序,前期不搞好設計,不寫好文檔真是害死人啊。

周總還是相當相信絕影,只說讓他自己控制一下進度便進辦公室去做他的事情,絕影自己在電腦面前倒是相當苦惱,這DAP確實是做不下去了,但是不做又不行,周總也沒讓他停下來的意思,而且他現在還肯定地認爲:小絕啊,從來沒讓我們失望過。

於是絕影只好一邊賴在電腦面前打發時間一邊期待着周總又有新的任務交給他,沒想到到真有這麼一天,周總又對他說:“小絕啊,DAP是個長期項目,做到這裏我們先放一放吧。”

周總這樣說,他並不知道絕影心裏的小九九,絕影卻故意問:“怎麼了?有什麼問題嗎?”

周總向他揮揮手,示意他進自己的辦公室,在自己電腦上,他一面擺弄一個軟件一邊說:“也沒什麼。DAP這個平臺性的東西,對我們來說是非常重要的,但是我想我們對應用上的開發也不要放了,畢竟這是我們近期收入的來源。我又琢磨着再做一些應用上的開發,最近我正調研一個軟件――X-posure,用來計算骨密度的,這軟件做得相當不錯,可以外接掃描儀,直接把X光膠片掃描或導入進去就能將上面選定部分的骨密度計算出來。你看我給你示範一下。”

絕影對周總擺弄的東西並不感興趣,他琢磨着周總這次要讓自己做什麼呢?莫非要模仿這個X-posure做個計算骨密度的軟件出來?那難度也太大了。這也並非不可能,以前做KIPACS的時候周總就經常找些軟件讓他們模仿別人的界面。現在好多東西都有什麼包裝專利、外觀專利、防僞專利,你一專利了,別人就不能用,好在軟件還沒有這樣那樣的限制,所以周總就總找些現成的來讓他們參考,自己又不是用戶,又不是醫生,要是讓自己絞盡腦汁去想那界面該如何佈置,那還不想死人。不過好像正因爲沒有這些約束,助長了不正之風,終於微軟忍不住指責金山抄襲Office界面,那只是“抄襲”,談不上什麼“侵權”,不知道這事後來對周總有沒有影響。

他點點頭對周總說:“嗯,是很不錯,那我們要做些什麼呢?”

“最近我正調研這軟件,舉一反三,看看我們有沒有什麼可挖掘的,可做的,但這軟件還是個共享版,老是要我輸入序列號,否則就不讓我接掃描儀,還有很多限制,不好調研啊。你上次不是幫陳董破解了一個PVT麼?這次這個,你看能不能幫我破解了。”

絕影吃了一驚,嚴肅地說:“周總,這可是商業軟件啊!”

“彆着急彆着急,我們又不搞商業用途,就是自己研究研究,法律上應該說得通的。”

絕影考慮了一會說:“嗯,那好吧,不過破解這個東西,我上次也說了,沒有百分之百的把握,運氣還是佔了很大成分。”

“這個沒問題,你儘量去做,做不出來大不了就不調研了。”



絕影從周總辦公室出來,拷貝了一份X-posure,這纔算個像模像樣的商業軟件,七七八八在安裝目錄中安裝了一大堆文件。

上次那個PVT畢竟是絕影第一次做破解,雖然最後還是破了出來,但用的還是暴力破解,那是內行人所不齒的,弄得他自己都不好意思跟別人講,暴力破解也確實不過癮,找出一個位置把Jxx改成Jmp就行了。這次又來了破解的CASE,還是官方的CASE,當然要好好發揮一下。這麼想,他打定主意,要麼做不出來,要麼就把註冊機做出來,網上不是那麼多牛人麼?一會發布個XXX註冊機一會發表篇XXXX破解筆記,你說自己牛,有什麼證據?以前BOSS Liu在公司,天天跟自己明裏暗裏比技術,自己又確實比不過他啊,沒有事實說話。這次要是把註冊機做出來,也跑到看雪論壇去發一篇,東西放在那裏,看你BOSS Liu這次還有什麼話說。

這樣美好的想像着,絕影開始破解起X-posure。

上次破PVT絕影給機器上裝了SoftICE,結果弄得系統異常不穩定,新版本的DriverStudio在Windows2000下莫名其妙下不了斷點,老版本的4.05還算好,可系統老是莫名其妙的重啓,所以破完了就重裝系統。這次卻又得再安裝一次。

破解本身不需要對這軟件研究得有多透徹,只要知道他是哪個exe在負責輸入序列號就行了,還是從MessageBox下手,思路不難,麻煩的就是這SoftICE。現在隨便問一個搞破解的或者搞逆向工程的,誰不知道SoftICE?SoftICE牛不牛?當然牛。正因爲太牛了,所以似乎專門給牛人用,或者只能給牛人用,因爲操作實在太複雜了。IceDump這些插件絕影沒裝,就算裝了他也不會用。你想從念大二第一次用SoftICE到現在,才學到勉強能用它調試東西的程度,你說要是再加個IceDump那還不知道得學到哪年哪月。

既然IceDump不會用,就用笨一點的辦法,直接拿紙把前面的代碼抄上,地址、機器碼、彙編代碼註釋什麼的都一字不落地抄下來再慢慢分析。

第一天做了些準備工作,第二天絕影開始認真的破解,本來作爲一個程序員,在他身上是很難找到紙筆的,甚至久而久之很多漢字都只會用電腦打不會用筆寫了。但是那一天,絕影卻整整寫了十六張A4打印紙的代碼。張廠長在一旁有點不服氣,說:“上次我打印個資料,才用六張紙,都領了個周總的口頭警告,怎麼你一會去拿一會去拿他都不說你啊?”

“我這是工作嘛。你以爲我要是有廢紙會去拿打印紙?廢紙早讓我做演算用完了。”

下班的時候張廠長叫絕影一起走,說是去瀘州麪館吃麪,絕影想了想說:“你自己去吃吧,現在正是關鍵位置,我要好好跟一下。”

“吃了飯拿回家再跟吧,現在肚子餓,一不小心就跟飛了,那損失就大了。”

“不行不行,家裏電腦還是不要裝SoftICE,不穩定。”

絕影說這些的時候頭也沒回,張廠長有點失望,不過想想也算了,他這種情況,多半是走火入魔了,現在不要說自己,就算燕兒肯定也喊不動他。



人都走完了,絕影乾脆關了公司的門,十幾張打印紙的代碼鋪在面前,眉目也有了點,畢竟那幾年水平只有那樣,再加上又是國外的軟件,國外軟件特別是成熟的大型商業軟件在反逆向工程上一直都做得很菜這是公認了的。這跟國內形成了鮮明對比。在國內,隨便一個“無敵剪貼板”之類的芝麻大點的軟件都殼加了一層又一層,加了殼又壓縮,壓縮了又加殼,什麼Anti-Debug,Anti-DAsm,虛擬機,花指令,密碼學加密算法凡是能沾邊的能用上的都用上,用不上的創造條件也要用上。比起他們,那X-posure的序列號算法確實算得上有失水準,字符有效性的判斷都很簡單,要麼是0-9的數字,要麼是“-”,關鍵的算法又全部寫在一個函數中,找到這個函數基本上等於大功告成。

說起來也容易,但真的找到還是費了他不少心血。SoftICE用起來實在太複雜,現在搞破解的前輩教育晚輩一般都說:“SoftICE用過嗎?我們那幾年,只有SoftICE用,你那OllyDBG又如何?畢竟是三環調試器,你用着是方便,可是畢竟是三環啊,對付你的辦法多得很,什麼檢測調試寄存器,什麼Hook調試API,什麼浮點指令漏洞,哪像我們那時候SoftICE基本橫掃天下。所以啊,工具多了,人就懶了,要學真技術,還是要在Kernel上多下點工夫啊。”

所有位置找到,絕影開始琢磨這個註冊機,想明天到了公司,周總問:“小絕啊,工作進展如何啊?序列號找到了嗎?”他就大大咧咧拿出這個註冊機說:“還行吧,註冊機也寫出來了,你用用看行不行吧。”這樣,周總肯定又要對他刮目相看,肯定又要拍拍他的肩說:“小絕啊,從來沒讓我們失望過!”

其它什麼難的,就是那個關鍵函數,雖然彙編代碼不是很複雜,但這明顯是高級語言寫的,那些數據的計算要還原成C語言代碼還是麻煩,想起網上一篇文章,好像就是介紹直接用Windows優化大師的反彙編代碼寫註冊機,給了點思路,不如就直接用彙編語言來寫註冊機得了。

這樣一直忙到晚上三點多,絕影用自己寫的註冊機生成了三個序列號,居然都能用。他才收拾好打印紙出了公司。

街上的店差不多都打烊了,只剩幾家燒烤店,絕影去了離自己住處最近的一家,喝了兩杯豆奶,吃了兩條烤魚,想起以前跟BOSS Liu在這裏喝酒吃燒烤,自己這個CASE算是做完了,幾百塊的獎金基本上算到手,不知道他在成都混得如何。

回到家,絕影還是沒有一點倦意,他也不想睡,現在睡了明天肯定又起不來,於是拿出寫滿代碼的打印紙,整理好思路,打開Word,題目寫上《X-posure序列號破解》,寫完這篇又花了兩個多小時,於是在看雪論壇上註冊一個ID發上去。

看雪論壇在搞破解的人當中那可是技術的聖殿啊,所以他還算比較人道,可以不註冊就去看帖子,絕影也一直沒有自己的ID,這次要發文章了,纔去註冊一個。沒想到幾天以後,這篇帖子居然被看雪大大批准爲精華貼,更沒想到,幾個月以後,這篇帖子竟然收入了《看雪論壇精華》。

絕影洋洋得意看着自己論壇上面帖子:1,精華:1,想以後要麼不發,要麼就有成果了再發,發就發精華貼,100%看雪論壇精華,還說我不牛麼?

這麼想了,所以從那以後,絕影在看雪論壇上始終只有一篇帖子。

《瘋狂的程序員》40

絕影迫不及待地把X-posure的註冊機交給周總,給他的時,他努力讓自己顯得平靜一點,但他等到的並不是周總激動的神情,他平靜地說:“不錯不錯。這也算個小項目,這是200塊獎金,你給我籤張工資單。”

出了辦公室,絕影感覺很不服氣。200塊錢獎金就不說了,自己辛辛苦苦好容易做出個註冊機來,隨便講給誰,只要是業內人事,大都會發自內心讚揚他幾句,就算不是發自內心,至少也會說幾句恭維的話,可週總居然就像沒看見一樣。

所以說人跟人不同,狗和狗有異,同樣一個妹妹走在學校裏,西師的瞅也不瞅一眼,川大的說:“美女呀!”要是放到絕影他們學校,土匪多半會驚叫:“快看,女的!”

對周總來說,要一個註冊機,要十萬個序列號和要一個序列號沒什麼兩樣,反正他是自己研究又不出售,所以不管你武功有多高強技術有多高深,還按一個序列號的標準發獎金。老總做到這一地步,算是相當成功了,自己就開個類把頭文件寫好,具體實現就讓絕影他們去寫吧,至於說實現這個功能用了些啥算法啥API啥高級技術,咱就不管了,反正我接口開了,你就管給咱封裝好交上了就行了,於是老總門終於從繁重的開發中解脫了出來。

絕影正心情不爽,張廠長卻丟下手上的活湊過來問:“怎麼了?這個破解做下來,又拿了多少獎金啊?”

“你懂啥啊?這不叫破解,叫逆向工程。”

“行了,我還不知道,現在流行這樣嘛,妓女都興叫‘小姐’,我們出個差純粹跑腿的都叫‘張工’,‘絕工’,你那破解當然換個學名叫‘逆向工程了’”。

聽他這麼說,絕影氣又不打一處來,所以說沒問化,真可怕,還是物以類聚人以羣分。公司裏自從BOSS Liu走後,基本沒人再跟自己討論技術上的東西,周總雖然是做技術出生,開始的時候絕影還對他敬仰有加,可不多的幾次親眼看到周總寫的代碼,又覺得和他神奇的經歷有點不相符合,又想大概是真人不露像,露像不真人吧。再等,還是一直沒見周總出什麼大成果。

好在自己還有個彙編羣,把這逆向工程的成果往上面一發,果然激起強烈反響,有互相討論技術的,有向他請教的,幾個小弟當場就冰天雪地裸體跪求:“絕影大哥,收我做徒弟吧!”

下面的人一奉承,絕影便真覺得自己是個大哥,想當初在學校的時候多多少少有同學來找他幫忙寫程序,做課程設計,學校就是和公司不一樣,進了公司特別是資本家的公司,你就不要指望能花一頓飯一桌酒來請誰幫你做CASE,這樣的人老早就被BOSS開了,於是絕影的一身武功就給廢了大半,再加上如今周總又對他的CASE不感興趣,高處不勝寒啊,還是在羣裏總算能找到一點感覺。



自從做出個註冊機來,先到羣裏宣傳一通,又給BOSS Liu打個電話,然後管他認識的還是不認識的,都把看雪論壇那精華貼的地址發過去,其實包括BOSS Liu在內大部分人都還是看不懂的,即時能看懂,既然都懂了,還去看它幹啥。不過出於禮貌,大家都還是或多或少說些讓絕影覺得好聽的話。

於是絕影覺得自己牛B起來。

於是在羣裏,他就理所當然擺出一副大哥模樣,別人正在探討什麼什麼,他湊過去說:“你這個,錯誤太明顯了,應該如此如此,這般這般。”其實到底是不是如此這般,他多半也不知道,要是以前,他會說“可能是如此如此,這般這般”,現在便成了“應該”。

所以人啊就是這樣,明明你摸遍全身就一塊二毛錢,但是你可以穿得週五正王,說話大大咧咧,舉手投足一副一切盡在我掌握中的樣,開口閉口就是中石化中石油國航移動連通的合同定下來了,接個電話就若無其事地平靜地說:“沒啥,我賬上又多了兩億。”

你這麼做,別人就真把你當大款了。說現在到處都是誰誰誰冒充什麼大老闆騙了多少多少工程款,騙了多少多少訂金,說誰誰誰冒充富商騙了多少多少美女,這不是因爲騙子有多聰明,是因爲上當的人實在太笨。所以說世上是本沒有大款的,忽悠得多了,也便成了大款;程序員本沒什麼高手的,吹捧的人多了,也便成了高手。

絕影也是如此,在羣裏被公認成牛人了,於是找他幫忙的,指點的人多了起來,成了公衆人物,反而又有了壓力,本來技術就有限,吹牛吹到了無限, 一次兩次你跟別人說自己忙沒時間,但這個藉口破綻太大,總不可能永遠都沒時間,再說了,上羣裏吹牛的時間都有還不能抽出一點來幫別人解決實際問題?以前在學校的時候雖然也有人來找自己幫忙,但那時候畢竟自己還是有點真本事,解決那幫同學的問題還算遊刃有餘。現在羣裏的畢竟還有些是專業人士,你就不要指望自己還能忽悠住他們。

實在沒辦法,只好把做DAP的時間拿出來研究問題。

X-posure的註冊機做出來,周總沒再給絕影佈置什麼新任務,那意思就是繼續做DAP。這也正戳到絕影的軟肋上。做吧,進展起來難度實在太大,程序寫得越多,代碼越亂,今天寫了,明天又找不着北;不做吧,公司和自己還沒這個先例,一個CASE,居然做了幾個月才說做不出來。再說了,比起逆向工程,這正向的開發能難到哪去,不存在什麼解決不了的技術難題。

正如周總說的:DAP啊,是個長期的項目,慢慢來吧。倒是周總沉不住氣了,有幾次忍不住問:“怎麼樣啊?DAP進展如何了?預計還要多長時間啊?”

這個時候,絕影只有打着哈哈說:“嗯,一切都在計劃中,但是估計還需要點時間,主要是人手不夠啊。”

反正這DAP又不趕時間,正好拿它打個幌子做些自己的事情。

所以人活着累,自己技術菜,首先是被同行、老闆看不起,掙的錢不多,還被老婆同學看不起。幾個同行走到一起別人都興高采烈討論inline hook,你插一句:SSDT用什麼函數獲取?你自己都不好意思。

混了幾年,好不容易技術高了點,也就是比上不足比下有餘吧,頂級高手又不屑你,正如美女都不在街上逛一樣,高手根本不混羣。美女去哪裏了?多半在私家車上。高手去哪裏了?多半在寫程序。即使這樣,菜鳥也有有求於你的時候,菜鳥畢竟是菜鳥,出招都不按常理,有些問題問得你自己都吃緊,但是沒辦法,誰叫你是程序員呢?誰叫你技術比人家高點呢?你就得想辦法幫別人解決。

再混幾年,終於到頂級高手的地步了,突然發現羣裏沒法混了。你想一個資格的大學教授可能去幼兒園教小朋友嗎?即使你給他8000塊錢一個月,人家還不一定願意去教,好鋼得用在刀刃上啊。於是自己來研究問題。先前那兩個階段,都還有很多東西可以參考,羣上啊,網上啊,什麼問題都能找到點資料。現在自己到了這個階段,啥事都只能靠自己,費盡心機研究點成果出來又不敢獨自偷偷享用。誰叫你是高手呢,你總得經常發表點研究成果吧。這是什麼精神?這就是新時代的雷鋒精神。



在公司幹私活還是相當冒險的,得眼、耳、手、腦並用。眼睛要盯住顯示器,耳朵要聽周總的動靜,手要敲鍵盤,腦袋還得想問題。做逆向和寫程序又不一樣,寫程序一般就開個VC,再把工程的Release目錄打開以便運行,做逆向至少得開個SoftICE;一個或多個記事本,隨時記錄斷點或者數據位置;一個目標exe目錄,方便觀察;一個W32DAS方便反彙編順便計算RVA;一個UltraEdit查看文件十六進制;一個Exescope分析目標文件的資源和導入表。

在這種情況下,如果周總突然出現那是相當危險的。好在從周總辦公室出來到絕影電腦上的視線並不好,於是再把VC打開,裝入DAP的Workspace,隨便找個比較大的cpp文件,定位到一個複雜的函數中,一有情況,力馬切換。

在這種艱苦的條件下,絕影還是幫羣裏的人解決了一幾個問題,最著名的要算浩方多開補丁。以前做PVT的破解,用CODEFS做的文件補丁,但覺得這樣不爽,你給別人發佈出去還得加上一個幾M的exe文件,儘管現在硬盤做得越來越大,價格越來越便宜,但是絕影他們這些用匯編的還是常常比誰的文件生成得小,誰的程序效率高。

於是在摸索一下,琢磨着還是內存補丁好。反正羅雲彬的書上都有現成的內存補丁的例子,不過就是幾個調試API調用一下。要換成BOSS Liu肯定覺得這調試API難得不得了,其實不是它難,是他不用他,不管什麼技術,只要你必須去用它,學起來也就不難了。

做逆向和寫程序不一樣,還有一點就是寫程序你也能知道大概的進度,這個CASE有多大,要多久能做完,心中也有個眉目,就算最後忙了幾個月沒做出來,至少也寫了一大堆代碼,多多少少算是給後人做了點貢獻,留了筆財富。逆向工程不一樣,運氣好了,靈感來了,斷點位置對了,十分鐘搞定。斷點找不出來,任你雨打風吹在那做個十年八年什麼也沒有,成果爲0。



星期一的例會,周總終於對絕影的進度有點不滿意,他說:“小絕啊,這DAP都做了這麼久了,還沒個像樣的東西拿出來。本來我計劃在十月份做完,十一月我們還有個比較大的CASE要出差,你說說現在怎麼辦吧?”

絕影聽了頭上直冒汗,明顯壓力就來了,幸好周總還不知道自己在公司做私活,要是知道,肯定比BOSS Liu的結果要慘。儘管BOSS Liu後來也覺得他現在的公司不錯,比絕影他們公司好得多,但是人就是這樣啊,呆在公司就好比跟妹妹談戀愛,最後實在談不下去了,但你對她說分手和她對你收分手卻有本質的區別。分了收,儘管你後來又有了更好的妹妹,總之比她好,可是當初分手卻是她說出來的,讓人憋得慌。

於是他戰戰兢兢地說:“嗯。這次主要責任還是在我,在開始前對項目缺少正題的把握,錯誤地估計了形勢,設計也沒做好,做到現在確實是進退兩難。”

說完,他等待着周總的嚴厲批評。等了幾十秒,周總突然開口說:“算了,這也不能完全怪你。只要你能夠面對失誤有勇氣承擔責任,不錯了。其實我也有一定責任,你經驗還不足就放你一個人去負責。這事我們現在就不說了,先放一放,說下我們十一月的CASE,等今年完了,我們重新計劃一下DAP的事情。”

絕影本來已經做好死的準備,沒想到又沒死成,這感覺就像臨上刑場突然包大人的捕頭策馬奔來,高呼:“刀下留人!皇上有旨,刀下留人!”想起當初BOSS Liu離開公司,其實現在看來他犯的錯誤也並不嚴重,計算曠工半天也絕不至於到解僱的地步,問題就在他當初給自己曠工找了個藉口。所以說,人還是要老實啊,至少自己的責任就要自己來承擔。這麼想,他忙順着周總說:“周總說得對。往後還要周總不論在設計上和實施上都多給些意見。”

周總聳了聳鼻子緩緩說:“我們還是來說下十一月的CASE吧。其實也就是個KIPACS的安裝。爲什麼說比較大呢,因爲這次KIPACS是裝在體檢車上,這是第一次,所以這次我會親自去。而且這次地方比較遠,在南京。這次CASE參與的單位比較多,有汽車改裝廠、DR硬件生產商、醫院還有我們。時間也會比較長,預計會有一兩週。我們這次去兩到三個人,具體小絕和小張誰去,或者兩個一起去我暫時還在考慮,我想問你們都有問題嗎?”

張廠長趕忙說:“當然沒問題。”

絕影考慮了一下說:“嗯。應該沒問題。”

絕影這樣說,其實是有問題的。今年KIPACS完成了十幾家醫院的安裝,因爲裝得多了,周總也便不再親自去現場,原則上說只需要一個售後過去安裝培訓了就行,可是絕影還是每次都得去,因爲有好幾次醫院都臨時需要調整軟件界面,周總又匆匆忙忙把絕影調過去,算是吃了些苦頭,所以後來每次都讓絕影一起去,以備不測。

這一年CASE跑下來,絕影已經疲憊不堪,關鍵是他覺得一個程序員,就應該埋頭在公司裏面寫代碼,什麼銷售啊、安裝啊、維護啊,那應該派其它的人去,程序員,不能掉價啊。

周總看了絕影一眼,彷彿看出了他的心事,他關切地問:“小絕,你有難處嗎?”
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章