來源:雷軍的博客 blog.sina.com.cn/leijun
這篇文章是在雷總個人博客看到的,里面聊到了他作為程式員的一些經歷、初衷以及思考,寫的不錯,轉來給大家看看,
如果程式人生的話,這條路太漫長,
我并非天生喜歡寫程式,上高中時也沒有想程序式員的生活,
我學電腦非常偶然,小時好友上大學時選擇了計算機系,為了和這個朋友有更多的共同語言,我也選擇了計算機系,開始步入程式人生的道路,
當我學會一些后,發現自己特別喜歡寫程式,我是八七年上的武漢大學計算機系,大一下學期才有專業課,當我有資格上機的時候,發現電腦世界太美妙,就一頭扎進去,
當時用的是 Motorola 68000 (相當 于 Intel 8088), 540K 的記憶體,運行的 UNIX 作業系統,八個人一起用,
大二學PC,又過了一學期,開始出現在老師的實驗室,幫忙干活,當時就寫了現在很多人用的 RI (RAMinit, 清記憶體的小工具, 看來我還是最早一批寫 Shareware 的人),
又過了一個學期,開始和校外的公司接觸,大二暑假,也就是1989年8月,和一個朋友組建了 Yellow Rose 軟體小組,寫了我第一個商品軟體 BITLOK 0.99,后來自己創業辦過公司,也寫過一些其他的軟體,
大學畢業后,分到研究所,不太適應那里的氣氛,就在1992年初加入金山軟體,開始了職業程式員的生涯,后來成了金山軟體研發部門的主管,但我一直都是一線的程式員,
編程的感受
程式員活在自己想象的王國里
我剛接觸電腦就發現電腦的妙處,電腦遠沒有人那么復雜,如果你的程式寫得好,你就可以和電腦處好關系,就可以指揮電腦干你想干的事,
這個時候你是十足的主宰,每你坐在電腦面前,你就是在你的王國里巡行,這樣的日子簡直就是天堂般的日子,
電腦里的世界很大,編程人是活在自己想象的王國里,你可以想象到電腦里細微到每一個位元組、每一個位元的東西,
我愛編程這個作業,可以肯定我會干上一輩子
不少人認為程式員最多干到三十五歲就可以收山換環境了,腦子也差不多該歇歇了,體力也不支了,并認為寫程式是年輕人的事情,到了一定歲數,估計沒什么人再當程式員了,
當我剛有一點本事的時候,我也和大家一樣覺得編程辛苦,也想三十歲后干別的,當我年長一點后就發現了自己的無知,
一個人大學畢業就二十一二歲,有點水平的時候可能二十五,接著就是過日子諸多事情,一切搞掂的時候,也許就是三十五歲,如果這樣的話,我們就不用選擇程式人生的道路,
電腦進入中國時間并不短,但真正大規模開始用,還是八五年 PC 開始的,因此國內真正寫電腦程式的人最長也就寫了十幾年(不知道是否還有這樣的人),
由于電腦應用在國內時間比較短,國內開發的主力是三十五歲以下的年輕人為主,但這不表示程式員如同紅粉佳人般的容易衰老,美國主力工程師以三十四十多歲的人為主,
開始的時候,我們覺得我們沒有什么不能做的(現在還能聽到這樣的豪言壯語),而且更要命的是好象我們特別聰明,特別適合開發軟體,比老外強得多,
當我們真正接觸那些杰出的開發人員的時候,發現他們太厲害了,都有十多年的開發經驗,雖然也有很多年輕人做了很多好東西,但決大多數的產品出自這些有豐富開發經驗的程式員的手,
剛畢業的時候,編程不僅僅是愛好,而且也成了一輩子的作業,整天不知道寫些什么東西,覺得特別沒勁,找不到感覺,特別灰心,
后來,才明白,只有全身心地投入,程式才會有感覺,
寫程式的活特別費腦子,也特別累,但我喜歡,可以肯定我會干上一輩子,雖然我沒有打算一生只干這一件事,用一生來編程式是一件既容易又困難的事,
如果碌碌無為,為交差寫點程式,這樣的日子太好混了,但如果想全身心地寫程式,寫十年就不是一件容易的事,
現在我不少朋友都洗手了,有時我也想“用什么電腦呀,Windows 外的世界不是也很大嗎?”,
面對電腦的時候,立刻頓悟:寫程式還是自己最擅長的事,也是最喜歡的事,
高級程式員不是追求的目標
有的人學習編程技術,是把高級程式員做為追求的目標,甚至是終身的奮斗目標,后來參與了真正的商品化軟體開發后,反而困惑了,茫然了,
一個人只要有韌性和靈性,有機會接觸并學習電腦的編程技術,就會成為一個不錯的程式員,剛開始寫程式,這時候學得多的人寫的好,到了后來,大家都上了一個層次,誰寫的好只取決于這個人是否細心、有韌性、有靈性,掌握多一點或少一點,很快就能補上,
成為一個高級程式員并不是件困難的事,
當我上學的時候,高級程式員也曾是我的目標,我希望我的技術能得到別人的承認,后來發現無論多么高級的程式員都沒用,關鍵是你是否能夠出想法出產品,你的勞動是否能被社會承認,能為社會創造財富,成為高級程式員絕對不是追求的目標,
編程不僅僅是技術,還是藝術
有人認為編程是一種熟練工種,也有人把編程說成是藝術創作,這兩種意見爭論比較激烈,我們換個工種來看,石匠應該是熟練工種,屬于工人,更和藝術似乎沾不上邊,但正是這些石匠,給我們留下多少文物古跡,如樂山大佛、莫高窟等等,應該說這些石匠給我們留下了無窮的文化財產,
現代軟體工業已具相當規模,很多軟體的完成需要的是大兵團作戰,一名普通程式員接受撰寫某一模塊的任務后,往往只是寫代碼,發揮的余地很小,
在大專案中,很多程式員只能了解到和自己所編模塊相關的很區域的細節,另外還受到開發環境的限制,真的很難體會到自己在從事”藝術”創造,更多的時候是感到自己在從事重體力勞動,
有的時候還擔心自己苦苦參與的這個專案究竟有沒有意義,是不是在同類產品中有競爭力,會不會開發出來以后就因為硬體的發展,作業系統的換代而過時……
我認為編程的作業和石匠比較相似,有技識訓,更多的是體力活,不管怎么說,寫出一個好軟體不是一件容易的事,
這兩種想法都有片面性,編程應該說兩種屬性都有,
編程不僅僅是技術,也還是藝術,
編程是技識訓,才有可能大規模進行,才會有軟體工程和軟體工廠,
也正是編程是藝術,才會有如此多的好產品,讓大家如癡如醉,
近期熱文推薦:
1.1,000+ 道 Java面試題及答案整理(2021最新版)
2.別在再滿屏的 if/ else 了,試試策略模式,真香!!
3.臥槽!Java 中的 xx ≠ null 是什么新語法?
4.Spring Boot 2.5 重磅發布,黑暗模式太炸了!
5.《Java開發手冊(嵩山版)》最新發布,速速下載!
覺得不錯,別忘了隨手點贊+轉發哦!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/343005.html
標籤:其他
下一篇:大一C語言學習筆記(8)---指標篇--動態記憶體是什么?與靜態記憶體有什么區別?怎么使用動態記憶體,有什么需要注意的地方?
