[導(dǎo)讀]這篇文章是在雷總個(gè)人博客看到的,里面聊到了他作為程序員的一些經(jīng)歷、初衷以及思考。寫的不錯(cuò),轉(zhuǎn)來給大家看看。如果程序人生的話,這條路太漫長(zhǎng)我并非天生喜歡寫程序,上高中時(shí)也沒有想過程序員的生活。我學(xué)電腦非常偶然,小時(shí)好友上大學(xué)時(shí)選擇了計(jì)算機(jī)系,為了和這個(gè)朋友有更多的共同語言,我也選擇...
這篇文章是在雷總個(gè)人博客看到的,里面聊到了他作為程序員的一些經(jīng)歷、初衷以及思考。寫的不錯(cuò),轉(zhuǎn)來給大家看看。
如果程序人生的話,這條路太漫長(zhǎng)
我并非天生喜歡寫程序,上高中時(shí)也沒有想過程序員的生活。我學(xué)電腦非常偶然,小時(shí)好友上大學(xué)時(shí)選擇了計(jì)算機(jī)系,為了和這個(gè)朋友有更多的共同語言,我也選擇了計(jì)算機(jī)系,開始步入程序人生的道路。當(dāng)我學(xué)會(huì)一些后,發(fā)現(xiàn)自己特別喜歡寫程序。我是八七年上的武漢大學(xué)計(jì)算機(jī)系,大一下學(xué)期才有專業(yè)課。當(dāng)我有資格上機(jī)的時(shí)候,發(fā)現(xiàn)電腦世界太美妙,就一頭扎進(jìn)去。當(dāng)時(shí)用的是 Motorola 68000 (相當(dāng) 于 Intel 8088), 540K 的內(nèi)存,運(yùn)行的 UNIX 操作系統(tǒng),八個(gè)人一起用。大二學(xué)PC,又過了一學(xué)期,開始出現(xiàn)在老師的實(shí)驗(yàn)室,幫忙干活,當(dāng)時(shí)就寫了現(xiàn)在很多人用的 RI (RAMinit, 清內(nèi)存的小工具, 看來我還是最早一批寫 Shareware 的人)。又過了一個(gè)學(xué)期,開始和校外的公司接觸。大二暑假,也就是1989年8月,和一個(gè)朋友組建了 Yellow Rose 軟件小組,寫了我第一個(gè)商品軟件 BITLOK 0.99。后來自己創(chuàng)業(yè)辦過公司,也寫過一些其他的軟件。大學(xué)畢業(yè)后,分到研究所,不太適應(yīng)那里的氣氛,就在1992年初加入金山軟件,開始了職業(yè)程序員的生涯。后來成了金山軟件研發(fā)部門的主管,但我一直都是一線的程序員。編程的感受
程序員活在自己想象的王國(guó)里
我剛接觸電腦就發(fā)現(xiàn)電腦的妙處,電腦遠(yuǎn)沒有人那么復(fù)雜。如果你的程序?qū)懙煤?,你就可以和電腦處好關(guān)系,就可以指揮電腦干你想干的事。這個(gè)時(shí)候你是十足的主宰。每你坐在電腦面前,你就是在你的王國(guó)里巡行,這樣的日子簡(jiǎn)直就是天堂般的日子。電腦里的世界很大,編程人是活在自己想象的王國(guó)里。你可以想象到電腦里細(xì)微到每一個(gè)字節(jié)、每一個(gè)比特的東西。我愛編程這個(gè)工作,可以肯定我會(huì)干上一輩子
不少人認(rèn)為程序員最多干到三十五歲就可以收山換環(huán)境了,腦子也差不多該歇歇了,體力也不支了。并認(rèn)為寫程序是年輕人的事情,到了一定歲數(shù),估計(jì)沒什么人再當(dāng)程序員了。當(dāng)我剛有一點(diǎn)本事的時(shí)候,我也和大家一樣覺得編程辛苦,也想三十歲后干別的。當(dāng)我年長(zhǎng)一點(diǎn)后就發(fā)現(xiàn)了自己的無知。一個(gè)人大學(xué)畢業(yè)就二十一二歲,有點(diǎn)水平的時(shí)候可能二十五,接著就是過日子諸多事情。一切搞掂的時(shí)候,也許就是三十五歲。如果這樣的話,我們就不用選擇程序人生的道路。電腦進(jìn)入中國(guó)時(shí)間并不短,但真正大規(guī)模開始用,還是八五年 PC 開始的,因此國(guó)內(nèi)真正寫電腦程序的人最長(zhǎng)也就寫了十幾年(不知道是否還有這樣的人)。由于電腦應(yīng)用在國(guó)內(nèi)時(shí)間比較短,國(guó)內(nèi)開發(fā)的主力是三十五歲以下的年輕人為主。但這不表示程序員如同紅粉佳人般的容易衰老。美國(guó)主力工程師以三十四十多歲的人為主。開始的時(shí)候,我們覺得我們沒有什么不能做的(現(xiàn)在還能聽到這樣的豪言壯語),而且更要命的是好象我們特別聰明,特別適合開發(fā)軟件,比老外強(qiáng)得多。當(dāng)我們真正接觸那些杰出的開發(fā)人員的時(shí)候,發(fā)現(xiàn)他們太厲害了,都有十多年的開發(fā)經(jīng)驗(yàn)。雖然也有很多年輕人做了很多好東西,但決大多數(shù)的產(chǎn)品出自這些有豐富開發(fā)經(jīng)驗(yàn)的程序員的手。剛畢業(yè)的時(shí)候,編程不僅僅是愛好,而且也成了一輩子的工作。整天不知道寫些什么東西,覺得特別沒勁,找不到感覺,特別灰心。后來,才明白,只有全身心地投入,程序才會(huì)有感覺。寫程序的活特別費(fèi)腦子,也特別累,但我喜歡,可以肯定我會(huì)干上一輩子,雖然我沒有打算一生只干這一件事。用一生來編程序是一件既容易又困難的事。如果碌碌無為,為交差寫點(diǎn)程序,這樣的日子太好混了。但如果想全身心地寫程序,寫十年就不是一件容易的事?,F(xiàn)在我不少朋友都洗手了,有時(shí)我也想“用什么電腦呀,Windows 外的世界不是也很大嗎?”。面對(duì)電腦的時(shí)候,立刻頓悟:寫程序還是自己最擅長(zhǎng)的事,也是最喜歡的事。高級(jí)程序員不是追求的目標(biāo)
有的人學(xué)習(xí)編程技術(shù),是把高級(jí)程序員做為追求的目標(biāo),甚至是終身的奮斗目標(biāo)。后來參與了真正的商品化軟件開發(fā)后,反而困惑了,茫然了。一個(gè)人只要有韌性和靈性,有機(jī)會(huì)接觸并學(xué)習(xí)電腦的編程技術(shù),就會(huì)成為一個(gè)不錯(cuò)的程序員。剛開始寫程序,這時(shí)候?qū)W得多的人寫的好,到了后來,大家都上了一個(gè)層次,誰寫的好只取決于這個(gè)人是否細(xì)心、有韌性、有靈性。掌握多一點(diǎn)或少一點(diǎn),很快就能補(bǔ)上。成為一個(gè)高級(jí)程序員并不是件困難的事。當(dāng)我上學(xué)的時(shí)候,高級(jí)程序員也曾是我的目標(biāo),我希望我的技術(shù)能得到別人的承認(rèn)。后來發(fā)現(xiàn)無論多么高級(jí)的程序員都沒用,關(guān)鍵是你是否能夠出想法出產(chǎn)品,你的勞動(dòng)是否能被社會(huì)承認(rèn),能為社會(huì)創(chuàng)造財(cái)富。成為高級(jí)程序員絕對(duì)不是追求的目標(biāo)。編程不僅僅是技術(shù),還是藝術(shù)
有人認(rèn)為編程是一種熟練工種,也有人把編程說成是藝術(shù)創(chuàng)作。這兩種意見爭(zhēng)論比較激烈。我們換個(gè)工種來看,石匠應(yīng)該是熟練工種,屬于工人,更和藝術(shù)似乎沾不上邊。但正是這些石匠,給我們留下多少文物古跡,如樂山大佛、莫高窟等等。應(yīng)該說這些石匠給我們留下了無窮的文化財(cái)產(chǎn)?,F(xiàn)代軟件工業(yè)已具相當(dāng)規(guī)模,很多軟件的完成需要的是大兵團(tuán)作戰(zhàn)。一名普通程序員接受編寫某一模塊的任務(wù)后,往往只是寫代碼,發(fā)揮的余地很小。在大項(xiàng)目中,很多程序員只能了解到和自己所編模塊相關(guān)的很局部的細(xì)節(jié),另外還受到開發(fā)環(huán)境的限制,真的很難體會(huì)到自己在從事”藝術(shù)”創(chuàng)造,更多的時(shí)候是感到自己在從事重體力勞動(dòng)。有的時(shí)候還擔(dān)心自己苦苦參與的這個(gè)項(xiàng)目究竟有沒有意義,是不是在同類產(chǎn)品中有競(jìng)爭(zhēng)力,會(huì)不會(huì)開發(fā)出來以后就因?yàn)橛布陌l(fā)展,操作系統(tǒng)的換代而過時(shí)……我認(rèn)為編程的工作和石匠比較相似,有技術(shù)活,更多的是體力活。不管怎么說,寫出一個(gè)好軟件不是一件容易的事。這兩種想法都有片面性,編程應(yīng)該說兩種屬性都有。編程不僅僅是技術(shù),也還是藝術(shù)。編程是技術(shù)活,才有可能大規(guī)模進(jìn)行,才會(huì)有軟件工程和軟件工廠。也正是編程是藝術(shù),才會(huì)有如此多的好產(chǎn)品,讓大家如癡如醉。
欲知詳情,請(qǐng)下載word文檔
下載文檔
本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。