如何成為一個(gè)優(yōu)秀的程序員,送給渴望優(yōu)秀的人
本文公眾號(hào)來(lái)源:編程新說(shuō)
作者:編程新說(shuō)李新杰本文已收錄至我的GitHub認(rèn)知問(wèn)題
馬斯克,這個(gè)風(fēng)光無(wú)限的男人,他的名字就像特斯拉電動(dòng)汽車(chē)、SpaceX的獵鷹火箭一樣,享譽(yù)全世界。可是你們知道,2008年是馬斯克口中“生命里最灰暗的一年”,這一年特斯拉還持續(xù)虧損,SpaceX歷經(jīng)幾次磨難成功發(fā)射后,難以小覷的財(cái)務(wù)危機(jī)隨之而來(lái),董事局的逼宮。還有離婚、員工離職、外界的嘲笑聲折磨著他。
有如“汽車(chē)真相”網(wǎng)站開(kāi)設(shè)“特斯拉死亡倒計(jì)時(shí)”欄目,像是看笑話般,等著特斯拉走向死亡,甚至曾出現(xiàn)一日內(nèi)有50篇談?wù)撎厮估绾螠缤龅奈恼?。有特斯拉?nèi)部員工爆料,稱(chēng)特斯拉欺騙群眾,訂單現(xiàn)金全被揮霍一空…… 那一年,馬斯克感到自己淪為眾矢之的。
在后來(lái)的采訪中,節(jié)目主持人問(wèn)馬斯克,(Space X)三次連續(xù)發(fā)射失敗時(shí),為何沒(méi)考慮自己卷鋪蓋走人。馬斯克斬釘截鐵地回答:“Never(決不)。我不知道什么叫放棄,除非我被困住或者死去。”

所有人都需要認(rèn)識(shí)到,任何事物都不是一蹴而就的,越是美好的事物,磨難越多。
相信馬斯克早就認(rèn)知到會(huì)出現(xiàn)各種情況,所以自己才可以扛得住。
欲望問(wèn)題
受別人家孩子的影響,前年春節(jié)前夕,也給我們家孩子報(bào)了鋼琴班,一對(duì)一的教學(xué),為了方便練琴,還買(mǎi)了一架電鋼琴。然后每個(gè)周末我都陪她去學(xué)琴,從嚴(yán)冬到酷暑,幾乎持續(xù)了一年。剛開(kāi)始還行,后來(lái)我發(fā)現(xiàn)她越來(lái)越不想去了。

仔細(xì)溝通之后,她說(shuō)她對(duì)鋼琴一點(diǎn)都不感興趣。放棄是可以的,但是不能輕言。由于我也是初次接觸鋼琴,雖然陪她上了一年課且學(xué)到了很多知識(shí),但是關(guān)于鋼琴我還是有很多很多的問(wèn)題充斥在大腦中,我也嘗試問(wèn)過(guò)鋼琴老師,可惜沒(méi)有得到我想要的答案。
于是我在網(wǎng)上查資料,還買(mǎi)了鋼琴教科書(shū),還看了一些關(guān)于朗朗的視頻和文章,隨著時(shí)間的推移,我的疑惑逐步的慢慢的被解開(kāi)了。在經(jīng)過(guò)一些觀察、思考、分析和推理,最終決定,放棄!
在陪孩子的過(guò)程中,我也算學(xué)會(huì)了三首曲子,西游記插曲《女兒情》、《世上只有媽媽好》以及大頭兒子和小頭爸爸的主題曲《快樂(lè)父子倆》,可惜我只會(huì)用右手彈主旋律,不會(huì)用左手彈伴奏,因?yàn)樽笥沂植粫?huì)配合。
因?yàn)槲覍?duì)音樂(lè)非常感興趣,所以我下班后也練琴,從基礎(chǔ)練起,哈農(nóng)鋼琴練指法,第一篇,好像是C大調(diào),我練了一兩周,發(fā)現(xiàn)幾乎沒(méi)有什么效果,我終于明白鋼琴不是用來(lái)學(xué)的,而是用來(lái)練的。練習(xí)的時(shí)間是以年為單位來(lái)計(jì)算的。

