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