程序人生的寂靜歡喜
標(biāo)題起得太大咯,是在故作老成么?
“程序人生的寂靜歡喜”——怎么看都感覺像是某位已故計(jì)算機(jī)大師的墓志銘,可卻偏偏被一個(gè)菜得摳腳的毛頭小子拿來當(dāng)做人生寄語——也是日了狗了!
人都沒生過,談什么人生?。?/p>
莫怪我,我偏要“奢談”一下!
一.記敘
一開始我是拒絕的!因?yàn)槲腋揪筒幌矚g寫程序。
打高中數(shù)理化就不好,什么排列組合、圓錐曲線、電磁場中一帶電粒子、水溶液中的水解電離,困擾我有如夢(mèng)魘。
高考時(shí),祖墳上冒出一縷青煙,數(shù)學(xué)創(chuàng)歷史新高考了88,理綜破有史記錄考了200,數(shù)據(jù)不僅太美太感人,而且大吉大利、元亨利貞!終于,我以總分522分考上了一所夢(mèng)寐以求的2本就讀于計(jì)算機(jī)科學(xué)與技術(shù)1202班——命中犯2!
可是對(duì)于編程其實(shí)我是拒絕的——大一花了一年的時(shí)間來研究心理學(xué),大二花了一年的時(shí)間來研究哲學(xué),大三花了一年的時(shí)間來研究中醫(yī)——結(jié)果,《離散數(shù)學(xué)》掛了,《數(shù)字邏輯》掛了,《數(shù)據(jù)結(jié)構(gòu)》掛了,《編譯原理》掛了——恨不得自掛東南枝!
人在做天在看,出來混總是要還的!曾堅(jiān)信“天生我才必有用”,“我輩豈是蓬蒿人”;曾篤定“心所愿力畢至”,“有志者事竟成”;曾夙愿“天授其賦必賜其福”,“好風(fēng)憑借力,送我上青云”??墒?,一個(gè)冷峻若紫電青霜的問題劈面而來:不寫程序又能干嘛呢?
然而我根本就不會(huì)寫程序!試想,一個(gè)打字只能用到右手食指、左手食指和左手無名指的人,敲代碼時(shí)是多么捉急!試想,一個(gè)高數(shù)補(bǔ)考考了19分,滿腦子宏大敘事的理科弱智,寫程序時(shí)是多么腦洞大開!
后來去公司實(shí)習(xí),遇到的第一個(gè)項(xiàng)目就是要使用ESFramework通信框架,當(dāng)我第一眼看到了開發(fā)手冊(cè)上的如下句子時(shí),我就知道,春天不會(huì)再來了!
客戶端通過調(diào)用ESPlus.Application.Basic.Passive.IBasicOutter接口對(duì)應(yīng)的方法以及預(yù)定其相關(guān)的事件,就可以完成基礎(chǔ)功能或得到相關(guān)狀態(tài)改變通知。我們可以從ESPlus.Rapid.IRapidPassiveEngine暴露的BasicOutter屬性來獲取IBasicOutter引用。
接口、預(yù)定、事件、暴露、屬性、引用,你們一個(gè)一個(gè)來,我還大概能明白,你們?nèi)浩鸲ブ?,我便委地如泥了?/p>
重載的Query方法(帶有CallbackHandler參數(shù)的)在發(fā)送請(qǐng)求信息后,不會(huì)阻塞而繼續(xù)向下執(zhí)行,而框架在收到對(duì)應(yīng)的回復(fù)信息時(shí),會(huì)回調(diào) CallbackHandler委托指向的方法。由于調(diào)用線程與回復(fù)回調(diào)的線程不是同一個(gè)線程,所以稱這種機(jī)制為回復(fù)異步調(diào)用。
再當(dāng)我看到“重載”、看到“阻塞”時(shí),我徹底憤怒了!而緊接著映入眼簾的“委托”、“回調(diào)”更使我出離憤怒!最后“線程”、“異步”更令我萬念俱滅,心如死灰!
從此,我便以一種菜得摳腳的姿態(tài)狼狽不堪地行走在險(xiǎn)象環(huán)生的程序世界里。莫非是寒更雨歇,葬花天氣,獵獵北風(fēng)襲單衣;荒原寂寂,遠(yuǎn)聽猿啼,近看寒鴉起;鬼影幢幢,步步驚心,不知今夕何夕。
好多次我都想,別瞎費(fèi)勁了,你不是寫程序的料!真正適合寫程序的人根本就不可能是這個(gè)樣子!
于是乎放棄??墒遣粚懗绦蛴帜芨陕锬??好歹讀了四年大學(xué),何況拉弓沒有回頭箭。還是要頂風(fēng)逆水雄心在,不負(fù)人民養(yǎng)育情!
終于,苦水的浸泡痛徹了肌膚,磨練了身心,同時(shí)也澆灌出了涅槃之花!
某天我突然發(fā)現(xiàn),那些原本看來佶屈聱牙的技術(shù)文檔如今看來卻直白如話,那些原本晦澀難懂的語法如今卻能夠熟練運(yùn)用,那些原本看都看不懂的源碼如今也能夠在自己指下流淌,實(shí)習(xí)之前我連循環(huán)語句都寫不對(duì),如今卻也能用ESFramework和OMCS等框架開發(fā)出像樣的網(wǎng)絡(luò)通信應(yīng)用。
二.議論
更重要的是,從當(dāng)初的不喜歡、不擅長、不自信,到而今能夠懷揣著一顆歡喜之心來寫程序,能夠以樂在其中的心緒來開啟自己的程序人生,這不僅是我收獲到的莫大財(cái)富,更是我把握住的莫大幸福!
胡適先生的名言:“怕什么真理無窮,進(jìn)一寸有一寸的歡喜。”真理無窮并不可怕,因?yàn)槲覀冊(cè)诿恳淮绲那斑M(jìn)中始終獲得歡喜。編程之路并非坦途,我們也并非天賦異稟,然而那個(gè)最幸福的人,并非是玩轉(zhuǎn)代碼的編程高手,也并非是億萬家資的IT精英,而是那個(gè)在流年中始終以歡喜之心書寫代碼,又通過書寫代碼恒久再獲歡喜之人!
常言道:“男怕入錯(cuò)行,女怕嫁錯(cuò)郎”。嫁郎要嫁有情郎——有情飲水飽,無情龍肉都無味!入行也是一樣。入了所愛之行,舉手投足皆得歡喜;入了所憎之行,坐 臥立行盡是苦悲!嫁郎的幸福不在于嫁郎所獲得的富貴榮華,其根本在于郎本身。那些通過嫁郎以獲取外在利益的女子,她們充其量只是獲得了生意上的成功,而根 本沒有獲得婚姻本身的幸福,而這何嘗不是一種買櫝還珠?同樣,那些以工作作為純粹手段的人,他們也從來沒有獲得過工作本身的幸??鞓贰?/p>
由此看來,我想恐怕對(duì)于絕大多數(shù)的程序員而言——你不是真正的快樂!
所有程序員恐怕可以粗略的劃分為這五種狀態(tài):
1.不愛,但是迫于生計(jì)
2.無感,反正亦步亦趨
3.熱愛,但卻身心俱疲
4.狂熱,打了雞血一般
5.歡喜,畢竟樂在其中
你是屬于哪一種呢?
如果要我來選,我一定會(huì)選5,因?yàn)槲ㄆ淙绱瞬拍塬@得程序人生的個(gè)中真昧,才能擁有彼此交融的內(nèi)在完滿。而其他的幾種狀態(tài)在不同程度上都是殘缺的。
也許我們寫程序總是不可避免的為了各種外在的目的,但是寫程序時(shí)的那份小確幸的歡喜,卻始終是我們精神飛鳥的棲息地。 正如孔子贊顏回——子曰∶“賢哉回也,一簞食,一瓢飲,在陋巷,人不堪其憂,回也不改其樂 。賢哉回也!”
罷筆時(shí)風(fēng)煙俱凈,但愿自己剛剛開啟的程序人生能夠無關(guān)風(fēng)月,寂靜歡喜。