1. 請軟體工程師進
一個老程序員的心裡話! (轉)
風雨十年:一個老程序員的心裡話!
曲折的實踐之路
1.希特勒地堡與cih病毒
99年4月,我來到北京參加研究生復試。復試完了之後就不回去了,我拿著一張光碟,裡面刻著我用vb和authorware3.5編的一個cool 3d的教學軟體,到處參加招聘會,開始了在北京的打工生涯。
說句實話,我心中真是一點底也沒有。北京人才濟濟,我一個三流大學的畢業生,又不是計算機專業的,有人要我嗎?
我在北京無依無靠,沒有任何一個親戚在北京,住成了大問題。北京這地方,錢太不經花,生活費用太高,我四處尋找便宜的地方住。後來,我在北京化工大學對面的招待所中租了個床位,每晚20元,地下室。這個招待所的地下室非常大,每天回去的時候,都要走過長長的曲曲折折的通道,加上那昏黃的燈泡,每次我都有走進了希特勒地堡的感覺。地下室里潮濕陰暗,不見天日。地下室里人員很雜,什麼人都有,永遠沒有一種安全的感覺,所幸的是我也是個窮光蛋,光腳的還怕穿鞋的?別人能呆我也能呆,唯一讓我擔心的是錢,沒錢,在北京連流落街頭都不夠格,立馬被收容去昌平篩沙。呵呵,我沒這種經歷,這是當時住一塊的一個外地要考北京中醫葯大學的博士生說的(我倆居然住到了一個屋裡,大家都沒錢,只能擠地下室,只是他老兄晚上打呼,我可真受了不少罪)。
日子一天天過去,袋裡的錢一天天少了,但工作還是沒著落,心中越來越慌,除去學費,來京時父母給我2000元,大哥資助我的1000元就是我當時的全部資金(3000元在北京能呆多久?!)。我當時訂了個計劃,留下500元保底,打死都不能動,要靠它作路費回家的。我當時說,一定得找到一家公司,再少的錢都干,只要有口飯吃,有張床讓我睡我就滿足了。
我一共應聘了四五家公司,最具傳奇色彩的是到西單附近一家公司的應聘經歷。那時,我帶去了我的作品,公司項目經理要看,於是我給他們演示,很奇怪,程序一打開就死機,一連兩台電腦都一樣,末了,兩台電腦都啟動不起來了。用瑞星一查,cih病毒——那天正是4月26日!於是,cih破壞了電腦主板的同時,也無情地摧毀了我的就業機會。還算老闆可憐我,沒要我賠。其實我當時快到山窮水盡的地步了,真要我出錢,我可能連家都回不了啦。陳盈豪(cih病毒的作者),你小子這么的聰明做什麼不行,偏要去做病毒,害人害已,弄得我連個飯碗也找不到,晚上回「希特勒地堡」,把這小子罵了無數次!
總算天無絕人之路,在我數著最後還剩餘600元錢的時候,終於有一家公司要我了,做中小學教育軟體,月薪1600。幹了兩星期,又給我在公司的倉庫挪開貨物,搭了個床位,我就在那住下了,慶幸再也不用到「希特勒地堡」里當沖鋒隊員了。每天下班後,我就睡在林立的大紙箱之中,如果來個地震,呵呵,我就埋在紙箱中了,休想爬得出來!
我幹得非常努力,第一個月工資開出來,扣掉個人所得稅,我拿了1500多元。你們不知道我拿到第一筆工資的感覺!這錢在很多人眼裡簡直不算錢,但對於一個沒工作近兩年,工作也一個月收入不到200的窮小子而言,就象陳佩斯小品中所演的:「我王老五活了一輩子,還從沒見過這么多錢啊!」。好笑嗎?我一點也不覺得好笑。我只是心酸,我到了28歲才可以用自己的知識與技能養活自己,再不用依靠父母和兄長的資助,才真正完全用自己的力量在社會上站起來,一個沒有經濟自立能力的人,只能是個不成熟的人,一個躺在父母身上的人,不是一個真正的男子漢!我當這樣的孬種當了28年!
我找到工作後向家裡寫過一封長信,信中講了我對父母平時不好意思說的很多心裡話,當時,我父親說,母親接到信都哭了。 我剛拿到工資,馬上打了個電話回家裡告訴母親,以緩解他們的焦慮,畢竟兒行千里母擔心啊!父母有退休金,一再表示不需要我贍養,而我再這樣不要臉下去,我還是人嗎?我就是從那時候開始,下定決心,從今往後,再不向家中要一分錢!今後三年讀書和生活的費用我一定要用自己的勞動來獲取。
2
--------------------------------------------------------------------------------
2 一個老程序員的心裡話!!
金錢帶給我的激動就是在那段時間,溫飽問題解決之後,金錢對我的誘惑就再沒有了,哪怕讓我一個月賺一萬,給套房子給我,也不可能再給我帶來幸福的感覺了,錢是重要的,但不能成為它的奴隸,家中不需要我負擔,我一個人有吃有喝,干著我喜歡的工作,足矣!
我在那公司一直干到九月學校開學為止。我走的那一天,公司居然還開了個歡送宴會,老闆封了500元的封包給我。我真是感動。我大學畢業後在社會上掙扎求生,得到的大都是冷眼與蔑視,社會終於認可了我的價值,我不是一個只知道吃飯的廢物!
1999年9月9日上午9點,在這個最多9字的時刻,我到學校報道來了,放下行李,我坐在分配給我的床上,心中終於踏實下來。
現在,我在北京終於有一張屬於我的床了,一張真正屬於我的床了,終於有個地方可以讓我安穩地睡覺了。沒有這段經歷,我怎麼體驗到「安居樂業」這一個詞的真實含義!個人如此,國家要做到,中國要做到,更難!
2.編程生涯
讀研兩年半的時間,我四處打工,這兩年半我至少在七八家公司做過,編了十幾萬行代碼,為自己賺了一台電腦,兩部手機(丟了一部),還有讀研期間的所有費用,實現了我的目標:沒向家裡要一分錢。
我水平不高,但在打工過程中,發現許多中國軟體公司的水平更菜!
2000年暑假,我參加一個商品軟體的開發,搬到了北大燕北園的一個宿舍,在那兒搞封閉式開發。在這個項目採用vb6開發,主力程序員除我之處,還有一個華北電力大學的研究生。大家都沒開發商品軟體的經驗,沒經過正式的設計,就匆忙編碼了。我曾經想採用分層的系統架構,但遭到另一位程序員的反對,爭吵沒有結果,老闆也不能做決定,結果各行其是。現在看起來,那時真是太菜了,任何一本軟體工程書都會指出這種做法是不對的。
我們直接就熱火朝天的幹了起來,那位華北電力大學的老兄,真讓我佩服,他可以在一個sub過程中寫上2000行代碼!我覺得奇怪,為何他能寫這么多的代碼?一看,頓時我暈倒,他居然將每個控制項的left,top,width等屬性都用代碼來設定!想想這樣的程序,調試時光單步執行就需要按多少次f8鍵!
我們在電腦旁邊搭了個行軍床,每天都是干到早上6點才睡,12點吃中飯,然後又是一個通宵。當時整個工程只有一個類模塊,被我用於封裝訪問資料庫的ado數據引擎,這是整個工程中唯一一處用到了最簡單的面向對象技術的地方,然後,我寫了近十個bas公用模塊,每個模塊代碼規模都有一兩千行,還有十幾個窗體,每個窗體中都塞滿了事件驅動的vb代碼,整個軟體應該有10萬行代碼,我一個人在此期間至少就寫了3萬多行vb代碼。程序的主處理流程我甚至用ado與寫了兩套!
現在想起來,我們當時根本就不知道面向對象為何物,更不理解許多對軟體開發至關重要的理論,就憑著一種熱情。在這段痛苦的開發經歷中,我不僅精熟了vb,而且從中學到了很多。現在再開發同樣功能的東西。我至少可以砍掉2/3的代碼。怎麼學都不如從失敗中學得多。
後來我總結vb程序員的三個境界:
(1)所有代碼都只放在窗體文件中的,屬於菜鳥級,他們只會從面板上拖控制項,設置屬性,然後再給事件編碼
(2)工程中有bas模塊的,屬於中間級,他們已意識到有大量的代碼是重復出現的,應該將其抽取出來作為公用模塊
(3)工程中有cls模塊的,屬於高手,他們已掌握了面向對象的思想,並能應用這種思想來解決實際問題
正是這次開發經歷,促使我反思:到底如何開發軟體?我個人可以用vb完成各種各樣的功能,為什麼湊在一起就會那麼困難?更正一個bug為何那麼難?為什麼一個看似簡單的軟體,要拖半年的時間還看不到結束的日子?
作者: streakinging 2006-8-23 17:15 回復此發言
--------------------------------------------------------------------------------
3 一個老程序員的心裡話! (轉)
九月,研究生要開題,我自擬了個課題:軟體體系結構設計。我決心弄明白,好軟體到底是怎麼做出來的。
我放下了vb,開始研究c++,原來學過vc,但沒學會,就直接從c++ builder入手。borland公司的vcl類庫讓我大為嘆服,很快就迷上了它,為此連帶學了delphi,並參與了一個delphi項目。給我真正震撼的是《設計模式》這本書,看了才知道,原來好軟體是這么設計出來的!在此,我強烈推薦所有有一定編程經驗的程序員一定要看這本書!
作者: ╱╲╳▔ 2006-3-19 10:16 回復此發言
--------------------------------------------------------------------------------
3 一個老程序員的心裡話!!
一邊學習理論,一邊可沒忘記我沒經濟來源,於是又四處打工,接一些小項目與小模塊來賺些生活費,國內一家橫跨家電與軟體的著名公司是我打工期間去過的最大的公司。但無論什麼公司,都給我一種感覺——爛!公司中充滿了對員工的剝削與不尊重,對軟體開發這一事物的錯誤認識,管理混亂。我沒機會去外企,技術水平不到,別人不要我但我所見到的軟體公司,我敢說沒一家能做出世界一流的軟體!
我上的研究生課程也讓我失望,整個就是本科教育的再版。經過高考與考研兩次重大考試,我對考試已是深惡痛絕,但讀研期間仍要考試,而且是閉卷!我就不知道我去背那些條文對我的研究與學習有何幫助?2000年7月當我考完最後一門,終於大松一口氣,我終於擺脫了考試的壓迫,可以在剩餘的一年半中真正搜索我渴望已久的軟體技術了。這年,我29歲。
悲哀嗎?一個中國的程序員要到29歲才可以真正自由地學習想學的東西!
我開始研究面向對象理論,看了大量的書,每天都在實驗室學習到深夜12點,天天上網,csdn成了我最常去的網站。
隨著我對軟體技術的了解越多,就越深刻地感到國內與國外技術水平的差異是如此的巨大,巨大得甚至有讓人絕望的感覺。同時,在北京這個中國軟體人才最集中的地方,我也見到了許多牛人,一個清華的本科學生,做程序員可以拿到一個月12000元的工資,一個北大的計算機系研究生,一畢業就到外企,一個月一萬多收入,每年發16個月工資!幹了兩年就開了自己的公司。我看到了一個北方交大的本科生作品,在半年的業余時間里,用delphi寫了十幾萬行代碼,他甚至在代碼中嵌入匯編,自行編寫數據存取引擎讀寫foxpro,速度超快!軟體中有一個計算公式解析模塊,他用編譯原理理論居然做了一個小型的公式解析器,就象c++編譯器檢查c++程序一樣,不僅可以判斷是否公式正確,而且給出的出錯信息還相當准確!其基本功之扎實,水平之高讓我望塵莫及!中國優秀的人才真還是不少的!在精英集聚的北京,面對著博大精深的軟體科學,我深感自身的渺小。
但我畢竟是靠自己奮斗出來的,我並不自卑,這世界需要牛人,同樣需要大批合格的勞動者,我成為不了牛人,但我作一名程序員是合格的。
時間過得飛快,一年半根本就不算時間,馬上就要畢業了,學習的成績如何,要到社會上去競爭了,讓社會考場來決定你是否及格。
[color=#FF1493]3.畢業求職[/color]
98級的研究生是it業最後輝煌的回光反照。當時,各大公司都發了瘋似的要人,象華為,當時是來者不拒。計算機專業的研究生是一搶而光,本科生也供不應求。2001年畢業的我的師兄師姐們,平均每個人手頭都至少有兩三個offer,談的工資沒有低於每月6000的,許多人去了外企,工資在8000~10000每月的也有。真是畢業生的黃金時間。
但好景不常在,911事件我看來好象成了分水嶺,911之後,整個it業急剎車,就業形勢急轉直下,各大公司都在消化去年吃得過飽的胃口,我形容是大家都吃壞了胃,再也不可能有我師兄師姐們的風光了。雖然時間相隔僅大半年。
從10月開始,11月和12月,我幾乎是在招聘會與公共汽車上渡過的,北京東南西北地去面試,上午在上地,下午可能就要跑到朝陽區,疲於奔命。
作者: streakinging 2006-8-23 17:15 回復此發言
--------------------------------------------------------------------------------
4 一個老程序員的心裡話! (轉)
在找工作過程中,我良好的心理素質與豐富的編程經驗起到了很大的作用,並沒有遇到很大的困難,就先後有幾家公司表示要我。
其中我想說的有兩家公司。
一家是台灣公司,應該說他們做得是不錯的,但我非常反感他們那種自認為高於大陸人的那種優越感,而且待遇也不高。面試之後,回來感覺很不好。當時台灣是民進黨上台主政,我就稱之為「民進黨」看不起「」(雖然我不是黨員,但我們都是中國人,都希望中國能強大,讓她的人民能挺直腰桿)。
我想:我們大陸確實是不如台灣發達,難怪別人看不起我們,這世界勢利得很,社會如此,國家亦然。但我中華960萬平方公里的國土,13億人口,難道要依靠一個小小的島嶼來撐門面?難道除了台灣公司,我就無處可去了?雖然改變不了什麼,但我決定絕不去台資和日資的公司工作(日本人我更不喜歡,但我認為他們做事實在優秀,我們一定要向日本人學習)!在這種公司呆著,不爽!同時,我們的確也得爭氣些,這世界只尊重強者。
作者: ╱╲╳▔ 2006-3-19 10:16 回復此發言
--------------------------------------------------------------------------------
4
2. 大學最難學的課程
一 課程
1.數學.
相信很多大學生們在大學裡面覺得《高等數學》、《微積分》很難,也很擔心這些課程會掛科,也有不少大學生是在這大學數學這門課掛科的,可以想像一下這課程的難度了。
2.大學物理.
理科、工科大學生在大學裡面必須要學大學物理的。雖說大學物理課程上的內容一般在初中、高中時期都學過了,但是經過一整個高考後暑假的荒廢,以及大一一整年沒學物理課程了,很多大學生們感覺大學物理很難。我那時候就是覺得大學物理難的,雖說課堂上也聽課,但是感覺自己已經沒有了高中時期的那股拼搏勁兒了,所以這門課學的很糟糕。
3.c語言.
大學編程課程對於大部分大學生來說是初學的,就像那些當初從初一才開始學英語就覺得英語很難一樣,不少大學生對於編程裡面的思維也是一頭霧水的。
4.醫學.
有句話叫「勸人學醫,天打雷劈」,可見這門課程學起來的困難程度了。記得以前有見過一個學醫的同學的書籍,一本厚厚的500多頁的書是他們將要考試時候的書籍,還有更多的幾十本書是他們的課本。
5.建築學.
學建築學的話需要畫圖、考證書,想想就難。
6.電力學.
電力學有大量的理論知識,還要畫圖,有個同學上的某電力大學,最後因為掛科太多而導致延期一年畢業。
二 社交
不少大學生們在上大學之前都是書獃子一樣的人,整日就把心思放在學習上,想著如何把不懂得內容搞懂以及如何把成績提高上去。到了大學的時候,真正的大學生在大學期間不僅要把專業課學好,而且要提高自己的社交能力。我就是那種大學以前只關注學習的人,到了大學的時候就覺得提高社交很重要,但是也感覺這個是比較難的。
三 戀愛
不少大學生在大學之前只關注學習,即使是有喜歡的人或者有人喜歡自己的話,也會盡量的壓制自己的感情,而是把心思放在學習上,這樣往往會錯過一段最重要的談戀愛的時機。到了大學期間比較重要的事情就是談戀愛,因為談戀愛可以培養照顧人得能力。