一歲的程序猿

coder

我記得我是15年9月21號正式參與工作的恩袱,雖然只是作為一個實習生读第,但總算完成了從學校到社會的一次跨越。然而距離那一次跨越纲岭,再過10天居然要滿一年了抹竹。翻回以前的朋友圈,隱隱約約可以還能找到第一次參加工作的清澀感止潮,焦慮感窃判,菜鳥味。一年能改變的事情真多沽翔,認真地想了這一年經(jīng)歷的事兢孝,就作為一程序員而言,少少提了幾個覺得重要的點仅偎,寫在簡書上跨蟹。

1.學習的代碼與工作的代碼

我第一份實習只干了一周,寫的是C++橘沥。當時求職非常不順利窗轩,C++讓我覺得十分沮喪。幸運的是座咆,很快接到另外一個實習offer痢艺,語言用的是Java,我那時候幾乎不怎么寫Java介陶,但考慮到行業(yè)Java的使用率很高并且后面的公司給我提供的實習工資達到“驚人的”1200人民幣(在此前的面試中堤舒,我甚至求過面試官給機會,不要工資)哺呜,于是我就跳槽了舌缤。在第二家公司一呆就是5個月,所以嚴格而言,那才是我第一家公司国撵。
  此前陵吸,我一直都是在宿舍編一下算法,寫寫二叉樹的實現(xiàn)介牙、圖的遍歷壮虫、各種排序和查找,看TCP/IP的協(xié)議环础,幾乎沒寫軟件囚似,一切都很學術,很知識喳整。而因為沒寫過真實的項目谆构,上班前,我還經(jīng)常在想公司能讓我寫什么代碼框都,會有哪些代碼我會看不懂的嗎?(自己對Java教科書的語法很熟悉)
  我現(xiàn)在還非常清楚地記得第一次見到公司代碼的情形呵晨,絕對是目瞪口呆魏保。我把項目導下來后,居然足足幾百M(也包含了不少jar包和前端資源)摸屠,點開每一個package都有幾十個Java文件谓罗,隨便打開一個都會有好幾百行代碼。那種感覺季二,就像在河邊住大半輩子的人第一次看到大海的樣子檩咱,明明都是水,就是被嚇得不知所粗——明明知道是Java代碼胯舷,就是不知從何看起刻蚯。那一瞬間,我徹底明白了桑嘶,為什么語言只是工具炊汹,因為工具造出來的東西是可以如此宏大,宏大到你不知所措的地步逃顶。
  進入公司的前一個月都是在適應公司的代碼和堆碼規(guī)則(吐槽一句讨便,公司代碼的命名規(guī)則無比糟糕,是逼走我重要原因)以政。工作后的代碼顯得非常踏實霸褒,一點都不允許花哨,我有時候會發(fā)現(xiàn)一種新穎的實現(xiàn)方式盈蛮,需要多建幾個類废菱,結果是找不到合適的放這些類的package,咨詢導師后,導師讓我放棄新方式昙啄,原因是要保證其它同事能看懂穆役。這事讓我懊惱許久,但后面慢慢考慮起來梳凛,也不無道理耿币。學習的代碼和工作的代碼就有著最本質(zhì)的區(qū)別:一個是給自己看的,一個是需要大家一起看的韧拒。公司寫的是政府OA系統(tǒng)淹接,連具體編程都得加了非常多的規(guī)矩,我本來認為:大概上班了就這樣了叛溢,按部就班即可塑悼。后來我還是逮到了一次機會,通過運用二叉樹結構和數(shù)據(jù)庫的范式設計成功地改良了系統(tǒng)某個模塊的性能楷掉,這次表現(xiàn)讓我獲得了提前轉正的機會厢蒜。
  All in all,公司的代碼總是帶有一些編程約束的烹植,但無可否認的是這些規(guī)矩一定程度上是避免了很多無謂的錯誤斑鸦,但是在面對具體問題的節(jié)點上,學術性的知識和代碼往往能讓我們“靈機一動”草雕,寫出精妙的代碼巷屿,瞬間提高代碼的性能和程序可讀性,在學校里堅持基礎學習就能在工作上給自己墩虹,甚至是公司帶來驚喜嘱巾!這也是為什么下班后最好能堅持學習基礎的原因。

2.編程是一門科學诫钓,還是一門藝術旬昭?

