我就讀的高中比較特殊,每天晚上放學(xué)后,吃完晚飯還有晚自習(xí),一直要上到夜里10、11點左右(夏天將近11點才放學(xué),冬天早一些,10點多)。也正是因為如此,老媽不得不每天給我10塊錢吃完飯用,否則趕回家吃飯再趕到學(xué)校上課是來不及的。這就為我攢下了充足的網(wǎng)費——我只需要花上2塊錢,就能在學(xué)校后面的路邊攤吃上一大碗涼皮或4個燒餅,剩下的8塊錢足夠上2個小時網(wǎng)的。
那時候去網(wǎng)吧主要就是連紅警,偶爾也玩星際,到了高三的時候,貌似CS就出來了,于是就專門打CS了。我和很多通過網(wǎng)吧接觸網(wǎng)絡(luò)的朋友類似,使用的第一款網(wǎng)絡(luò)軟件并不是IE(或者別的瀏覽器),而是QQ(那會兒還叫OICQ)。班里有幾個經(jīng)常泡網(wǎng)吧的同學(xué)都有QQ號,所以也慫恿我申請了一個,還互相加了好友;不過因為身邊的人上網(wǎng)的不多,所以我的QQ號上很長一段時間就這么幾個人,而且如果他們在線的話,那么我們一定是在同一家網(wǎng)吧里……
可憐我雖然在上個世紀末就接觸到了網(wǎng)絡(luò),但并沒有學(xué)會如何利用這個強大的工具,以至于很長一段時間我都不懂得網(wǎng)絡(luò)編程,甚至抵觸網(wǎng)絡(luò)編程。
說到高中時代的網(wǎng)吧,還有一個有趣的回憶,那就是我在網(wǎng)吧里見到過最全的Windows操作系統(tǒng)版本——Windows 95、Windows 96和Windows 97(D版無敵啊-_-)。有的時候,兩個人甚至為誰用Windows 97的系統(tǒng)、誰用Windows 96而大吵出嘴……
其實我對游戲沒什么太大興趣。即便老是翹課跑到網(wǎng)吧玩游戲,但我也只是圖和哥們兒一起哈痞,至于玩游戲本身我是興趣淡淡、輸?shù)枚嘹A得少。也正是因為如此,班里的哥們兒才喜歡和我一起去網(wǎng)吧,但分撥時又不喜歡和我一撥。
每天只能提心吊膽地接觸這么一會電腦,自然無法滿足我的欲望;而且,雖然每天到網(wǎng)吧只是打游戲,但我對編程還是念念不忘的。于是,我的一個想法在慢慢膨脹——擁有一臺自己的電腦。
二十世紀90年代末期,感覺中國人民的生活水平日新月異。雖然初中時家里還很貧窮,但等到了高中,明顯感覺家里生活狀況好了起來。再加上那個時候計算機行業(yè)突然成了熱門行業(yè),所以當我再次提起買電腦時,爸媽并沒有太多的反對。正好我一個表哥是搞IT的,當爸媽從他那里知道“編程”是什么東東、以及自己攢一臺電腦只需要6000多塊錢之后,他們終于狠下心決定給我弄一臺。
我記得在1999年夏天的一個周末,我懷揣著6700大洋忐忑地坐公交車(活那么大還沒見過這么多錢呢)輾轉(zhuǎn)到天壇附近的一個小院落里和表哥接了頭,然后他從家里翻出大大小小十余個紙盒子,我們在胡同口攔了輛“面的”就開始裝車。從天壇到通縣要開很久,但我的心早就飛回去了。
等車到了家門口還沒停穩(wěn),我就迫不及待地拉開車門開始卸車。我們家在6層,也不知道哪來的精氣神,我這一趟一趟地往上搬箱子啊,也不知道跑了多少趟。終于所有的箱子都堆在我的臥室里了,我連大氣也不像喘就纏著表哥給我裝機器。(現(xiàn)在想想表哥挺仗義,就為了讓我了解電腦的結(jié)構(gòu),寧可把這些散件這么遠運過來,也沒有提前組裝好帶給我。)
然后我們開始拆箱,表哥一件一件地給我指,這是主板、這是硬盤、這是內(nèi)存、這是軟驅(qū)、這是光驅(qū)……不一會就組裝好了,而我也對計算機的硬件有了一個大概的了解。然后開始裝操作系統(tǒng),我沒想到的是,表哥竟然給我搞來了最新的Windows 98——呃,不過是盜版的。
裝完系統(tǒng)之后,開始裝驅(qū)動程序——在這之前我根本不知道程序是怎么裝到電腦上的。不過很快我就知道了——下一步、下一步嘛。驅(qū)動程序也裝好之后,表哥問我要什么游戲不。我很果斷的跟他說,不要,給我裝個QBasic。表哥想了想,說QBasic是DOS自帶的啊,再說了,這年頭誰還用QB啊,給你裝個Visual Basic吧。我傻傻地問,那一樣么?表哥也不確定的告訴我,應(yīng)該一樣吧,反正都是微軟出的。
這個時候,應(yīng)該是1999年的夏天,我知道了Visual Basic,還知道了微軟公司。
表哥給我裝的VB——也是我第一次接觸的VB——是Visual Basic 6.0,當時最新的版本,也是.NET出現(xiàn)之前的最后一個大版本。在表哥走了之后,當我打開VB的開發(fā)環(huán)境時,我茫然了,根本不知道這是一個什么東西,也不知道在哪里開始輸入我的代碼。所以我趕緊又管爸媽要了點錢,坐車跑到了西單圖書大廈,幾經(jīng)躊躇買了一本《Visual Basic 6.0從入門到精通》。這又是一本對我產(chǎn)生很大影響的書,也是內(nèi)容非常充實的,從IDE環(huán)境到VB語法都講得很透徹。
于是接下來的一段時間里,我每天中午的一小段午休時間、下了晚自習(xí)到睡覺之前的幾十分鐘和整個的周末都泡在電腦邊,抱著這本書啃VB。
VB是很簡單的,所以很快就上手了。不過所謂的上手也只是熟悉了VB的語法,和函數(shù)、子過程、事件等等這些概念而已,編程作品也僅限于記事本、計算器這種基礎(chǔ)的小玩意。當然其間也想過編一些小游戲,不過由于基礎(chǔ)知識太弱,一直沒有實現(xiàn)。
回想那個時候的自己,基礎(chǔ)知識真是匱乏得很。
首先是不懂算法和數(shù)據(jù)結(jié)構(gòu),甚至連算法這個詞都沒聽說過,所以很多想法實現(xiàn)起來非常困難。
其次是不懂Windows API。盡管我買的那本書上也有介紹過如何在VB中聲明和調(diào)用Windows API函數(shù),但我并不知道這是操作系統(tǒng)提供的強大功能,只是認為只要在VB中寫這樣一個聲明,就可以得到一個神奇的功能了。而且,我會使用的API也僅限于書中給的一些例子,像什么MessageBeep、MessageBox之類的。
然后就是不懂面向?qū)ο。這沒辦法,在.NET出現(xiàn)之前,VB就是這么一個半面向?qū)ο蟮墓治,所以我買的那本書根本不好意思提面向?qū)ο蟆V钡胶髞砜磩e的書才知道,原來VB是面向?qū)ο蟮模瑢傩苑椒ㄊ录粯硬簧、繼承封裝多態(tài)樣樣皆可。
還有一個更要命的問題很長時間一直阻礙著我,那就是對網(wǎng)絡(luò)的不了解,甚至是一種抵觸。其他的毛病我還可以賴老師或者書上沒講,而這個問題純粹就是我的見識短造成的了。我買那本書上專門有一部分是介紹網(wǎng)絡(luò)和C/S架構(gòu)的應(yīng)用程序的,但是每次看到這里我都會跳過。
那個時候?qū)W(wǎng)絡(luò)可以說一無所知,雖然在網(wǎng)吧也聯(lián)網(wǎng)打游戲,但每次進游戲的時候,都是按照同學(xué)教我的順序“先選第2個,再選第3個……”,根本不關(guān)心菜單上顯示的文字(都TMD是英文)。而且,因為是在網(wǎng)吧接觸的網(wǎng)絡(luò),所以在我的第一印象中,網(wǎng)絡(luò)一定是由好多臺計算機組成的,而我只有一臺計算機,是不能玩網(wǎng)絡(luò)的。我就是生硬地認為,客戶端程序和服務(wù)器端程序是不能放在一臺機器上的,更不知道用“127.0.0.1”就能訪問到自己的機器(哦,對了,我那時候連什么是“服務(wù)器”、什么是“IP地址”還不知道呢)……
除了不學(xué)網(wǎng)絡(luò)編程以外,那個時候在家里也沒法上網(wǎng),因為那個年代上網(wǎng)成本很高。首先是設(shè)備不方便,要想上網(wǎng)必須買貓,一個貓就是幾百塊大洋;其次就是網(wǎng)費很貴,只能撥號上,算下來一個小時要4塊多錢。雖然這個費用和去網(wǎng)吧差不多,但是去網(wǎng)吧可以偷偷地,而如果在家上網(wǎng)的話,每個月爸媽交電話費的時候臉色一定會很難看。
所以在那個年代我的電子信息來源基本上就是書和光盤——我估計絕大多數(shù)有電腦的人都和我情況類似,所以90年代末期出版商很流行的做法就是買書送光盤——而現(xiàn)在,大多是在書的封面或封底印上個網(wǎng)址,送光盤被認為是很浪費和很傻比的一件事。
當然,其實就算家里經(jīng)濟條件允許我上網(wǎng),也是白瞎,因為當時見識很短,網(wǎng)絡(luò)對我來說就能干兩件事——聊QQ和聯(lián)機打游戲——其中打游戲還TMD是局域網(wǎng)的。
就這樣,我名副其實地陷入了一個信息孤島。我有著自己的計算機,卻沒有辦法共享別人的資源,我也不知道在家里的時候除了玩玩單機游戲和寫寫單機程序之外還能干點什么。