優(yōu)秀程序猿的自我修煉

所謂修身在正其心者,身有所忿懥,則不得其正,有所恐懼,則不得其正,
有所好樂(lè),則不得其正,有所憂患,則不得其正。心不在焉,視而不見(jiàn),聽(tīng)而不
聞,食而不知其味。 —— 《大學(xué)》

程序猿 可以說(shuō)是一種當(dāng)代才有的職業(yè),高逼格一點(diǎn)稱為 軟件工程師,自黑一點(diǎn)我們稱之為 碼農(nóng)。但程序猿其實(shí)也只是一門(mén)手藝人,編程也是一種技藝,是一種需要用心學(xué)習(xí)的技藝。

如同金庸的武林小說(shuō)中一樣,在現(xiàn)實(shí)編碼界也自然有高手和普通選手之分。即使在Google、Apple等大公司的程序員,也有效率高低之分,有時(shí)一個(gè)高效的甚至可以抵得上十個(gè)普通程序員,因?yàn)殚_(kāi)發(fā)一個(gè)可以提高工作效率的工具,對(duì)生產(chǎn)效率來(lái)說(shuō)可能是上百倍的提高。

修煉Tips 1

** Care About Your Craft
注重實(shí)效**

古人云,事之成功,有事半功倍與事倍功半之分,效率是決定我們能否成事的Key Point,一個(gè)注重實(shí)效的程序員應(yīng)該具有以下特征:

  • 具有好奇心和學(xué)習(xí)能力,喜愛(ài)嘗試各種新東西(Keep Curious,Keep Learning)
  • 學(xué)會(huì)批判性思考,當(dāng)一個(gè)方案提出時(shí),能夠站在自己的角度思考該方案是否合理?是否需要改進(jìn)
  • 多才多藝,不但熟悉自己所擅長(zhǎng)的領(lǐng)域,也需要了解其他領(lǐng)域的知識(shí)。學(xué)無(wú)止境,比如一個(gè)前端領(lǐng)域程序猿應(yīng)當(dāng)了解后端的工作,了解計(jì)算機(jī)網(wǎng)絡(luò)、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)庫(kù)優(yōu)化等。讓自己掌握其它領(lǐng)域的知識(shí),很可能會(huì)收獲奇效,再不濟(jì)也可以大大降低溝通成本。

修煉Tips 2

Provide Options,Don't Make Lame Excuses
提供各種選擇,不要找蹩腳的借口

作為一名職員甚至老板,都應(yīng)該對(duì)自己的事情負(fù)責(zé),對(duì)自己的職業(yè)生涯以及行為負(fù)責(zé)。當(dāng)我們想要拋出問(wèn)題時(shí),在自己腦海里過(guò)一遍可能的情形,他們是否會(huì)問(wèn)“你試了這個(gè)了嗎?”,或者“你有沒(méi)有考慮那個(gè)解決方案?”,我們是否又真的嘗試過(guò)所有方式?
當(dāng)真的出現(xiàn)非自己之力可解決的問(wèn)題時(shí),我們應(yīng)提供各種解決問(wèn)題的方案,嘗試多種解決之道,而非找借口說(shuō)事情不可達(dá)。

修煉Tips 3

** Don't Live with Broken Windows
不要容許破窗戶
**

當(dāng)發(fā)現(xiàn)低劣的設(shè)計(jì)、錯(cuò)誤決策或者糟糕的代碼時(shí),應(yīng)該進(jìn)行封裝或者修改。在沒(méi)有把握的情況下,應(yīng)該對(duì)代碼進(jìn)行封裝,重新構(gòu)造良好的接口。在必要的時(shí)候,甚至可以進(jìn)行重構(gòu)。

修煉Tips 4

**Invest Regularly in Your Knowledge Portolio
定期投資知識(shí)資產(chǎn)
**

古人云,活到老,學(xué)到老。特別是在這個(gè)快速進(jìn)步的年代,在知識(shí)迭代迅速的IT業(yè),我們更加應(yīng)該增長(zhǎng)自己的知識(shí)。有以下幾個(gè)建議:

  • 每年至少學(xué)習(xí)一種新語(yǔ)言,每種語(yǔ)言都每種語(yǔ)言的特色,在精通一門(mén)語(yǔ)言的基礎(chǔ)上學(xué)習(xí)其他語(yǔ)言有利于我們擴(kuò)展思維,避免墨守成規(guī)。
  • 每月至少每季度閱讀一本技術(shù)相關(guān)的書(shū)籍,養(yǎng)成讀書(shū)的習(xí)慣,往往在工作中會(huì)從以往的書(shū)籍中找到靈感。
  • 閱讀非技術(shù)類的書(shū)籍,我個(gè)人在閱讀技術(shù)書(shū)籍之外,比較偏向歷史、經(jīng)濟(jì)、科幻類小說(shuō),歷史可以讓人以史為鑒,經(jīng)濟(jì)可以讓人學(xué)會(huì)自我的財(cái)務(wù)管理而好的科幻甚至可以說(shuō)是科技進(jìn)步的指明燈,比如kk的《失控》。許多我們現(xiàn)在的生活場(chǎng)景在幾十年前的科幻作品中就被描繪了出來(lái)。也許某個(gè)場(chǎng)景會(huì)給予你創(chuàng)業(yè)的靈感,從此...實(shí)現(xiàn)先富 ??
  • 上課以及積極參加本地用戶組織,主動(dòng)參與交流,研究表明,許多時(shí)候?qū)ξ覀冇嘘P(guān)鍵幫助作用的是弱關(guān)系。特別是職業(yè)相關(guān)的,也許你的親戚朋友很想幫你,但很明顯,那超出了他的能力之外。
  • 試驗(yàn)不同的環(huán)境,如果在Windows上工作,就嘗試一下Linux,如果平時(shí)用Makefile和編輯器(如Vim),則嘗試使用IDE,反之亦然。

修煉Tips 5

**Critically Analyze What You Read and Hear
審問(wèn)之
**

前面建議是 博學(xué)之,但是在我們學(xué)習(xí)了各種知識(shí)的能力時(shí),更重要是審問(wèn)之。批判地思考我們所讀、所聽(tīng),比如我們的商業(yè)搜索引擎搜索結(jié)果靠前的并不一定因其可靠,可能更多的是商業(yè)原因,內(nèi)容供應(yīng)商可以付錢(qián)讓其排在前面。
當(dāng)我們學(xué)習(xí)武功秘籍前,我們應(yīng)該分清是《九陽(yáng)神功》、《降龍十八掌》還是《葵花寶典》、《九陰真經(jīng)》之流。


結(jié)語(yǔ)

古人云,博學(xué)之、審問(wèn)之、慎思之、明辨之、篤行之。我想是對(duì)以上建議的一個(gè)精辟總結(jié)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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