這是一個我大學前就反復問過自己很多遍的問題,編程是理科嗎尖坤?需要數(shù)學嗎稳懒?現(xiàn)在編程一年了,我認為慢味,只要不去設計太高深的算法场梆,編程研究的問題深到某個程度時就需要用到數(shù)學了,然而那些都是研究生或博士要考慮的問題纯路。對于普通地編程或油,我們的數(shù)學已經(jīng)完全足夠用了(數(shù)學是一種推力,而不是門檻)驰唬。我不認為編程是一門科學顶岸,而是一門藝術腔彰。
  證據(jù)就在大家的口中,因為我們從來都是設計軟件辖佣,而不會研究軟件(設計物理同樣聽起來非常別扭)霹抛。編程就是一門設計的藝術。關于這個觀點卷谈,Paul Garaham寫的《黑客與畫家》就非常詳細地闡述過杯拐。我非常幸運在我真正開始編程前,自己先進入了宣傳部世蔗,我從我的部長華陽師兄身上體會到設計的美端逼,逐漸有了對丑陋設計零容忍的態(tài)度。兩年的PS海報設計讓我對設計變得異常偏執(zhí)污淋,雖然不斷重做是十分煎熬的顶滩,但是逐漸發(fā)現(xiàn),堅持追求美的過程也是一種享受寸爆。這種心態(tài)順理成章地也表現(xiàn)在我的程序上礁鲁,重構的過程就是堅持追求代碼美的過程。美麗的設計和實現(xiàn)是一種讓人非常著迷的東西而昨,這樣的代碼一目了然救氯,完美地實現(xiàn)需求的同時,還保持著足夠擴展空間歌憨,一切都恰到好處,就像一個畫家在紙上畫出一個完美的圓一般墩衙,無可挑剔务嫡。編程就是一門設計的藝術。
  給同行和師弟師妹推薦一下漆改,關于什么程序是好程序心铃,我推薦《重構》這本書;關于如何設計好的程序挫剑,我推薦《設計模式》去扣。

3.快速學習編程的捷徑

在大學里,我很長一段時間都自以為自己理科思維好(高中物理成績好)樊破,所以就感覺自己的編程天賦比一般人都要好愉棱,我可以快速地學習編程。當然哲戚,事實是自己和一般的同學在所謂的天生能力上別無差異奔滑。但隨著畢業(yè)工作,我們的編程能力慢慢呈現(xiàn)了高低之分顺少。這促使我思考一個問題朋其,什么樣的方法才是好的學習編程方法呢王浴?
  經(jīng)過了1年工作,兩次換公司的親身體會梅猿,我發(fā)現(xiàn)氓辣,折騰才是學習編程最快的捷徑。什么是折騰袱蚓?可以理解為:明明不需要也可以钞啸,但偏要整出來,這就是折騰癞松。我每一次換公司爽撒,就是一次折騰:第一家寫政府的公司,自己本來就不會Java响蓉,活生生折騰兩個月硕勿,最后能夠獨立開發(fā)模塊;第二家公司是游戲公司枫甲,基本上每天晚上都在折騰各種bug源武,沒試過消停。Java領域上想幻,一家公司讓我從入門到熟悉粱栖,另一家讓我從熟悉到深入。每個過程都是非常難熬的脏毯,為了各種自己不明白的錯誤焦頭爛額闹究,但一旦解決后,就會有種豁然開朗的感覺食店,并且以后會自動地免疫這種問題和錯誤渣淤。所以,一個老成的程序員吉嫩,他編程的神態(tài)總是異常平靜价认,仿佛所有的bug都不是問題一樣,你折騰好幾個小時都找不到的壞代碼自娩,他能動幾下鍵盤和鼠標就定位出來用踩,事后平靜地拍一下你的肩旁,留下一句“能重現(xiàn)的bug都不是bug”如此大氣的話忙迁,讓我等菜鳥自覺地獻上膝蓋脐彩,現(xiàn)在公司里的宇哥就是這樣的一號人物。這樣的程序員动漾,并不能看到他所謂的天賦丁屎,他身上散發(fā)的都是他在代碼上飽經(jīng)風雨的氣息。
  這也是我為什么十分喜歡現(xiàn)在的公司旱眯,游戲代碼每一周都會更新一次晨川,任何自己寫得不好的代碼证九,周四更新,周五就會有人投訴出異常了共虑,快速地暴露自己的問題代碼會讓自己編程能力提升很快愧怜,而且還要有這么多的玩家來給自己的代碼檢查,作為一個菜鳥妈拌,這既是挑戰(zhàn)也是一個非常難得的機會拥坛,越是折騰,越是進步尘分。錯誤總是讓人印象深刻猜惋,生活是這樣,編程更是這樣培愁。

最后

