程序猿到美猴王的進化史
「苦練七十二變,才能笑對八十一難」。
最近兩天,這個象徵著「孫悟空精神」的句子引發千萬人的共鳴,也給程序猿們盛了好大一碗雞湯。不!絕不是雞湯。小編堅定地安利每一隻程序猿都可以進化成美猴王!
程序員是幹嘛的?有人認為他們是寫代碼的;有人認為他們是調bug的;更有甚者認為他們是修電腦的。
程序員到底是幹嘛的?相信很多人讀過這句話:
「程序員是將人類想法翻譯成計算機語言的譯者。」
換句話說說,程序員是連接人類世界和計算機世界之間的紐帶。
到位。
但是,維護這個紐帶也太不容易了好嘛?
預備,唱!
「剛翻過了幾座山,又越過了幾條河,
崎嶇坎坷怎麼特么就這麼多!」
要不說得苦練七十二變呢。等到五指山也壓了,煉丹爐也進了,九九八十一難也闖了,你就再也不是一隻簡簡單單的程序猿,你就是齊天大~~~聖!
望著猿猿們的一臉懵逼和無辜,小編樂善好施的毛病又犯了。阿彌陀佛,那麼程序猿與美猴王之間倒底差了多少標誌性差別呢?
火眼金睛
孫悟空在太上老君的八卦爐中鍛燒七七四十九天後,不但沒燒死,還煉就了火眼金睛,能夠一眼識別出妖怪。
Bug就像是通往西天路上的妖怪,給程序猿們順利取得真經的過程製造各種障礙。擁有快速識別定位程序中的bug的本領,就好比擁有一雙火眼金睛。
但火眼金睛也有它的缺點,就在於它不能看出妖怪的原形,所以孫悟空每次都不得不四處奔走詢問妖怪的出處。如果你現在滿屏代碼中一眼識別中哪一行有Bug,幾乎是不可能的。你能做的,是判斷出籠罩在程序中的「妖氣」,始終帶著一雙懷疑的眼睛,學會利用差異對照法,在不斷的驗證中發現和定位bug所在的模塊。
孫悟空的火眼金睛也不是什麼天然的超能力,程序猿也必須在善於懷疑、善用工具、學習他人經驗的過程中,煉就對產品擴展預期和對bug預見性的能力。但悲催的是你會發現,視野有多大,漏洞就有都大。
金箍棒
如意金箍棒在孫悟空的手中,能隨心所欲地變化大小,而且似乎它只聽孫悟空的。沒有任何其他神仙或者妖怪能夠讓金箍棒隨意變化。對於孫悟空,與其說金箍棒是兵器,不如說是通過苦心尋找又不斷練習的專屬工具。
在這個軟體增長和發明的黃金時代,工具變得唾手可得。程序猿的兵器譜中包含了許多可靠的技術:編程語言、開發工具、框架和設計模式,真正的程序猿要懂VC,懂Java,懂Python,懂Delphi……這些都是我們技能的基礎。然而這些技術有可能幫助我們所向披靡,也有可能暗藏危險。程序猿只有通過不斷的學習,既不要固步自封,也不要貪多不熟。對於進步最有效的辦法就是懷疑一切。當你嘗試了新的途徑後,你才能決定接下來用什麼樣的做事方法,好像一個漏斗一樣,過濾掉自己不需要的,留下適合自己的思維方法。
這可能會耗費你很多時間,但隨著時間的積累,你會發現自己的工具箱中又多了一套新的工具,並做好抉擇,看看有哪些是值得保留的。
金箍棒的任意伸縮,還暗涵技能的擴展能力。程序猿的職業生涯是一個要求不斷學習的過程,有太多的途徑幫助我們拓寬自己的視野和能力,去Github和大神交流;自己參與到開源代碼的貢獻中,學習他人的經驗等等,你漸漸會發現,你對於選擇兵器的直覺,一定比周圍的猴子們敏銳;
金箍棒再厲害,不能打怪也白搭。程序猿的兵器也需要有用武這地。面對一涌而入的不同業務需求時,猴子們還需要有對業務的彈性處理能力。根據不同需求的優先順序別,在各時間節點最大效率地利用工具,完成對不同功能的開發實現。
緊箍兒
觀音菩薩給孫悟空戴一個「緊箍咒」,就是要以此來引導他的思想,用理性來操縱和導引這隻野猴身上的非理性因素。
對於狂放不羈的程序猴們來說,良好的編碼習慣和編碼規範也許是勒得最緊的緊箍咒。
「命名規範修正下吧,變數名看著挺亂的」
「規範你妹啊,下周就Deadline了,哪兒有時間啊,差不多行了,把東西實現出來比什麼都重要。」
也許在兩年後,你會發現,擦……核心模塊里還有這麼噁心的代碼,不是早就該重寫了嗎……然而,注釋和文檔都不清楚!尼瑪這誰能寫啊……
猿猿們要噴了:我做了充分的分析需求;我選用正確的語言和架構;我配置好用的協用與任務調度管理工具;我代碼規範、文檔齊備;我的代碼就是可信的,工具鏈是可靠的……我的代碼就一定安全嗎?需求變化我控制的了嗎?莫名其妙的攻擊我攔的住嗎?不是照樣要改嗎?
但是,如果你沒有在各種層面質疑,你連相信自己是安全的理由都沒有,不玩兒你玩兒誰?
虎皮裙
喜歡西遊記的人都說,如果沒有虎皮裙,孫悟空就不是孫悟空了。
作為標誌性特徵,虎皮裙其實也存在爭議。有一種說法,真正的佛教高僧大德不會穿虎皮,唐僧默認悟空這樣穿著,實則是對猴子本性的保護。姑且不論嚴謹與否,還是有幾分道理的。
在圈外人看來,對程序猿這畫像的呢?聽說他們收入不菲,但總看起來很窮。略長的凌亂寸頭下面是一張長期被電腦輻射的油麵,架在鼻樑上的眼睛下藏著一雙盤著黑眼圈的眼,萬年不變的格子衫和滑板鞋,雙肩背包承載著他們整個世界。
稍微了解他們的人認為,他們百分之十的時間在想著顛覆宇宙,剩下百分之九十的時間在調bug.
是時候縫條虎皮裙,上演一波猩球崛起了!
硬體走起!Mac、機械鍵盤、外表炫酷的耳機!
軟體走起!牛逼的技術是程序猿最好的名片。通過構建自己自己的平台,寫寫博客,常逛逛Github,多參加像51CTO WOT這樣的業界會議,來提升程序員的影響力。
其實,程序員不過是一群簡單可愛的小朋友,不然天天被這麼多人黑,得引發多少血案,小編也早沒命接著寫了。
總結看來,美猴王也沒什麼了不起。然而齊天大聖真正感染我們的不僅僅是武藝精湛、除妖降魔、精力充沛,而是在通往取得真經的道路上,他逐漸收起自己霸道、喜歡控制一切的心性,凡事以保護師傅和保證取經小分隊的集體利益為原則,指導他的一切行為。
也許在我們的團隊中,你討厭磨磨唧唧的Leader,但他卻一直在引導和督促你;你討厭好吃懶做還貪圖美色的八戒,但他卻使工作氛圍不再永遠枯燥單調;也許你討厭凡事都「大師兄,師父說的對呀!大師兄,二師兄說的對呀!大師兄,師父和二師兄說的對呀!」的沒主見的沙僧,但你失戀了落單了挨罵了,卻最先拉他出來喝酒。
最後,祝福每位代碼山上的孫悟空,猴年大吉猴賽雷!
【責任編輯:Ophira TEL:(010)68476606】
原文:程序猿到美猴王的進化史 返回開發首頁
推薦閱讀:
※(十九) 生物的變異與進化
※漢字的進化史
※談談達爾文進化論的缺陷
※第七集 異向進化
※《明星經紀進化史》從跑單幫到傍大款再到鬧獨立