[轉載]十年編程經驗凝結 與新人們分享

來源:互聯網
上載者:User

轉載]http://blog.csdn.net/ljc3046/archive/2007/05/08/1600426.aspx

有天和朋友聊天,朋友是國內一家大型互連網企業的一位技術主管,朋友把他將近十年研發工作積累的心血總結成兩點,這兩點朋友剛一提出來我並沒有馬上明白,只是大約有這麼一個概念,我還沒達到朋友在技術領域的那種高度,不能徹底領悟他深刻的思想。但我想與眾多剛剛踏入IT技術研發領域的新人們分享一下這位朋友的思想,我盡全力來解釋闡述朋友的話語,希望能給大家帶來一些啟發。

第一點是:不斷抽象已知的東西。現實生活總是包括很多零散的東西,待解決的問題不會只有一面,所以抽取零散東西的共同屬性,彙總不同角度的同一面向,成為從問題領域進入編程領域的第一步。抽象的層次越高,你架構設計就越簡單。

第二點是:面對未知的東西用已有的抽象經驗來類比體驗,從而不斷調整直至達到可以控制未知東西的程度。有了上面第一點的基礎,才可能到達這第二點的境界。現實問題總是不斷變化著的推陳出新的,從未知到半知到已知,是人認識客觀世界的一個過程,恰如人生從天真到懵懂到成熟的過程。

天才是什嗎?聊著聊著我們突然說到比爾蓋茨,說到那些天才駭客,朋友和我都很興奮。我問朋友,從他總結的兩點來看天才是怎麼實踐這兩點的?朋友想了一下說,天才就是生來就有那種抽象的能力,他並不一定局限於電腦領域的空間來看待問題,他擁有從這個世界其他領域來類比體驗電腦領域的天賦,他甚而可以抽象整個世界。

朋友的思想太博大高深,如我這般入行不久的初級程式員怎能領會?但我還是裝作深有體會的不斷點頭,同時把朋友從山巔拉到山腳下。我說:“你說得太抽象了,不如你告訴一個起步階段的程式員應該怎麼慢慢通過實踐來逐步達到這種境界吧。”我知道朋友在這方面頗有體會,他以前曾跟我提起他畢業後在第一家公司是怎麼接受錘鍊的。果然朋友很快開始闡述:“很簡單,起步階段就是專心的模仿。切記不要被那些亂七八糟的東西晃花了眼,什麼j2ee與.net之爭,什麼soa的革命等等,你不要去關心這些東西。當你在公司上班時,會有這樣一個矛盾,當你完成公司交待的一個任務時,你可能為了儘快完成任務用了很多別人現成的架構。這本身沒問題,但何謂專心的模仿?就是說你在工作之餘,需要來研究這些架構,你可以不用這些架構,而是用最原始的方式來寫,你會慢慢體會到架構的約束,進而有對架構進行改進的慾望。但是最終你也會發現:其實任何一個架構都比你自己寫的要好。然而在你不斷模仿的同時你就得到不斷的提高。”朋友越講越起勁,又開始分析高手和低手在起步階段的差異,“其實所謂學得快,所謂高手,就是說他在模仿的過程中不斷比較自己寫的東西和架構本身的差異,不斷髮現問題,想盡辦法解決問題,思考得越多,你碰到的問題就會越多,這是一個正向迴圈,最終你的技術能力就會螺旋式的上升;而低手只會被動的等待問題,一旦問題自己覺得解決得差不多就放下了,這樣自然就不會產生更多的問題,最終技術能力就始終停留在那個菜鳥階段。”

 

朋友的話讓我慚愧不已,我就是典型的不求甚解啊,問題解決得差不多就行,能運行就萬歲,總是不去深究,這樣給系統留下多大的隱患啊,而且也是對自己極大的不負責任。

聊完了技術方面的東西,我們想聊點輕鬆的,但是話題仍然離不開那些搞技術的新人們。朋友正好最近替公司招聘人才,面試了很多名校的電腦相關專業的一些畢業生。朋友說他們技術功底不夠紮實,我說他們除了這個,心態也很浮躁,恨不得一參加工作就拿大幾千的工資,一進公司就做專案經理,太眼高手低。朋友也深有同感,說面試的時候就有一種怪怪的感覺,而且朋友進一步將這種心態問題提升到編程提升到認識論的高度,“其實我覺得他們本質上是一個不能夠正確認識自己的問題。認識論其實很簡單,首先認識問題,然後解決問題。你說你想做專案經理,那麼你需要具備哪些技能,技術上的,管理上的等,你需要多長時間來磨鍊這些技能等。編程不也就是這樣嘛,認識問題,抽象問題,進行設計編碼最終解決問題,其實做所有的事情都是如此。”

跟朋友的這番聊天讓我受益匪淺,而讓我感受最深的不是上面提及的這些關於編程和心態兩方面的道理,而是我體會到:技術人員並不像人們想象中的那麼呆板,每個人都在以自己的方式活著,不斷參悟人生的玄妙,而技術人員以一種更為奇特的方式和電腦搏鬥,付出了更多的心血,當然體悟得也更加深刻,付出了更多的心血,當然體悟得也更加深刻,然而最終每個人都會殊途同歸

本文來自CSDN部落格,轉載請標明出處:http://blog.csdn.net/xcntime/archive/2009/04/25/4121419.aspx

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.