1.從電腦培訓(xùn)班開始
我畢業(yè)后的第一個(gè)工作單位是一個(gè)非常差的企業(yè),我在那兒見識(shí)了幾乎所有中國(guó)差的企業(yè)的弊端:人浮于事,拉幫結(jié)派,暗箭傷人,損公肥私……?梢韵胍,在這樣的企業(yè)工作,人是多么的頹廢。我在無(wú)聊之中過了大半年的時(shí)間。1994年4月的一天我去桂林新華書店買書,看到桂林電子工業(yè)學(xué)院老師舉辦一個(gè)電腦培訓(xùn)班,教打字、排版、常用dos命令等電腦使用基礎(chǔ),反正也沒事,不如上個(gè)班學(xué)點(diǎn)東西吧。不曾想就是這樣一個(gè)培訓(xùn)班,卻根本影響了我的人生之路。
我清楚地記得當(dāng)我第一次上機(jī)時(shí),連電腦開關(guān)在哪都找不到,老師拿著一張五寸軟盤,插入軟驅(qū),打開電源,在一陣“吱吱”的聲音之后,屏幕上開始有英文字符出現(xiàn),然后,教師在鍵盤上敲入幾個(gè)鍵,電腦沉默一會(huì),突然在屏幕上跳出一個(gè)小人,出現(xiàn)一行字:快快樂樂學(xué)電腦,還傳出了音樂。我當(dāng)時(shí)真是驚呆了,電腦怎么還會(huì)唱歌?現(xiàn)在想起來(lái),那個(gè)軟件其實(shí)是臺(tái)灣松崗系列教學(xué)軟件,而我一個(gè)大學(xué)本科生,在畢業(yè)之后居然對(duì)電腦無(wú)知到這個(gè)地步,我真不知道是該哭還是該笑……!
俗語(yǔ)說(shuō):“一見鐘情”。我是相信這種事的,因?yàn)榫褪沁@第一次上機(jī),讓我產(chǎn)生了搜索這一神秘世界的強(qiáng)烈興趣,從此就再難與電腦分開了。
當(dāng)時(shí),有兩位電子學(xué)院的老師:尹老師和陳老師。他們給我們講dos,講漢字輸入,講他們?nèi)绾涡薷奶靺R漢字系統(tǒng)使它能在一張軟盤上運(yùn)行,講打字排版……,一個(gè)月之后,我不滿足,又學(xué)了一個(gè)月。
在上培訓(xùn)班的時(shí)間里,我向老師要來(lái)了桂林電子工業(yè)學(xué)院計(jì)算機(jī)應(yīng)用專業(yè)本科四年的培養(yǎng)方案,回到家中,列出了所有本科課程,再根據(jù)書上的先修課程介紹,繪制了一張巨大的課程樹,從樹根開始,決定一本本地啃,從頭開始學(xué)計(jì)算機(jī)技術(shù)。計(jì)算機(jī)科學(xué)的學(xué)習(xí)有較強(qiáng)的系列性,想一步到位很可能會(huì)學(xué)不懂,但循序漸進(jìn)又無(wú)法跟上技術(shù)發(fā)展的速度,這是一個(gè)非常突出的問題。我現(xiàn)在想起來(lái),覺得好的學(xué)習(xí)方式是:學(xué)理論打基礎(chǔ),在實(shí)踐中逐步理解理論,多思多悟,就會(huì)發(fā)現(xiàn)層出不窮的新技術(shù)中有許多一直不變的東西存在。把握這種東西,就可以以不變應(yīng)萬(wàn)變。這種“不變”的東西是什么?就是軟件開發(fā)的基本原理與理論,基本思想與方法!在我對(duì)面向?qū)ο罄碚撨M(jìn)行了較深入的學(xué)習(xí)與把握之后,我學(xué).net只用了三個(gè)月的時(shí)間就可以獨(dú)立設(shè)計(jì)一個(gè)完整的全面向?qū)ο筌浖軜?gòu),并且用vb.net與c#混合語(yǔ)言把它給做出來(lái)了。對(duì)于j2ee,我同樣有這種自信,也用三個(gè)月的時(shí)間,一定可以開發(fā)與設(shè)計(jì)基于j2ee平臺(tái)的軟件,因?yàn)樗鼈儽澈蟮挠?jì)算機(jī)技術(shù)基礎(chǔ)是一致的,完全可以觸類旁通。
尹老師和陳老師可能不知道,他們開的一個(gè)也許是為了經(jīng)濟(jì)效益的培訓(xùn)班,最后居然培育出了一個(gè)計(jì)算機(jī)碩士!所以,作為一名教師,其責(zé)任真的是非常重大的,可能會(huì)影響學(xué)生的一輩子,我感激他們!
2.漫長(zhǎng)而艱辛的學(xué)習(xí)之路
我當(dāng)時(shí)每月只有一百多元的工資收入,把大半收入都用到買書上去了。電子工業(yè)學(xué)院門旁的那個(gè)科技書店,以及桂林科技書店,成為了我最常去“站讀”的地方。我買了數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)、微機(jī)原理、ibmpc匯編程序設(shè)計(jì),c程序設(shè)計(jì)……這些教材,就按照預(yù)定的計(jì)劃開始學(xué)了。
我當(dāng)時(shí)也說(shuō)不清楚為什么要學(xué)這些東西,決不象現(xiàn)在學(xué)生學(xué)什么東西都有很強(qiáng)的功利性:學(xué)英語(yǔ)為了出國(guó),學(xué)電腦為了好找工作。當(dāng)時(shí)根本就沒有想過今后如何如何,就是對(duì)計(jì)算機(jī)技術(shù)本身的興趣推動(dòng)我去學(xué)習(xí)的。
當(dāng)時(shí)計(jì)算機(jī)書還不象現(xiàn)在這樣撲天蓋地,我?guī)缀蹩赐炅宋夷芘降拿恳槐居?jì)算機(jī)書,看了一些書,就特別想有地方上機(jī),能練一練。但我一個(gè)月一百多元收入,一臺(tái)電腦怎么也得幾千元,要五六年不吃不喝才攢夠錢,父母都是普通百姓,家境僅能溫飽,擁有一臺(tái)電腦真成了我最大的美夢(mèng)。
為了有機(jī)會(huì)上機(jī),我這個(gè)臉皮極薄的人也會(huì)什么都顧不上了,帶著一盒保存著各種軟件的軟盤,厚著臉皮到處找可能的地方上機(jī)。在這個(gè)時(shí)候,電子工業(yè)學(xué)院又一次幫了我,他們的機(jī)房管理得并不嚴(yán),我就冒充是他們的學(xué)生去買機(jī)票上機(jī)。后來(lái)去得多了,那兒的老師都熟悉我這張臉了,但搞笑的是,居然沒一人知道我是哪個(gè)班的!
當(dāng)時(shí)電子學(xué)院用的局域網(wǎng)操作系統(tǒng)是novell,我在那兒學(xué)會(huì)了使用許多最基礎(chǔ)的軟件,現(xiàn)在仍然如數(shù)家珍:cpav,turbo pascal 5.5,ucdos,tway(天慧漢字系統(tǒng)),masm,turboc2.0,還有鼎鼎大名的norton公司的磁盤醫(yī)生ndd,pctools,borland公司的最牛的常駐內(nèi)存的軟件sidekick,……
在電子學(xué)院機(jī)房,我還玩了經(jīng)典游戲:決戰(zhàn)中國(guó)海,冒險(xiǎn)島,戰(zhàn)斧,三國(guó)……。
學(xué)校網(wǎng)絡(luò)里軟件很多,但其中所染的病毒也五花八門。我記憶深刻的是第一次遇見dir ii病毒時(shí),那種感覺決不是害怕,而是欣喜,呵呵,我見到病毒什么樣的啦!由于dos內(nèi)核是開放的,所以那時(shí)開發(fā)一個(gè)病毒程序相對(duì)容易,大家又都喜歡用軟盤拷來(lái)拷去,結(jié)果毒源泛濫,病毒的猖獗使得殺毒軟件有了巨大的市場(chǎng),現(xiàn)在大名鼎鼎的江民kv系列,就是在那時(shí)開始占據(jù)中國(guó)防毒市場(chǎng),同時(shí)還有部的kill等競(jìng)爭(zhēng)對(duì)手,瑞星,金山等都是后來(lái)者。
那時(shí),我白天在公司上班,就盼望著晚上的上機(jī),每次上機(jī)我都有詳細(xì)的計(jì)劃,因?yàn)闄C(jī)時(shí)寶貴,所以份外珍惜。
為了上機(jī)時(shí)能多敲些程序,我一咬牙,向媽媽要了兩百元,買了一臺(tái)電腦學(xué)習(xí)機(jī),回家苦練英文指法與五筆輸入,每天對(duì)著家里那臺(tái)14寸的電視機(jī)屏幕,敲擊至少鍵盤2小時(shí)以上。練得手腕酸疼,但終于達(dá)到了運(yùn)指如飛盲打的程度。學(xué)五筆,背字根“目具上止卜虎皮,……”,足足花了一星期才背下來(lái),并把每個(gè)字根與手指對(duì)應(yīng)起來(lái),后來(lái)看報(bào)紙都不自覺地將漢字給拆得七零八落,再也看不到是一個(gè)完整的漢字啦,當(dāng)時(shí)好象練到了每分鐘可打60多個(gè)字,后來(lái)我居然靠著這彈指神功當(dāng)了一陣打字員混飯吃!呵呵,練好了指法,一上機(jī),確實(shí)效率倍增,兩小時(shí)能敲入并運(yùn)行調(diào)試的程序比以前花三小時(shí)敲的還多。
94,95年是我條件最差,但學(xué)習(xí)勁頭最足的兩年時(shí)期,外在環(huán)境的惡劣,卻反而造就了我高昂的學(xué)習(xí)興趣,那種癡迷,我想熱戀也不過如此了,可能因?yàn)槲姨矚g計(jì)算機(jī)了,所以愛情與我無(wú)緣,這也是無(wú)可奈何的事。 :-(
我特別想說(shuō)說(shuō)我學(xué)習(xí)計(jì)算機(jī)技術(shù)書籍的感覺。如果你真的喜歡一門學(xué)科,那在啃一本本專業(yè)書籍時(shí),就決不會(huì)覺得它厚,而只嫌它不夠厚。對(duì)比我在本科學(xué)《電磁學(xué)》、《自控原理》之類枯燥無(wú)味的課程的感覺,那種課程脫離實(shí)際,從紙上到紙上,學(xué)生根本無(wú)法真正掌握。而學(xué)計(jì)算機(jī)課程《c程序設(shè)計(jì)》、《數(shù)據(jù)結(jié)構(gòu)》、《操作系統(tǒng)》等課程的感覺真是天壤之別,原來(lái)本科學(xué)的東西是越學(xué)越糊涂,而我在學(xué)習(xí)計(jì)算機(jī)科學(xué)的過程中自己就感到慢慢地將所有的知識(shí)串成了一條線,腦中有一棵知識(shí)樹在成長(zhǎng),這不是形容詞,是真的感受。我學(xué)dos命令,學(xué)了很久不明其道理,是在一天早上醒來(lái)時(shí)靈感一來(lái),突然理解了文件與樹的概念,于是,就真正把握了dos命令的內(nèi)涵,開始對(duì)copy,format,move……這些英文單詞游刃有余了。有段時(shí)間,我甚至能感覺得到我的知識(shí)在與日俱增!如果那時(shí)能有相對(duì)穩(wěn)定的客觀條件:比如有一臺(tái)隨時(shí)可用的計(jì)算機(jī),那我一定學(xué)得更快更好。不過話又說(shuō)回來(lái),條件好的時(shí)候,人又容易為安逸所累,進(jìn)步反而慢。還是那句老話:業(yè)精于勤荒于嬉,F(xiàn)在的許多學(xué)生就是物質(zhì)條件太好了,反而不懂得珍惜。
后來(lái)我看了金庸先生的《射雕英雄傳》,郭靖成了我最喜歡的人物,不是因?yàn)樗悬S蓉的愛,而是他那種堅(jiān)忍不拔的毅力,以平凡之資終登絕頂!金庸先生真是妙筆!此小說(shuō)我不知看了多少遍。
最值得懷念的就是我學(xué)編程的歲月,我學(xué)c語(yǔ)言用的是譚浩強(qiáng)的《c程序設(shè)計(jì)》,當(dāng)時(shí)譚老師在電視上同時(shí)講c程序設(shè)計(jì),我每天必看,把書上的每道例題與習(xí)題全部做了一遍,并寫出了每次上機(jī)的安排。我每次都先在紙上把程序?qū)懗鰜?lái),然后上機(jī)時(shí)爭(zhēng)分奪秒地在計(jì)算機(jī)中調(diào)試運(yùn)行,并根據(jù)運(yùn)行結(jié)果思索為什么會(huì)運(yùn)行不正常,在哪兒出錯(cuò)了,如何更正,上機(jī)完后還有總結(jié)。就是這樣,我把譚浩強(qiáng)的《c程序設(shè)計(jì)》一書中的所有例題和習(xí)題全部敲到計(jì)算機(jī)中運(yùn)行了一遍,打下了c語(yǔ)言扎實(shí)的基礎(chǔ)。譚老師的書和課,的確影響了中國(guó)多少名程序員!
我學(xué)了c語(yǔ)言之后,就開始想做點(diǎn)東西了。我用了一個(gè)月的時(shí)間,用c編寫了一個(gè)中文下拉菜單的程序,從ucdos中的字庫(kù)中提取漢字點(diǎn)陣,然后在圖形模式下“畫”出漢字來(lái),使程序能脫離漢字系統(tǒng)的支持直接顯示漢字。整個(gè)程序應(yīng)該有一兩千行代碼吧,全部是自己尋找資料,一行行敲進(jìn)去的。后來(lái),我又編了讀取wps文件的程序(當(dāng)時(shí)dos下打字排版是求伯君的wps一統(tǒng)天下,word當(dāng)時(shí)在哪里我不知道呢!《電腦報(bào)》介紹過的求伯君,鮑岳橋等作為第一代中國(guó)杰出程序員代表,是我當(dāng)時(shí)崇拜的偶像),我還編寫了一個(gè)繪制簡(jiǎn)單圖形的小程序,從編程調(diào)試的過程中,我得到了程序員基本功的最初訓(xùn)練。我當(dāng)初沒人教,遇見各種困難只能自己解決,為找出一個(gè)bug,晚上睡覺做夢(mèng)都在編程,而現(xiàn)在的一些大學(xué)生,程序通不過,馬上問老師,甚至有學(xué)生把程序發(fā)到我的郵箱,叫我?guī)退{(diào)程序!有的計(jì)算機(jī)專業(yè)學(xué)生,學(xué)了四年,四年敲過的代碼總數(shù)恐怕不超過2千行!
的確,我當(dāng)時(shí)的水平很低,現(xiàn)在的本科生比我當(dāng)時(shí)強(qiáng)太多了,但至少有一點(diǎn)他們中的許多人不如我,他們不如我勤奮,也不具備我的毅力,我覺得這是現(xiàn)在這批八十年代出生的大學(xué)生最缺的東西。
我用一年半的時(shí)間基本自學(xué)完了計(jì)算機(jī)專業(yè)的主干課程(除了《編譯原理》,我實(shí)在看不懂),1995年我參加了初級(jí)程序員考試,結(jié)果上下午成績(jī)加起來(lái)有90多分。但96,97我兩次參加程序員級(jí)考試,雖然我已有不少編程實(shí)踐,但仍然通不過,現(xiàn)在看起來(lái),這反映出一個(gè)事實(shí):我理論基礎(chǔ)實(shí)在太差,天資也并不高。直到現(xiàn)在,我仍然痛感我的計(jì)算機(jī)基礎(chǔ)理論不好,使我難以成為一名計(jì)算機(jī)科學(xué)家,而只能成為一名不錯(cuò)的軟件工程師。
從95年開始,我的生活開始加速下降,我所在的公司由于被一群我現(xiàn)在稱之為駐蟲與流氓的人給弄得不成樣子,每月連100多元的工資都無(wú)法保證,我只得離開了公司,把檔案往人才交流中心一放,就開始了我四年的社會(huì)漂浮生活……。
在這四年中,我干了不下四五種工作:當(dāng)過推銷員,當(dāng)過打字員,當(dāng)過培訓(xùn)老師,修過電腦,從事售后服務(wù),甚至擺過地?cái)偂,一切的一切,很?jiǎn)單,就為了能有口飯吃。生活是嚴(yán)厲的,不講情面的,我唯一的愛好就是閑下來(lái)就拿起我的計(jì)算機(jī)書來(lái)看。當(dāng)時(shí)我大哥說(shuō)過:你學(xué)這些東西有什么用?能靠它當(dāng)飯吃?不要驚奇這種觀點(diǎn),在我們那信息閉塞的地方,當(dāng)時(shí)有誰(shuí)能想到計(jì)算機(jī)技術(shù)會(huì)有如此大的改變社會(huì)的能力?我之所以不懈學(xué)習(xí),純粹是為了解脫精神上的困惑,在技術(shù)的海洋中忘卻生活的煩惱。我后來(lái)有一句名言:何以解憂,唯有電腦。別人當(dāng)作一句笑話,但卻是我當(dāng)時(shí)的真實(shí)寫照。
萬(wàn)事都有兩面,事情壞到極處,就會(huì)向好轉(zhuǎn)化。又是一個(gè)很偶然的事,改變了我的人生軌跡。
1996年,我的一個(gè)高中同學(xué)楊考上了湖南大學(xué)計(jì)算機(jī)系研究生,請(qǐng)客吃酸菜魚火鍋。在大家喝酒時(shí),楊提了一個(gè)問題:請(qǐng)大家說(shuō)出一個(gè)自己最想達(dá)到的目標(biāo)。我的桂中同學(xué)大多數(shù)都是上的全國(guó)重點(diǎn)大學(xué),此時(shí)畢業(yè)三年了,大家都對(duì)社會(huì)對(duì)生活有了自己的認(rèn)識(shí),于是就有了各種不同的答案,我當(dāng)時(shí)的回答是:“我希望能有一天開發(fā)出一個(gè)好的軟件,讓許許多多的人都能用上它!,這個(gè)目標(biāo)我到現(xiàn)在都沒達(dá)到。但當(dāng)時(shí)大家是給我熱烈地鼓勵(lì)。楊飯后跟我說(shuō),你既然那么喜歡計(jì)算機(jī),為什么不考研呢?對(duì)啊,我為什么不去試試呢?當(dāng)天晚上我躺在床上,沒怎么想就確定了要考研的想法。當(dāng)時(shí)卻怎么也沒想到,考研之路成了另一條折磨人的不歸路。對(duì)我一生的影響深遠(yuǎn)……
這就是我早期的學(xué)習(xí)生涯,深深地體現(xiàn)出中國(guó)的時(shí)代特色。這段時(shí)間我的生活是困苦的,心情是苦悶的,但學(xué)習(xí)熱情卻是無(wú)以倫比的,F(xiàn)在我一個(gè)人擁有兩臺(tái)奔四電腦,隨時(shí)可上互聯(lián)網(wǎng)獲取豐富的資源,反而在技術(shù)上難有寸進(jìn)了。越來(lái)越覺得古語(yǔ)說(shuō)得好:
艱難困苦,玉汝于成!
這是生活的真理!