工作一周年了著摔。不管是編程,還是為人處事定续,回想起去年今日谍咆,這一年的進步確實讓我覺得很驚喜。去年這個時候還因為找不到實習而哭過私股,幸好還是堅持下來了摹察,能從事自己喜歡的工作確實是一件很幸運的事。工作后有了收入倡鲸,有了更大的自由供嚎,無論是對自己、朋友峭状、家庭還是公司查坪,作為一個社會獨立角色的存在,慢慢開始覺得自己有了更多的責任宁炫,未來會有更多的問題和事情等著我。
  作為一個市井小人氮凝,我的目標也不過是多賺一分幾毛羔巢,爭取日后富成一個廢人,躺在沙發(fā)上讓別人服侍罩阵。偶爾想像一下竿秆,感覺又有了新的動力去面對新一天的工作。
  【全文完】

思考設計
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末稿壁,一起剝皮案震驚了整個濱河市幽钢,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌傅是,老刑警劉巖匪燕,帶你破解...
    沈念sama閱讀 218,451評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蕾羊,死亡現(xiàn)場離奇詭異,居然都是意外死亡帽驯,警方通過查閱死者的電腦和手機龟再,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,172評論 3 394
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來尼变,“玉大人利凑,你說我怎么就攤上這事∠邮酰” “怎么了哀澈?”我有些...
    開封第一講書人閱讀 164,782評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長度气。 經(jīng)常有香客問我割按,道長,這世上最難降的妖魔是什么蚯嫌? 我笑而不...
    開封第一講書人閱讀 58,709評論 1 294
  • 正文 為了忘掉前任哲虾,我火速辦了婚禮,結果婚禮上择示,老公的妹妹穿的比我還像新娘束凑。我一直安慰自己,他們只是感情好栅盲,可當我...
    茶點故事閱讀 67,733評論 6 392
  • 文/花漫 我一把揭開白布汪诉。 她就那樣靜靜地躺著,像睡著了一般谈秫。 火紅的嫁衣襯著肌膚如雪扒寄。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,578評論 1 305
  • 那天拟烫,我揣著相機與錄音该编,去河邊找鬼。 笑死硕淑,一個胖子當著我的面吹牛课竣,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播置媳,決...
    沈念sama閱讀 40,320評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼于樟,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了拇囊?” 一聲冷哼從身側響起迂曲,我...
    開封第一講書人閱讀 39,241評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎寥袭,沒想到半個月后路捧,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體关霸,經(jīng)...
    沈念sama閱讀 45,686評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,878評論 3 336
  • 正文 我和宋清朗相戀三年鬓长,在試婚紗的時候發(fā)現(xiàn)自己被綠了谒拴。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,992評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡涉波,死狀恐怖英上,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情啤覆,我是刑警寧澤苍日,帶...
    沈念sama閱讀 35,715評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站窗声,受9級特大地震影響相恃,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜笨觅,卻給世界環(huán)境...
    茶點故事閱讀 41,336評論 3 330
  • 文/蒙蒙 一拦耐、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧见剩,春花似錦杀糯、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,912評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至羹呵,卻和暖如春骂际,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背冈欢。 一陣腳步聲響...
    開封第一講書人閱讀 33,040評論 1 270
  • 我被黑心中介騙來泰國打工歉铝, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人凑耻。 一個月前我還...
    沈念sama閱讀 48,173評論 3 370
  • 正文 我出身青樓犯戏,卻偏偏與公主長得像,于是被迫代替她去往敵國和親拳话。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,947評論 2 355

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,144評論 25 707
  • 本文把程序員所需掌握的關鍵知識總結為三大類19個關鍵概念种吸,然后給出了掌握每個關鍵概念所需的入門書籍弃衍,必讀書籍,以及...
    dle_oxio閱讀 11,119評論 6 244
  • 1坚俗、在web.xml中配置 HiddenHttpMethodFilter 過濾器镜盯。2岸裙、瀏覽器發(fā)送 POST 請求。...
    暮雨隨風閱讀 5,664評論 0 2
  • 用公式表達世界 是男人們顛撲不破的浪漫情話 可我卻分不清一塔速缆,三塔降允,還是珠穆朗瑪 可我是誰吶? 鍍鉻的活塞環(huán)艺糜,和有...
    俗人雜文閱讀 393評論 0 3
  • 減脂知識 目錄 一.我們每天究竟需要那些營養(yǎng) 二.你的脂肪是從哪里來的 三.到底怎么做才能有效減脂 四.如何做到最...
    賀一勝閱讀 9,968評論 15 79