[題記] 如果程式人生的話,這條路太漫長
「程式人生」這個詞是什麼意思,剛開始時我並不明白。這個詞源於業餘bbs站,站上programmer欄目的中文名就是這個詞,英文翻譯過來就是」程式設計師」,但程式人生又比程式設計師多了很多含義,似乎多了一種滄桑感。但不管這麼多,講講程式設計感受不算跑題。
首先我先講講自己的路,這樣也許大家才能相信我的坦誠和我的這篇程式設計感受的真實性。這些感受是我個人感受,不全面的地方,請大家指正。
我的程式人生路
————–
我並非天生喜歡電腦,上高中時也沒有想過程式設計師的生活。我學電腦非常偶然,小時候的乙個好朋友上大學時選擇了電腦專業,為了和這個朋友有更多的共同語言,我也選擇了計算機系,開始步入程式人生的道路。
當我學了一點電腦知識後,就發現電腦將是我人生的最愛。讀書時,我不是特別會搞關係的人,同學關係說不上差,也好不到那裡去。我是八七年上的大學,我們大一下學期才有專業課。當我有資格上機的時候,發現電腦世界太美妙,就一頭扎進去。當時用的是 motorola 68000 (相當於 intel 8088), 540k 的記憶體,執行的 unix 作業系統,八個人一起用。
大二學 pc,又過了一學期,開始出現在老師的實驗室,幫忙幹活,當時寫了現在還有人用的 ri (乙個清記憶體的小工具)。又過了乙個學期,開始和校外的公司接觸。大二暑假,和乙個朋友組建了 yellow rose 組,寫了我第乙個商品軟體 bitlok 0.99。後來開過公司也寫過一些軟體。
大學畢業後,分到研究所,不太適應研究所的氣氛。跳槽到金山軟體公司,開始了職業程式設計師的生涯。後來成了北京金山軟體公司的經理,但我還是一名程式設計師。
程式設計的感受
———-
— 程式設計師活在自己想象的王國裡 —
我剛接觸電腦就發現電腦的妙處,電腦遠沒有人那麼複雜。如果你的程式寫得好,你就可以和電腦處好關係,就可以指揮電腦**想幹的事。
這個時候你是十足的主宰。每每你坐在電腦面前,你就是在你的王國裡巡行。這樣的日子簡直就是天堂般的日子。
電腦裡的世界很大,程式設計人是活在自己想象的王國裡。你可以想象到電腦裡細微到每乙個位元組、每乙個位元位的東西。
— 我愛程式設計這個工作,可以肯定我會幹上一輩子 —
不少人認為程式設計師最多乾到三十五歲就可以收山換環境了,腦子也差不多該歇歇了,體力也不支了。並認為寫程式是年輕人的事情,到了一定歲數,估計沒什麼人再當程式設計師了。
當我剛有一點水平的時候,我也認為程式設計辛苦,也想三十歲後幹別的。當我年長一點後就發現了自己的無知。乙個人大學畢業就二十一二歲,有點水平的時候可能二十五,接著就是老婆加上孩子和房子等等諸多事情。
一切搞掂的時候,也許就是三十五歲。如果這樣的話,我們就不用選擇程式人生的道路。
電腦進入我國時間不短,但真正大規模開始用,還是八五年 pc 開始的,因此國內真正寫電腦程式的人最長也就寫了十幾年(不知道是否還有這樣的人)。由於電腦應用在國內時間比較短,國內開發的主力是三十五歲以下的年輕人為主。但這不表示程式設計師如同紅粉佳人般的容易衰老。美國和台灣開發以三十四十多歲的人為主。開始的時候,我們覺得我們沒有什麼不能做的(現在還能聽到這樣的豪言壯語),而且更要命的是好象我們特別聰明,特別適合開發軟體,比老外強得多。當我們真正接觸那些傑出的開發人員的時候,發現他們太厲害了,都有十多年的開發經驗。雖然也有很多年輕人做了很多好東西,但決大多數的產品出自這些有豐富開發經驗的程式設計師的手。
剛畢業的時候,程式設計不僅僅是愛好,而且也成了一輩子的工作。整天不知道寫些什麼東西,覺得特別沒勁,找不到感覺,特別灰心。後來,才明白,只有全身心地投入,程式才會有意識。
寫程式簡直是在自殺,巨費精力巨費腦子巨累。但我愛程式設計這個工作,可以肯定我會幹上一輩子,雖然我沒有打算一生只幹這一件事。用一生來程式設計序是一件既容易又困難的事。如果碌碌無為,為交差寫點程式,這樣寫兩輩子的人都有。但如果想全身心地寫程式,寫十年就不是一件容易的事。現在我不少朋友都洗手了,有時我也想」用什麼電腦,windows 外的世界不是也很大嗎?」。面對電腦的時候,立刻頓悟:電腦還是自己最擅長幹的事,也是最順手的事。
— 高階程式設計師不是追求的目標 —
有的人學習程式設計技術,是把高階程式設計師做為追求的目標,甚至是終身的奮鬥目標。後來參與了真正的商品化軟體開發後,反而困惑了,茫然了。
乙個人只要有韌性和靈性,有機會接觸並學習電腦的程式設計技術,就會成為乙個不錯的程式設計師。剛開始寫程式,這時候學得多的人寫的好,到了後來,大家都上了乙個層次,誰寫的好只取決於這個人是否細心、有韌性、有靈性。掌握多一點或少一點,很快就能補上。成為乙個高階程式設計師並不是件困難的事。
當我上學的時候,高階程式設計師也曾是我的目標,我希望我的技術能得到別人的承認。後來發現無論多麼高階的程式設計師都沒用,關鍵是你是否能夠出想法出產品,你的勞動是否能被社會承認,能為社會創造財富。成為高階程式設計師絕對不是追求的目標。
— 程式設計不僅僅是技術,還是藝術 —
有人認為程式設計是一種熟練工種,也有人把程式設計說成是藝術創作。這兩種意見爭論比較激烈。
我們換個工種來看,石匠應該是熟練工種,屬於工人,更藝術似乎沾不上邊。但正是這些石匠,給我們留下多少文物古蹟,如樂山大佛、莫高窟等等。應該說這些石匠給我們留下了無窮的文化財產。
現代軟體工業已具相當規模,很多軟體的完成需要的是大兵團作戰。
一名普通程式設計師接受編寫某一模組的任務後,往往只是寫**,發揮的餘地很小。在大專案中,很多程式設計師只能了解到和自己所編模組相關的很區域性的細節,另外還受到開發環境的限制,真的很難體會到自己在從事」藝術」創造,更多的時候是感到自己在從事重體力勞動。有的時候還擔心自己苦苦參與的這個專案究竟有沒有意義,是不是在同類產品中有競爭力,會不會開發出來以後就因為硬體的發展,作業系統的換代而過時…
我認為程式設計的工作和石匠比較相似,有很多是技術活甚至是體力活,但編寫優秀軟體是件很難的事。這兩種想法都有片面性,程式設計應該說兩種屬性都有。程式設計不僅僅是技術,也還是藝術。
程式設計是技術活,才有可能大規模進行,才會有軟體工程。也正是程式設計是藝術,才會有如此多的好產品。
同為程式設計師,雷軍為何能走上人生巔峰?
7月9日上午,創業8年的小公尺終於在香港上市了,估值543億美元,躋身有史以來全球科技股前三大ipo,雷軍身價也一躍超過139億美元。創業之前,雷軍在金山待了16年,從一名基層員工,一步步成為董事長,最終帶領金山成功上市。這篇文章寫於金山成立30周年之際,作者分享了雷軍身上的兩點特質 忠誠和勤奮。推...
小公尺和雷軍
小公尺這家公司有一點像蘋果。哪一點呢?或者說,整體維繫於一點。先看外部。做手機這種事已經越來越不被行業看好了,尤其是國內,李開復的微博上說,投行仍然願意投小公尺的原因是 1 雷軍 2 雷軍 3 雷軍。所以你看,外部資源都是衝著雷軍去的。再說內部。雷軍自己聲稱小公尺是個多文化的包容性團隊。確實,他的主...
雷軍 誠意是王道
從2011年8月16日,小公尺手機第一次正式發布,到今天,不到三年時間。上週我們發布了上半年的業績,我們手機的銷量已達2611萬台,銷售額達到了330億元。我們用鋼鐵一般堅硬的事實證明了小公尺的階段性成功。不過,有朋友開始問我小公尺的明天能不能持續。作為乙個有25年創業經驗的it老兵,我見過無數企業...