標籤:

程序猿到美猴王的進化史

「苦練七十二變,才能笑對八十一難」。

最近兩天,這個象徵著「孫悟空精神」的句子引發千萬人的共鳴,也給程序猿們盛了好大一碗雞湯。不!絕不是雞湯。小編堅定地安利每一隻程序猿都可以進化成美猴王!

程序員是幹嘛的?有人認為他們是寫代碼的;有人認為他們是調bug的;更有甚者認為他們是修電腦的。

程序員到底是幹嘛的?相信很多人讀過這句話:

「程序員是將人類想法翻譯成計算機語言的譯者。」

換句話說說,程序員是連接人類世界和計算機世界之間的紐帶。

到位。

但是,維護這個紐帶也太不容易了好嘛?

預備,唱!

「剛翻過了幾座山,又越過了幾條河,

崎嶇坎坷怎麼特么就這麼多!」

要不說得苦練七十二變呢。等到五指山也壓了,煉丹爐也進了,九九八十一難也闖了,你就再也不是一隻簡簡單單的程序猿,你就是齊天大~~~聖!

望著猿猿們的一臉懵逼和無辜,小編樂善好施的毛病又犯了。阿彌陀佛,那麼程序猿與美猴王之間倒底差了多少標誌性差別呢?

火眼金睛

孫悟空在太上老君的八卦爐中鍛燒七七四十九天後,不但沒燒死,還煉就了火眼金睛,能夠一眼識別出妖怪。

Bug就像是通往西天路上的妖怪,給程序猿們順利取得真經的過程製造各種障礙。擁有快速識別定位程序中的bug的本領,就好比擁有一雙火眼金睛。

但火眼金睛也有它的缺點,就在於它不能看出妖怪的原形,所以孫悟空每次都不得不四處奔走詢問妖怪的出處。如果你現在滿屏代碼中一眼識別中哪一行有Bug,幾乎是不可能的。你能做的,是判斷出籠罩在程序中的「妖氣」,始終帶著一雙懷疑的眼睛,學會利用差異對照法,在不斷的驗證中發現和定位bug所在的模塊。

孫悟空的火眼金睛也不是什麼天然的超能力,程序猿也必須在善於懷疑、善用工具、學習他人經驗的過程中,煉就對產品擴展預期和對bug預見性的能力。但悲催的是你會發現,視野有多大,漏洞就有都大。

金箍棒

如意金箍棒在孫悟空的手中,能隨心所欲地變化大小,而且似乎它只聽孫悟空的。沒有任何其他神仙或者妖怪能夠讓金箍棒隨意變化。對於孫悟空,與其說金箍棒是兵器,不如說是通過苦心尋找又不斷練習的專屬工具。

在這個軟體增長和發明的黃金時代,工具變得唾手可得。程序猿的兵器譜中包含了許多可靠的技術:編程語言、開發工具、框架和設計模式,真正的程序猿要懂VC,懂Java,懂Python,懂Delphi……這些都是我們技能的基礎。然而這些技術有可能幫助我們所向披靡,也有可能暗藏危險。程序猿只有通過不斷的學習,既不要固步自封,也不要貪多不熟。對於進步最有效的辦法就是懷疑一切。當你嘗試了新的途徑後,你才能決定接下來用什麼樣的做事方法,好像一個漏斗一樣,過濾掉自己不需要的,留下適合自己的思維方法。

這可能會耗費你很多時間,但隨著時間的積累,你會發現自己的工具箱中又多了一套新的工具,並做好抉擇,看看有哪些是值得保留的。

金箍棒的任意伸縮,還暗涵技能的擴展能力。程序猿的職業生涯是一個要求不斷學習的過程,有太多的途徑幫助我們拓寬自己的視野和能力,去Github和大神交流;自己參與到開源代碼的貢獻中,學習他人的經驗等等,你漸漸會發現,你對於選擇兵器的直覺,一定比周圍的猴子們敏銳;