如果對(duì)鋼琴?zèng)]有興趣、沒(méi)有欲望,那么學(xué)到的鋼琴就是個(gè)技術(shù)而非藝術(shù),得到的無(wú)非是一些技巧而非靈魂。不要舉周杰倫的例子,這算特例,不能用在邏輯推理以及科學(xué)實(shí)驗(yàn)中。
如果對(duì)一件事情沒(méi)有一點(diǎn)欲望,那請(qǐng)及早離開(kāi),再繼續(xù)下去,既浪費(fèi)時(shí)間也不會(huì)有好結(jié)果。
堅(jiān)持問(wèn)題
大概在98、99年的時(shí)候,我讀初二、初三,當(dāng)時(shí)我們的政治老師姓田,是個(gè)男的,是個(gè)大噴貨,老是課堂上吹牛,他說(shuō)他寫(xiě)字速度非???,能把圓珠筆寫(xiě)的斷油兒,但是我們從來(lái)都不信。
他特別愛(ài)說(shuō)的兩個(gè)成語(yǔ)就是“繩鋸木斷,水滴石穿”,就是說(shuō)再小的力量只要持續(xù)的時(shí)間足夠長(zhǎng),也能產(chǎn)生驚人的效果。當(dāng)然還有今天常用的“冰凍三尺,非一日之寒”。
這些其實(shí)都是在告訴我們要堅(jiān)持做一件事情,比如我們最熟悉的“每天一個(gè)單詞,10年就是3000多個(gè),每天一句話,10年就是3000多句,可誰(shuí)又能真的做到呢?”
關(guān)于堅(jiān)持,真的不用再說(shuō)任何言語(yǔ)了,我們普通人一定要堅(jiān)持,因?yàn)?/span>朗朗每天至少練琴2小時(shí),這是雷打不動(dòng)的。
經(jīng)驗(yàn)問(wèn)題
現(xiàn)在孩子已經(jīng)上小學(xué)了,在孩子小的時(shí)候是要定期去打疫苗的,我們打疫苗那個(gè)(不太大的)醫(yī)院提供免費(fèi)就醫(yī)服務(wù),終于有一次沒(méi)忍住,抱著免費(fèi)的不去白不去的心態(tài),就領(lǐng)了個(gè)免費(fèi)的專(zhuān)家號(hào)上去了。
是一個(gè)年齡很大的女大夫,期間說(shuō)的什么現(xiàn)在已忘記,只記得說(shuō)起小嬰兒感冒時(shí)鼻子會(huì)堵住,呼吸不暢。大夫根據(jù)多年經(jīng)驗(yàn),支了兩招兒。
第一,把開(kāi)水倒進(jìn)臉盆,把毛巾泡透后迅速擰成一個(gè)玉米棒形狀,然后塞進(jìn)水杯里,放到小嬰兒鼻子下方,通過(guò)吸進(jìn)熱的水蒸氣,可以使鼻子暢通。
第二,把衛(wèi)生間的淋浴打開(kāi),一直放熱水,直到水蒸氣充滿整個(gè)衛(wèi)生間,然后抱著小嬰兒進(jìn)去,這樣也可以吸到熱的水蒸氣。
道謝告別后來(lái)到家中,決定采用第一種方法。開(kāi)水太燙,徒手無(wú)法操作,跟燙豬蹄差不多,無(wú)法忍受,那就等等吧,稍微涼一點(diǎn)再說(shuō),等手可以操作的時(shí)候,發(fā)現(xiàn)溫度太低,已經(jīng)不怎么冒水蒸氣了。
我轉(zhuǎn)念一想,直接把開(kāi)水倒進(jìn)杯子里不就行了,干嘛非要再?gòu)拿砩限D(zhuǎn)一圈呢?于是拿一個(gè)高的杯子,稍微倒進(jìn)點(diǎn)開(kāi)水,效果甚好。
我從不否認(rèn)跟有經(jīng)驗(yàn)的人學(xué)習(xí),但自己要聰明些,要仔細(xì)分析對(duì)方表達(dá)的真正目的,可能目的是對(duì)的,手段卻不怎么高明。
如果一味的亦步亦趨,不僅有可能遇到錯(cuò)誤的經(jīng)驗(yàn),關(guān)鍵是你也永遠(yuǎn)無(wú)法超越他人。
方法問(wèn)題
關(guān)于方法的問(wèn)題,其實(shí)見(jiàn)仁見(jiàn)智。關(guān)于好方法的描述好像不太多,關(guān)于壞方法的描寫(xiě)倒是不少。如南轅北轍,心想往南而車(chē)子卻向北行,比喻背道而馳。
還有緣木求魚(yú),抓魚(yú)呢,卻跑到樹(shù)上去了,也比喻方向性的錯(cuò)誤。還有舍本逐末,比喻嚴(yán)重跑偏了。
我談?wù)勛约旱目捶ò桑?br />
1)作為一個(gè)技術(shù)工種,基本業(yè)務(wù)必須熟練,是必須哦。
2)平時(shí)多看書(shū)、多學(xué)習(xí)相關(guān)知識(shí),做到日積月累。
3)沒(méi)事多思考、多琢磨、多天馬行空,讓已有知識(shí)互相碰撞。
4)認(rèn)真對(duì)待第1條,努力做到第2、3條,并長(zhǎng)期堅(jiān)持下去,是長(zhǎng)期哦。
具體到程序員這個(gè)職業(yè):
1)作為碼農(nóng),編程能力必須強(qiáng),代碼一定要干凈整潔,一般情況下絕對(duì)不允許出現(xiàn)錯(cuò)誤。
2)經(jīng)常翻看編程語(yǔ)言的類(lèi)庫(kù)API,經(jīng)常翻看常用框架的官方文檔,使自己掌握的越來(lái)越多、越來(lái)越熟。
3)多看編程語(yǔ)言類(lèi)庫(kù)的源碼,多看常用框架的源碼,不僅使我們更加透徹的理解官方文檔,還能學(xué)習(xí)大牛們的思維和編程習(xí)慣。
4)認(rèn)認(rèn)真真對(duì)待第1條,這真的非常非常重要,努力做到第2、3條,并長(zhǎng)期堅(jiān)持下去,也是長(zhǎng)期哦。
做到這些足以讓你成為一個(gè)優(yōu)秀的程序員了。
如果還不滿足,可以深入研究數(shù)據(jù)結(jié)構(gòu)與算法,研究操作系統(tǒng),研究計(jì)算機(jī)的組成與工作原理。這任何一個(gè)都足夠研究的了。
如果對(duì)這些底層不感興趣,可以專(zhuān)心做業(yè)務(wù)。練習(xí)如何為特定的需求場(chǎng)景給出設(shè)計(jì)模型及方案,方案一定要易懂、易用、簡(jiǎn)潔、高效和易擴(kuò)展。
并去思考這樣的設(shè)計(jì)方案如何落地并通過(guò)代碼實(shí)現(xiàn),而且代碼實(shí)現(xiàn)的復(fù)雜度要合理,既能滿足目前需求,也要留有后路以便后續(xù)擴(kuò)展,代碼一定要是模塊化、結(jié)構(gòu)化和清晰化。
戳:百萬(wàn)字長(zhǎng)文帶你學(xué)習(xí)「Java」
如果大家想要實(shí)時(shí)關(guān)注我更新的文章以及分享的干貨的話,可以關(guān)注我的公眾號(hào)Java3y。
獲取Java精美腦圖

?獲取Java學(xué)習(xí)路線

獲取開(kāi)發(fā)常用工具

?加入技術(shù)交流群

?精美知識(shí)點(diǎn)PDF



點(diǎn)個(gè)在看
,分享到朋友圈
,對(duì)我真的很重要??!評(píng)論
圖片
表情
