前段時(shí)間處理了很多事情,一直沒有寫下去,花光了所有的積蓄買了一套房子,同時(shí)把戶口的事情也基本辦完了,這幾天稍微緩口氣。昨天跟我的一個(gè)老上司見面聊了半天,心里感慨萬千。他從外在條件看讓不少外人羨慕,二十多歲做過到了863項(xiàng)目的負(fù)責(zé)人,博士畢業(yè)的愛人單位也非常好?,F(xiàn)在三十出頭的他在一個(gè)通信公司做產(chǎn)品經(jīng)理,工資雖然不算高但也有一兩萬,而且還持有股份。但是我們了解的人才理解他的艱辛。“白領(lǐng)”這個(gè)詞在一些人看來是仿佛是一個(gè)動(dòng)人的光環(huán),但是在我看來是一個(gè)無奈的名字,每天行走在大街上,來來往往的車流中有多少是“白領(lǐng)”的?又有幾個(gè)“白領(lǐng)”住的起高檔的住宅?在上海一套別墅300萬不足為奇,按揭貸款下來總額接近600萬,年薪二十萬在上海算是一個(gè)中高級(jí)“白領(lǐng)”,高額的稅金去掉了你百分之幾十的收入后,這樣算下來不吃不喝也要四十多年,加上生活的其他開支,注定了你與這樣的住宅無緣。看著外面一套套別墅,一輛輛好車,我不知道它們是誰的,但我知道其中沒有什么白領(lǐng)。我覺得自己很渺小,在這個(gè)喧鬧的都市中我如同一只螞蟻,但我有不甘于平凡,我不愿做一個(gè)單純的“白領(lǐng)”?! ∑鋵?shí)很多朋友并不了解我,我不是一個(gè)追逐時(shí)尚技術(shù)的人,我只是不愿意做一個(gè)所謂的“白領(lǐng)”,更加不愿意做一個(gè)單純的“程序員”。我不甘愿平凡的生活一輩子。我在不斷的努力,我的方向非常明確,我要做多數(shù)人不做和做不到的事情,很多朋友對(duì)我這樣頻繁的換方向不理解,覺得一個(gè)人只要熟悉一種技術(shù)就可以了,對(duì)于這樣的看法我只能說你淺薄,現(xiàn)在的大的系統(tǒng)和產(chǎn)品往往都是軟件、硬件和應(yīng)用相結(jié)合的,我要做的不是哪個(gè)方面的專家,而是希望能夠成為系統(tǒng)設(shè)計(jì)師。我不相信一個(gè)只精通發(fā)動(dòng)機(jī)的專家能夠設(shè)計(jì)一輛好車,同樣我也不相信對(duì)硬件一竅不通的人能做出一個(gè)操作系統(tǒng),或者一個(gè)對(duì)財(cái)會(huì)沒有一點(diǎn)概念的人能設(shè)計(jì)出一個(gè)優(yōu)秀的財(cái)務(wù)軟件。在工作中我發(fā)現(xiàn)社會(huì)上非常缺乏邊緣人才,尤其是在國內(nèi)。在國外一個(gè)人軟硬件兼修非常普遍。如果設(shè)計(jì)產(chǎn)品的人只了解他的專業(yè)那么是很難有出色的設(shè)計(jì)。所以我必須趁著自己年輕學(xué)的更加廣泛一些,這樣才能提高自己的綜合素質(zhì),這也是為什么高校那么多非專業(yè)課程。學(xué)習(xí)工作了這些年,實(shí)際上都沒有脫離IT這個(gè)行業(yè),我現(xiàn)在的公司開發(fā)一個(gè)系統(tǒng)時(shí),先是將最終功能列舉清楚并分析可行性,然后劃分哪些是用芯片實(shí)現(xiàn),哪些是用硬件電路實(shí)現(xiàn),哪些是用軟件實(shí)現(xiàn),這樣的設(shè)計(jì)才能做出最好的系統(tǒng)。如果一個(gè)設(shè)計(jì)者單純只懂一個(gè)方面是不可能做到這一點(diǎn)的?! ∽载?fù)常常伴隨著無知,記得我大學(xué)畢業(yè)時(shí),論文答辯會(huì)上我和專家組組長爭起來了,因?yàn)槲覍?duì)自己的設(shè)計(jì)非常得意,而他雖然是雞蛋里挑骨頭,但是由于知識(shí)非常有限,我無法回答他的問題,所以有些“惱羞成怒”。我原來一直喜歡用“所謂”最好的開發(fā)工具,記得做過一個(gè)愚蠢的設(shè)計(jì),一個(gè)排課表的軟件我用VC+Oracle開發(fā)。這些經(jīng)歷我牢記在心,時(shí)刻提醒自己學(xué)會(huì)謙虛。我的親身經(jīng)歷加上我對(duì)一些身邊朋友的觀察發(fā)現(xiàn)這樣一個(gè)現(xiàn)象。當(dāng)一個(gè)人只會(huì)他認(rèn)為最好的技術(shù),而對(duì)其他的一無所知,這樣的人經(jīng)常是目空一切。從第一個(gè)“Hello World”到今天的操作系統(tǒng),前前后后寫了很多代碼,從這中間我也積累了很多心得。由于我是在沒有人指導(dǎo)的情況下自學(xué)編碼的,所以走了很多彎路,也犯了不少錯(cuò)誤。最初我寫程序全憑自己的感覺,寫一個(gè)新程序?qū)Y(jié)構(gòu)設(shè)計(jì)不很重視,以為學(xué)好語言,數(shù)據(jù)結(jié)構(gòu)就可以寫出好的程序,其實(shí)遠(yuǎn)不是這樣的。沒有設(shè)計(jì)的情況下,也可以寫,但是程序無法寫的很大、很復(fù)雜。我個(gè)人的經(jīng)驗(yàn)是這樣的系統(tǒng)超過8000行我就無法控制了,以前我用VC寫過一個(gè)Windows下的應(yīng)用程序,大概8000行左右我對(duì)它失去了控制,整個(gè)代碼一團(tuán)糟,這8000行倒是可以相對(duì)穩(wěn)定的運(yùn)行,但是我沒有能力再增加什么新的代碼,動(dòng)輒前后沖突,要么就是新代碼與舊設(shè)計(jì)格格不入,需要調(diào)整舊的程序。最開始我寫程序喜歡追求代碼的精巧,別人很多行寫出來的代碼自己只寫很少就可以實(shí)現(xiàn),感覺那樣比較酷。其實(shí)這樣也是非常錯(cuò)誤的,我現(xiàn)在寫程序非常注重結(jié)構(gòu)設(shè)計(jì),為了結(jié)構(gòu)清晰我愿意犧牲一點(diǎn)效率。 下面一段話是我寫程序的座右銘,希望與大家共勉: Make it right before you make it faster. Keep it right when you make it faster. Make it clear before you make it faster. Do not sacrifice clarity for small gains in efficiency. Brian Kernighan 另外補(bǔ)充一點(diǎn):我和我的女朋友現(xiàn)在非常好,雙方的家人都認(rèn)可了,我們決定在近期結(jié)婚。
posted on 2009-08-02 00:00
劉之遠(yuǎn) 閱讀(204)
評(píng)論(0) 編輯 收藏 引用