金箍棒再厲害,不能打怪也白搭。程序猿的兵器也需要有用武這地。面對一涌而入的不同業務需求時,猴子們還需要有對業務的彈性處理能力。根據不同需求的優先順序別,在各時間節點最大效率地利用工具,完成對不同功能的開發實現。

緊箍兒

觀音菩薩給孫悟空戴一個「緊箍咒」,就是要以此來引導他的思想,用理性來操縱和導引這隻野猴身上的非理性因素。

對於狂放不羈的程序猴們來說,良好的編碼習慣和編碼規範也許是勒得最緊的緊箍咒。

「命名規範修正下吧,變數名看著挺亂的」

「規範你妹啊,下周就Deadline了,哪兒有時間啊,差不多行了,把東西實現出來比什麼都重要。」

也許在兩年後,你會發現,擦……核心模塊里還有這麼噁心的代碼,不是早就該重寫了嗎……然而,注釋和文檔都不清楚!尼瑪這誰能寫啊……

猿猿們要噴了:我做了充分的分析需求;我選用正確的語言和架構;我配置好用的協用與任務調度管理工具;我代碼規範、文檔齊備;我的代碼就是可信的,工具鏈是可靠的……我的代碼就一定安全嗎?需求變化我控制的了嗎?莫名其妙的攻擊我攔的住嗎?不是照樣要改嗎?

但是,如果你沒有在各種層面質疑,你連相信自己是安全的理由都沒有,不玩兒你玩兒誰?

虎皮裙

喜歡西遊記的人都說,如果沒有虎皮裙,孫悟空就不是孫悟空了。

作為標誌性特徵,虎皮裙其實也存在爭議。有一種說法,真正的佛教高僧大德不會穿虎皮,唐僧默認悟空這樣穿著,實則是對猴子本性的保護。姑且不論嚴謹與否,還是有幾分道理的。

在圈外人看來,對程序猿這畫像的呢?聽說他們收入不菲,但總看起來很窮。略長的凌亂寸頭下面是一張長期被電腦輻射的油麵,架在鼻樑上的眼睛下藏著一雙盤著黑眼圈的眼,萬年不變的格子衫和滑板鞋,雙肩背包承載著他們整個世界。

稍微了解他們的人認為,他們百分之十的時間在想著顛覆宇宙,剩下百分之九十的時間在調bug.

是時候縫條虎皮裙,上演一波猩球崛起了!

硬體走起!Mac、機械鍵盤、外表炫酷的耳機!

軟體走起!牛逼的技術是程序猿最好的名片。通過構建自己自己的平台,寫寫博客,常逛逛Github,多參加像51CTO WOT這樣的業界會議,來提升程序員的影響力。

其實,程序員不過是一群簡單可愛的小朋友,不然天天被這麼多人黑,得引發多少血案,小編也早沒命接著寫了。

總結看來,美猴王也沒什麼了不起。然而齊天大聖真正感染我們的不僅僅是武藝精湛、除妖降魔、精力充沛,而是在通往取得真經的道路上,他逐漸收起自己霸道、喜歡控制一切的心性,凡事以保護師傅和保證取經小分隊的集體利益為原則,指導他的一切行為。

也許在我們的團隊中,你討厭磨磨唧唧的Leader,但他卻一直在引導和督促你;你討厭好吃懶做還貪圖美色的八戒,但他卻使工作氛圍不再永遠枯燥單調;也許你討厭凡事都「大師兄,師父說的對呀!大師兄,二師兄說的對呀!大師兄,師父和二師兄說的對呀!」的沒主見的沙僧,但你失戀了落單了挨罵了,卻最先拉他出來喝酒。

最後,祝福每位代碼山上的孫悟空,猴年大吉猴賽雷!

【責任編輯:Ophira TEL:(010)68476606】

原文:程序猿到美猴王的進化史 返回開發首頁
推薦閱讀:

(十九) 生物的變異與進化
漢字的進化史
談談達爾文進化論的缺陷
第七集 異向進化
《明星經紀進化史》從跑單幫到傍大款再到鬧獨立

TAG:程序 | 進化 |