干程序員是一項(xiàng)很辛苦的工作,要成為一個(gè)高水平的程序員尤為艱難。這是因?yàn)橛?jì)算機(jī)軟件技術(shù)更新的速度越來越快,而這些技術(shù)大多來源于英語國家,我們在引進(jìn)這些技術(shù)時(shí)往往受到語言障礙的制約,嚴(yán)重影響到對新技術(shù)的理解和消化。

首先編程本身就依賴于英語,雖然現(xiàn)在技術(shù)的發(fā)展,可以使得某些開發(fā)工具在變量名和字段名中支持中文,但還未發(fā)現(xiàn)能夠完全使用中文的編程語句。

其次,軟件開發(fā)中的技術(shù)文檔和資料大都是來自英文,即使有翻譯好的,不是晦澀難懂,就是譯法混亂,比如:roll back就有“回滾”、“回退”、“返回”、“重算”等多種譯法,又如我們遇到翻譯后的術(shù)語“域”,往往不清楚譯者是根據(jù)“field”、 “region”還是“domain”所譯(如果閱讀原文則不存在這些問題)。

還有更重要的一點(diǎn),這就是等待譯文會嚴(yán)重影響我們掌握新技術(shù)的時(shí)間。通常,一本外版計(jì)算機(jī)圖書從獲得版權(quán)到翻譯出版要一年的時(shí)間。就算原作者消化新技術(shù)和寫作的時(shí)間最短為一年,那么加起來這已經(jīng)超過通常軟件版本的更新周期(軟件版本的更新周期一般是1年至2年),這意味著當(dāng)你通過閱讀翻譯資料掌握這一版本的軟件時(shí),可能該版本已經(jīng)淘汰至少是面臨淘汰。

當(dāng)然,這并不是說國內(nèi)沒有好的譯者和譯文,也不是說不能通過閱讀譯文來進(jìn)行學(xué)習(xí)。而是說通過別人翻譯的間接閱讀風(fēng)險(xiǎn)較大,如果能掌握計(jì)算機(jī)英語,利用第一手原文資料進(jìn)行學(xué)習(xí),除了效率之外,被誤導(dǎo)的風(fēng)險(xiǎn)較小。

因此,我們可以得出這樣的結(jié)論,干程序員這行實(shí)在是離不開英語。實(shí)際上,可以毫不夸張地說英語是IT的行業(yè)語言。由于英語的優(yōu)勢,印度、愛爾蘭等國的軟件業(yè)在國際上比我們更有競爭力,這并不是說我們的程序員在編程和開發(fā)能力上不如別人,而是在使用計(jì)算機(jī)英語水平上差距太大。在南京舉辦的一次高規(guī)格的軟件開發(fā)交流會上,就遇到過印度專家講課,英文翻譯譯不下去的情景,因?yàn)樘嗟腎T專用術(shù)語和縮略語以及很強(qiáng)的專業(yè)知識使得沒有計(jì)算機(jī)背景的英語專業(yè)翻譯無能為力,而在場的開發(fā)人員因?yàn)檎Z言障礙又無法和印度專家直接溝通,錯(cuò)過了一次極好的交流學(xué)習(xí)機(jī)會?,F(xiàn)在,已經(jīng)有越來越多的程序員意識到計(jì)算機(jī)英語的重要性了,這種壓力一方面來自進(jìn)一步向高級程序員或資深I(lǐng)T開發(fā)人員發(fā)展的需要,一方面來自于后起之秀不斷競爭的威脅。對于前者,沒有較好的計(jì)算機(jī)英語,能難進(jìn)一步發(fā)展,晉升到更高的技術(shù)職位;對于后者,不少大學(xué)已經(jīng)開始使用原版教科書進(jìn)行專業(yè)授課,畢業(yè)生的計(jì)算機(jī)英語水平實(shí)在是后生可畏,挑戰(zhàn)是不言而喻的。

那么,一個(gè)程序員應(yīng)該怎樣去學(xué)習(xí)和掌握計(jì)算機(jī)英語呢?是立即開始背英漢計(jì)算機(jī)字典還是先考完6級再考“托”考“G”?其實(shí),在下定決心之后最關(guān)鍵的是要搞清6個(gè)W,即:為什么學(xué)(why)、學(xué)什么(what)、怎樣學(xué)(how)、何時(shí)學(xué)(when)、何處學(xué)(where)、跟誰學(xué)(who)。下面我們就談一談這6個(gè)W。