我從學習計算機到現在(2013年初補充版)
畢業快4年了,這個文章該改改了,我從學習計算機開始(2004)到現在應該還不到8年時間,也許對於很多人來說這個時間較短的了,但是這幾年以來對於我來說算是對於人生的改變,從一個地方的小農村沒見過電腦考入一個“很戳”的師範大學內部新辦的一個軟件學院,但是對於當時的我來說隻要有大學讀就不錯了,我也沒考慮太多,就決定去念了,當時對於電腦的概念是盲目的,沒有任何概念,幾乎可以說是一無所知,我還記得和同學一起參加入學考試的時候因為在電腦上麵考試,我問他們怎麼用電腦,同學叫我用鼠標對著正確答案點,我反問他:什麼是鼠標呀!當時周圍幾個同學還開玩笑說:你連鼠標都不知道是什麼來學計算機,當時這句話雖然是玩笑話,不過對於性格較強硬的我來說無疑是重重的一擊,我隻能在默默中學習計算機基礎,認識計算機世界。
大一第一學習我幾乎聽不懂老師講的課程,對於計算機基礎可能有幾節課我還能聽懂一點點了,但是對於C語言課程我真是一點都聽不懂,期末考試把書翻了好幾遍,隻是為了考試,考還雖然是考過了,不過真正的知識並沒有學到;不過由於這學期大部分時間都在學習計算機基礎,加上自己英語本身就很爛,所以英語掛科了,這也算是我大學唯一一次掛科了;這種事情對從農村出來的我來說,有些對不起我的家裏人,這也作為我在大學的一個恥辱,我當時下定決定決心,如果第二學期再掛科,就放棄大學了;大一第二學期我靜靜的學習計算機基礎,並把C語言從新翻出來學習,反複看,不過因為自己當時沒有買電腦,隻是自己空想空思考,對於很多東西還是比較茫然;但多少是覺得有點感覺了,知道一些東西了,那學期英語也沒有掛科了,算是比較平靜的一學期了;逐漸的敲開了一些思路,畢竟完事開頭難,有了思路,後麵很多事情就好說了。
大二第一學期開始學習C++語言,由於自己一直沒有間斷過學習C語言,所以對於C++上課我基本沒有問題了,我如果沒有記錯的話,是開學一個月(05年的10月份),處於對C++學習的衝動,我管家裏麵要了3500塊錢去買了一個台式機,然後開始練習C++,每天練習,從不間斷,從我第一天調試通過第一個程序我一個晚上沒有睡著以後,每天開始增加代碼量,從每天幾十行到幾百行到每天一兩千行,先按照書上的代碼寫,然後自己想一些邏輯來寫,瘋狂於C和C++編程,那邊的課程設計也是自己從頭到尾寫了一萬多行代碼,也成為年級中編碼的幾個佼佼者之一,當時也對自己學好計算機有了信心;自己開始癡迷於編程,就連過年回家,寒暑假也從不間斷編碼,這也許就是一種興趣愛好吧;在大學寢室,同寢室的幾個玩遊戲玩的轟轟烈烈,我也視若無物,完全瘋狂於編碼中;大二下半學期比較有影響的就是學習數據結構、操作係統等,當時接觸到經典算法的總結,從基本編碼找到了一些技巧性的路子;出於個人對編程的愛好,數據結構內部隻要描述過的算法,基本都用C++寫過一次,數據結構老師也蠻看我我,對我也有一些指導,在編寫數據結構算法過程中,也逐漸包含了一些自己的思想在裏麵。
大二下半學期也算是我轉折點吧,由於大二上半學期自己的C++已經在學院都有點出名了,和我同級幾個編碼佼佼者(大二上半學期自己編寫課程設計能超過5K代碼的同學)我們幾個相互組織在一起作為一個興趣小組在一起學習和研究,當然那個時候隻是小打小鬧,不過我們白手,起家萬事總是有一個過程,沒有一步登天的,而且在大二後的經曆,也都是我們是自己一手創建自己的平台,不論成功與失敗這都是來之不易的閱曆,我們幾個都是性情中人,想到什麼問題和見解就要去問老師,在一次偶然的機會中,一個老師看中了我們,他準備帶我們,在當學期的畢業設計中,老師考驗過我們;一個禮拜從不會JAVA到自己編寫一個老師指定的JAVA程序(其實就現在來看,這也是蠻有含量的),然後還要做PPT、WORD等相關文檔以備課程設計的答辯,我當時真的認為自己完不成,因為還要複習期末考試,結果通過大家努力,一邊複習期末考試、一邊學JAVA編碼、一邊做、一邊寫文檔,還真搞定了,我第一次對我所在的團隊充滿信心,因為每個人都在為之而努力奮鬥;但是,我們同時也從此幾乎告別C語言,一定程度上告別了算法,走上JAVA之路,至於JAVA和C有何區別,在學習過程的過程,我就不多說了,這些都是學習過程中品出來的,言傳出來的隻是皮毛上的區別而已。
大三之後幾乎完全進入了實踐,導師基本給我將所有的課程都請了假,在一個實驗室內做各類項目,從學院的信息化辦公軟件,到學校外的一些應用軟件,小的是一些動態網站,大大小小做了十多二十個,所有的東西都是我們從一無所知開始一手搭建起來的,包含工作流引擎、自定義框架等,而且中間無論大小項目都給我們帶來過很多挑戰(如大三時幾個同學連續兩天給緊急完成了一個全動態的網站平台並直接提供使用,等等事情現在還是曆曆在目);雖然那些東西對於現在我來說已經比較簡單了,但是還是蠻實用的,同時為我自己的成長也鋪開了一些路,而且這是自己我創新意識的結晶,也是磨練能力和意誌的過程;我一直到畢業一直都在實驗室做事情,大四有出去兼職和實習過;在大學實驗室裏麵主要和導師一些學習數據庫,開發軟件也主要做數據庫這塊,開發過程主要用SQL SERVER,也有根據實際情況用ORACLE的。
大四雖然也在實驗室做事情,但由於自己有徒弟(學弟吧,隻是我教他一些東西而已,嗬嗬),所以事情要少很多,上半期我就在學校外找了一家做ERP的小公司做兼職的數據庫管理員,這雖然是家小公司,不過蠻看得起我的,我還是沒畢業的學生,別人把他們項目裏麵的數據庫結構設計、管理以及優化工作都交給我來做了,我當時也是初入世道,不知道天高地厚,認為自己的數據庫已經很強了,別人給我這些工作我毫不猶豫的就接受了,不過也算是緣分或者說機會吧,不給壓力我也不能成長,我將那些事情做的還算可以,在這家公司我學到最多的知識就是公式化計算,也為自己後來的抽象問題的思路提供基礎參考,細節就不多扯。
大四下半學期,我覺得自己剛畢業想去大公司見一見世麵,辭掉了那家兼職的工作,準備去找一個大公司;在找尋大公司的路上,由於我個人的英語、學曆、學校的問題幾經波折,才進入一家較大的軟件企業實習,實習期間我很快被導師發現了我的能力,在一個實習班上很快的成為老大,自己也覺得蠻欣慰的,回去給學校老師說他們也挺高興的,因為我們畢竟來自很差的學校,其他還有很多好學校的學生,在同一個平台下我們成為了佼佼者;不過在一個地方做事情不論自己的技術和層次如何,我認為自我謹慎是永遠不動搖的,過於迷信技術和過於相信自己很容易出問題,不論以前有多少次成功,下一次一樣謹慎的對待任何一個細節,並在問題解決中得到經驗和成長,這也是通過我在自我成長過程中以及和好大學學生的氣質對比中得到的結論。
畢業了,至於畢業的一些傷心事我就不提了,我繼續到那家實習公司去試用了,在試用期三月中也算是我技術升華的三月,因為那三月我雖然在公司實習,而且也有項目在做,但是那段時間不知道為什麼,事情真的很少,我開始很無聊,非常無聊,在那邊下班後同事都各自回家,我在不遠處自己租了個房間,沒有朋友和同學和我一起,時間長了閑無聊就開始用各種方式解悶,最終走上老路,開始學習技術,這三個月將很多SUN源碼拿出來看,並根據其內核思想和自己以前的項目經驗去提升,並去做相關的驗證,當時還買了一本很牛的ORACLE書籍來研究,三月下來,自己對軟件架構的認識達升華到另一個層次了,對於軟件開發過程比以前更加有信心,從隻研究數據庫到應用係統和數據庫的整體架構,從對數據庫應用摸索內核,到內核印證實踐,我也無時無刻感覺自己在每天的快速成長著。
實習完後我到了公司指定的另外的地方去上班,我去了公司指定的那個項目後,過了三四天我就發現那個項目眼看就快要失敗了(項目拖快6個月了,很多外部的界麵都看不到,大部分界麵都是靜態的,流程也跑不通),而且也是公司在那個城市最大的一個項目,也是公司在當地想砸開市場的一個項目吧,我當時很盲目,因為沒見過拖這麼長時間的項目;出於我個人對軟件開發的衝動,我以自身做起,能帶動多少團隊的激情就帶動多少,我們夜以繼日的加班趕工,隻要用戶沒說放棄我們,我們就要搶下時間給堅決拿上去,我認為這是我們作為軟件開發人員的職業素養之一,終於在一個月後將項目成功上線,至於細節這裏不多提了;隨著在項目組時間的增加,我雖然是一個新人,但是逐漸在項目組中的技術和業務的說話權具有了威信,就算是項目經理要做一個比較全麵性的東西基本也要問一下我,我感到很欣慰,自己在大學的堅持並沒有白費,在項目組內部一段時間隻要出現相關較為重要的問題也是親自解決,不懂就學,學完就用,用完再學,不斷反複,一年中我對那個公司內部很多東西已經比較熟悉,對於項目內部就更加不用多說了,大學所學得到淩厲精致的發揮,我發現最終落實於基礎,不論如何實踐、如何理論,最終落實到課本,理論基礎真的很重要,大學課本中諸多前人的經典思想和解決方案都是世界級的,隻要細細挖掘,諸多知識和思想可以在軟件設計和問題解決方案上變得非常清晰和容易,不過由於種種原因(主要是待遇和用人觀念上)我去年跳巢到了另一家。
09年6月我進入了另一家公司,是電信行業,我接觸到了新的業務領域和開發模式,我開始有點不適應,畢竟在老公司自己說話比較算數,而且新公司的業務知識真的一點都不懂,現在又從零開始,也不知道自己是否還有激情去創造和發揮,不過我自己既然選擇了,就應該盡力而為,而且個性很強的我從來不走回頭路;在新公司我接觸到很多工作十多年的牛人,我給他們說起了我的一些問題看法和思路,他們也給我說一些他們的經驗之談,我在知識體係上彌補了很多缺陷,在軟件產品化的設計思想上,有了新的突破,逐漸發現到一個行業內部的產品軟件並非不可以產品化,即使個性化業務,都是可以做成產品的,從不同抽象層次和抽象側麵去提取問題的各個分析切入點,將個性化做成平麵,以不變應對萬變;在新公司的開發軟件思路和以前的公司截然不同,各有各的優勢,項目運營方式和階段而已;我個人在技術上也逐漸的更加成熟起來,尤其在ORACLE方麵的學習,也在逐個性能問題的解決過程中逐步加深和鞏固,使得個人在理論認識和實踐閑的密不可分;我現在也在不斷的超越自己超越現實,隻有不斷學習、創造、實踐,才能不斷進步;其實這不為什麼,隻為一句:這是我的職業;同樣我很快成為了佼佼者之一,並且在這個公司各方麵的待遇都還算是比較滿意的,不過另外離開這家公司的最後原因是腐敗,或許很多人覺得這樣的環境蠻好的,不過對我來講可能不算好吧,因為追求的東西不一樣,至少我在畢業不到2年的時間內,還不想把自己的思想搞得那麼腐敗,成天至少有一半以上的時間是閑聊之事或者喝酒啥的,一年下來自己感覺技術層麵退化得很嚴重,除了一些經驗上的成長外,在技術本質層麵,很多方麵還不如一年前的能力了;於是我最終選擇離開,而且離開我選擇了給我薪水最低的單位,比當時我的待遇還要低很多,考慮的原因當然不僅僅為待遇而生存,因為現在追求的是技術和綜合素養的提升,另外也有給我開除高薪offer的單位,我拒絕了,因為都是同行業的,我選擇了跨行業,我選擇了互聯網,因為互聯網的技術吸引了我,所以我選擇了一個我毫無經驗的行業,雖然我還有點技術功底去參加麵試,不過由於技術能力已經和我的工齡不太成正比了,所以隻是勉強通過了麵試,我想要是當時要不是他們缺人我是進不去的,嗬嗬,我完全是以一個剛畢業的學生的級別進去這家公司,不過我還是很情願的進來了,或許丟掉了一些經驗上的東西,而且我在來之前也是有將自己清空大腦的想法和過程,甚至於真的丟掉了一些思想,因為我知道我應該可以比現在更好。
2010年年底我正式轉型到互聯網,做的事情怎麼說呢,到目前為止來講有點雜,技術層麵的提升也是畢業後前所未有的,雖然起點低,不過我也很快的成長了起來,逐步超越了過去,找回了曾經瘋狂於技術的自我,有點雜對於第一年進來的我來講應該算是機會吧,因為沒有麵上擴展,點上的深入可能性並不是很大;麵上的擴展更多的是帶來生產力的提升,而點上的突破更多的在自我修為和功力境界的提高,也從那個時候開始我逐步開始找到自己所需要的方向和空間!
互聯網的兩年中,我成長了許多,一年所做與所見比以前好幾年要多要好,個人成長也是自己可以看得見摸得著的,這裏,技術牛人層出不窮,更加有業界各個領域的頂尖級高手,和他們的接觸使得我自己既興奮又感到卑微,也更加促進自我去成長,去深入挖掘,有這樣一個open的平台,使得自己有更多的機會去挖掘更加精深的技術奧秘,同時也能有機會去實踐和創造。
2013年3月補充版
在投身互聯網後,剛開始的一年多,我開始發現天外有天,人外有人,同時我也看到人生的希望和目標,因為我終於發現了有一群和我一樣執著於技術的人,而且在這裏他們默默的奉獻,且產生了巨大的價值,同時自身也可以獲得不錯的報酬;我學習到了很多很多從來沒接觸過的技術,從分布式計算、數據庫、網絡、高並發,再到CPU、內存、磁盤等等技術,並且由他們衍生出的結束無窮無盡,於是乎,我在一段長期的時間內,陷入了技術狂秘者,我瘋狂的追求這些東西;
時間長了,當我在麵上鋪開後,我發現任何人不可能在所有領域去深入,當然知道是必要的,要深入挖掘一定要找到方向,這樣才能有足夠的精力和時間來做,雖然技術是相互關聯的,不過非深入挖掘方向的技術其實是可以達到一般的水平,知道是什麼在做什麼,有什麼就好了;
於是,在最近的一年多以來,我開始在不斷摸索自己的方向到底是什麼,因為以前興趣太廣,什麼都想學,什麼都是半斤水,但是什麼都懂的感覺;在不斷的糾結中,我選定了老路java,因為我逐漸的發現java並不是像我當初那樣沒前途或簡單,他內部也有很多吸引我們這些技術人員去研究和發現的東西,由於java程序員很多,所以技術更多服務於業界的程序員,幫助業界去做更好的軟件,在java的jvm、juc、byte code、java io等技術層麵有了較為深入的認識,這也是我自學習技術來,第一次開始真正認可自己的技術,因為這個時候真的可以很徹底的看透一些東西;同時在java的分布式計算和高並發上的認識和經驗,在基於服務的社會中,我也站在服務者的角度去思考我應當如何去研發自己的產品去創新自己的產品來服務自己的周邊人員,服務於企業和社會,以業務為驅動,技術來解決我們的核心價值問題,也使得自己的技術擁有了很多用武之地;
2012年年底自己感覺開始對社會和世界開始有些成熟,我結婚了,老婆懷孕了,未來麵對的是一個家庭,父母、孩子、老婆、老婆的父母,一個人將麵臨整個家庭的壓力,不過一個家庭同時也會給我個人心裏上的支持,因此在我成長的道路上將會更加具有動力,還是那句,我還是那麼擁有激情,我同時願意為技術奉獻自我,因為我知道自己所做的事情是在為誰而服務,它所產生的價值是什麼,技術追求也不會改變,因為他不僅僅是我經濟收入的來源,更加讓我體會到社會的變更,必須讓我們也去不斷的改變,才能與時俱進,自己能與時俱進,也同時證明自己在社會中的價值所在,這同時也是任何一個搞技術的人來講,一種成就感的來源和動力。
最後更新:2017-04-02 04:26:02