|
最近博客園里程序員過(guò)30歲能不能再寫程序的帖子好像又火起來(lái)了。當(dāng)年我剛?cè)胄凶鯥T,看到的這類帖子,嚇得不得了——差點(diǎn)就放棄了,還好我膽子大。所以今天有空,再看到這樣的帖子,總是忍不住要多說(shuō)幾句。
我大學(xué)里學(xué)的專業(yè)是國(guó)際貿(mào)易,畢業(yè)后主要是做律師,也比較深入的涉足過(guò)裝飾行業(yè),幾年前轉(zhuǎn)行做了IT。
所以,我想,關(guān)于這個(gè)話題,我能給大家一個(gè)不同視角的啟示。當(dāng)然,個(gè)人意見(jiàn),僅供參考,這本來(lái)就是一個(gè)仁者見(jiàn)仁,智者見(jiàn)智的話題。
下面我就以下一些常見(jiàn)的觀點(diǎn)逐個(gè)的談一談。
1. 程序員的門檻低。
這我承認(rèn),我就是一個(gè)例子,呵呵,很多人罵的那種“進(jìn)來(lái)?yè)屃四銈冿埻?rdquo;的人。當(dāng)年找工作的時(shí)候,很怕別人問(wèn)我的專業(yè),感覺(jué)低人一等。結(jié)果進(jìn)來(lái)了,才發(fā)現(xiàn),很多同事,原來(lái)都不是科班出身,而且他們做得很好!
所以很多人就開(kāi)始自怨自艾,當(dāng)初選錯(cuò)了專業(yè),自己辛辛苦苦學(xué)了4年,結(jié)果出來(lái)什么都不是了……
但我想問(wèn)的是:
1.1 哪一種職業(yè)的門檻高?
就我所經(jīng)歷過(guò)的所有職業(yè)(國(guó)際貿(mào)易、英語(yǔ)教師、律師、室內(nèi)裝飾)而言,程序員的門檻是最高的了!我們所處的是一個(gè)開(kāi)放的社會(huì)啊!只要你愿意學(xué),其實(shí)沒(méi)有多少是你學(xué)不會(huì)的。農(nóng)民都可以造飛機(jī)呀?!
1.2 你是不是真的在大學(xué)“辛辛苦苦”的學(xué)了4年?之所以有這樣的懷疑,第一,我4年大學(xué),純粹是混過(guò)來(lái)的,包括幾乎我所有的同學(xué);第二,我考“軟設(shè)”的時(shí)候,才發(fā)現(xiàn),掛掉的,很多都是科班生(當(dāng)然,他們可能才大一、大二,或者沒(méi)有像我一樣“應(yīng)試”);第三,我知道有一些計(jì)算機(jī)專業(yè)的學(xué)生,大三大四的時(shí)候就已經(jīng)有很高的技術(shù)水平,并藉此小有收入了,讓我直后悔,當(dāng)時(shí)要是我學(xué)計(jì)算機(jī)……
2. 程序員干的是體力活。
說(shuō)這話的同學(xué),說(shuō)的無(wú)非就是“加班”和“沒(méi)技術(shù)含量”。
我仍然想問(wèn)的是:
2.1 有多少職業(yè)不加班?我爸做建筑,我做裝飾的時(shí)候,趕進(jìn)度,睡工棚,通宵達(dá)旦,是常事。我弟弟,當(dāng)公務(wù)員,周末出差還沒(méi)得調(diào)休,聽(tīng)說(shuō)我加了班還有調(diào)休,都要跳起來(lái)了。
2.2 據(jù)說(shuō)微軟不加班、Google不加班,為什么你不去,或者你去不了?為什么你的工作沒(méi)“技術(shù)含量”?換過(guò)來(lái)想,你問(wèn)一問(wèn),微軟、Google的技術(shù)員下班之后都在干什么?(如果有人剛好是微軟、Google的,回個(gè)話,呵呵)
3. 中國(guó)現(xiàn)在軟件行業(yè)狀況太惡劣了。
我仍然想問(wèn)的是:
3.1 略。
3.2 你為這個(gè)惡劣的軟件行業(yè)做過(guò)什么?這聽(tīng)上去要求有點(diǎn)高,但實(shí)際上,你多寫一份文檔、多規(guī)范一行代碼,多寫一篇技術(shù)博客……這些都可以是你的貢獻(xiàn)。不積跬步,無(wú)以致千里。正是由于我們每一個(gè)人的努力,每一份微薄的貢獻(xiàn),才促使我們的生活一天一天的好起來(lái)。
這里我想多說(shuō)幾句,幾年前,因?yàn)橥瑯拥脑?mdash;—對(duì)中國(guó)法治環(huán)境的厭惡,我離開(kāi)了我曾經(jīng)摯愛(ài)的律師工作。幾年后,尤其是昨天,看到重慶涉黑案中律師李莊和他的辯護(hù)律師陳有西,為心中的公平和正義的信念,所承受的犧牲,所表現(xiàn)出來(lái)的錚錚鐵骨,以及由此而綻放的人性、智慧和法治的光芒,讓我明白,我可悲的放棄和背叛。
4. 軟件行業(yè)技術(shù)更新快。
所以,年齡大的程序員的經(jīng)驗(yàn)積累沒(méi)有用,干了10年8年,又得回頭和小伙子拼技術(shù)。
我仍然想問(wèn)的是:
4.1 還是略!
4.2 不知道大家有沒(méi)有想過(guò),在日新月異的計(jì)算機(jī)技術(shù)中,有沒(méi)有不變的東西?我見(jiàn)過(guò)的最常見(jiàn)的答復(fù)是,“有,算法(思想/數(shù)據(jù)結(jié)構(gòu)),算法是不會(huì)過(guò)時(shí)的”;然后很多人開(kāi)始鉆研算法,但一會(huì)就有人冒出來(lái)了,“大家在實(shí)際工作中究竟有沒(méi)有用到過(guò)算法喲?”,而回答常常會(huì)令他們很傷心。(這個(gè)有時(shí)間另行談?wù)摚?/p>
就我的理解,和任何技術(shù)一樣,軟件開(kāi)發(fā)技術(shù)一樣是要講積累的!
我是一開(kāi)始就學(xué)C#、ASP.NET的,但學(xué)到一定的時(shí)候,我自己都知道,再也學(xué)不下去了。一些基本的概念,你根本無(wú)法理解:引用類型/值類型?編譯時(shí)/運(yùn)行時(shí)?hash是什么?cookie/session是什么?為什么要分層?設(shè)計(jì)模式用來(lái)干嘛……這些知識(shí),不是買幾本《ASP.NET2.0入門》,《C#高級(jí)編程》之類的書可以解決的。
進(jìn)入工作之后,你發(fā)現(xiàn)問(wèn)題更多:你一天都搞不定的bug,老程序員幾分鐘就搞定了;你絞盡腦汁也想不到的實(shí)現(xiàn)方式,老程序員眼睛都不眨一下,就有了思路;客戶的需求文檔,你覺(jué)得爛得像狗屎一樣,根本就狗屁不通,但老程序員拿到就可以開(kāi)始做……差距啊!
據(jù)我所知,C語(yǔ)言就有指針,ASP就有cookie和session,學(xué)JavaScript就應(yīng)該知道什么是解釋執(zhí)行,了解hash是數(shù)據(jù)結(jié)構(gòu)的基本功;完全可以想象,有了這些積累之后,學(xué)C#、ASP.NET是不是更容易得多?
忘了誰(shuí)說(shuō)過(guò)(好像是金旭亮老師),“沒(méi)有寫過(guò)10萬(wàn)行代碼,就不要談設(shè)計(jì)模式”,對(duì)于軟件工程的深刻理解,絕對(duì)是需要長(zhǎng)久的工作經(jīng)驗(yàn)的浸淫的?當(dāng)你被客戶不斷變化的需求折磨得快瘋了的時(shí)候,你一定會(huì)理解為什么需要設(shè)計(jì)模式;當(dāng)你在ASP頁(yè)面里面找代碼找到眼淚都流出來(lái)的做時(shí)候,你一定會(huì)明白ASP.NET的codebehind、控件開(kāi)發(fā)的必要性。
如果你發(fā)現(xiàn)你工作5年10年之后,你還沒(méi)有一個(gè)剛畢業(yè)的小伙子學(xué)新技術(shù)快,沒(méi)他學(xué)得好(理解的深度也相當(dāng)重要),那可能有兩種情況:這小伙子天賦異稟,絕對(duì)屬于牛人級(jí)別的,這種情況你就認(rèn)命吧,幾萬(wàn)分之一的牛人都被你遇上了;另一種情況就是你這5年10年都白混了!
其實(shí),在學(xué)習(xí)的道路上,沒(méi)有多少捷徑可走,“絕知此事要躬行”!很多人回憶他們的成長(zhǎng)經(jīng)歷,都會(huì)覺(jué)得自己當(dāng)年走了不少?gòu)澛贰5溃憬裉炷苷J(rèn)識(shí)到那是彎路,這就是你現(xiàn)在和過(guò)去不同的地方!
不知道大家有沒(méi)有想過(guò),一個(gè)程序員,怎么樣才算“好”?會(huì)一種誰(shuí)也不會(huì)的語(yǔ)言?懂一種誰(shuí)也不懂的算法?知道一種誰(shuí)也不知道的設(shè)計(jì)模式?……其實(shí)不是,至少我認(rèn)為不是。
一個(gè)優(yōu)秀的程序員,他的氣質(zhì)是內(nèi)實(shí)而外溢的。
他基礎(chǔ)扎實(shí),多年的孜孜以求,使他的根須,又深又密,他可以汲取一切可以汲取的知識(shí),來(lái)供給他枝繁葉茂的成長(zhǎng);
他經(jīng)驗(yàn)豐富,閱歷廣闊,見(jiàn)證了計(jì)算機(jī)技術(shù)的滄桑變遷,無(wú)論成功或失敗,他都有所收獲;
他成竹在胸,所以淡定而從容,他沒(méi)有什么抱怨,只有幾許堅(jiān)持;
他熱愛(ài),所以他執(zhí)著,所以他樂(lè)于分享;
而這所有的一切,都需要?dú)q月的洗禮,執(zhí)著的堅(jiān)持,不懈的奮斗。否則,何謂“沉淀”?
中國(guó)的軟件開(kāi)發(fā)起步很晚,可能最早的一批程序員也是在80年代末90年代初才走上工作崗位,而蓬勃興起,應(yīng)該是在90年代末了。所以做IT的,大多數(shù)人看上去,都很年輕。但即使這樣,他們中的很多人都應(yīng)該已過(guò)而立之年。他們,都失業(yè)了嗎?都轉(zhuǎn)行了么?很想做一個(gè)調(diào)查,但僅就我目所能及,他們,都在各自工作崗位上發(fā)揮著無(wú)可替代的作用。
話說(shuō)得很刻薄,但不如此,恐怕會(huì)有更多的年輕人背負(fù)莫名的恐懼和猶豫,而忘了,前行,是驅(qū)散前方陰霾的唯一手段。
it知識(shí)庫(kù):程序員30過(guò)后,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。