文章目錄:
一痊夭、存在的問題
二、幾條建議
一脏里、存在的問題
如果你問一個年輕的前端開發(fā)人員她我,你在今后的3年內(nèi)如何提升自己的能力?他可能會說“我現(xiàn)在對Web前端比較熟悉迫横,但我想深入了解AngularJS番舆,另外React現(xiàn)在發(fā)展的很快我也想看一下。之后矾踱,我會花時間去學(xué)習(xí)iOS和Android開發(fā)恨狈。”看上去不錯呛讲,但缺乏系統(tǒng)性的目標(biāo)禾怠。或者說圣蝎,他制定了學(xué)什么刃宵,但對為什么要學(xué)這些并沒有仔細(xì)的思考。
在技術(shù)領(lǐng)域徘公,有太多的東西會迅速的過時牲证,如何利用有限時間,最大化你的長期收益关面?這里我可以給出幾條建議
二坦袍、幾條建議
1、打造你的工具箱
高效的開發(fā)環(huán)境
我們可以從編緝器談起等太,這里有IDE vs Text Editor捂齐,有Vim vs Emacs,有Sublime vs Atom缩抡,那該如何選擇呢奠宜?在做選擇之前,我們先想想自己的目標(biāo)瞻想。我們希望這是一個長期的投資压真,這款編緝器能被長期使用,在這個過程不斷的打磨蘑险,使其能完全適合自己的習(xí)慣滴肿,最大化編緝效率。如果程序員是俠客佃迄,編緝器則是他手中的劍泼差。
信息采集器和筆記
你需要做的是發(fā)現(xiàn)那些你要長期從事的任務(wù)(往往不隨技術(shù)而改變贵少,也不隨公司而改變),將完成這些任務(wù)所需的工具調(diào)整至最優(yōu)堆缘。
2滔灶、開闊你的視野,構(gòu)建你的技術(shù)體系
目標(biāo)應(yīng)該設(shè)定在解決哪一類問題套啤,而不是精通哪一類技術(shù)宽气。技術(shù)只是手段,不是目的潜沦。
不過即便有了明確的目標(biāo)萄涯,選擇哪一類技術(shù)學(xué)習(xí),如何學(xué)習(xí)唆鸡,在信息過載的今天依然是一個難題涝影。常有的觀點(diǎn)是應(yīng)該學(xué)習(xí)最新的技術(shù),因?yàn)槔系囊呀?jīng)過時争占,而反對的觀點(diǎn)則是新技術(shù)還不成熟燃逻。我個人的觀點(diǎn)是,當(dāng)初入一個領(lǐng)域時臂痕,選擇主流技術(shù)框架伯襟;當(dāng)你有一定經(jīng)驗(yàn)后,選擇技術(shù)時更應(yīng)該關(guān)注背后的推動者握童,我相信優(yōu)秀的人和團(tuán)隊(duì)總能打造優(yōu)秀的產(chǎn)品姆怪,無論是商業(yè)公司還是開源社區(qū)。不必太在意技術(shù)的新舊澡绩,因?yàn)榭赡芎芸於紩蔀檫^去時稽揭。你真正要學(xué)習(xí)的是技術(shù)背后的思想。
有不少語言與開源項(xiàng)目會寫它的Coding philosophy肥卡,這是很意思的溪掀,你可以從它們的源代碼中去驗(yàn)證這些編程理念。以Python為例步鉴,如果你執(zhí)行import this就會看到它的理念揪胃,再如Python中一個著名的開源庫Celery,在它的文檔有專門一節(jié)講述它的編程理念氛琢。它們對你的影響會比這些技術(shù)本身來得更深遠(yuǎn).
我的另一個學(xué)習(xí)原則是只嚣,在選擇學(xué)習(xí)一門新技術(shù)時,最大化它與你現(xiàn)有知識庫的差異性艺沼。讀起來可能有拗口,例如你會Django蕴掏,接下去你應(yīng)該去學(xué)習(xí)Ruby on Rails還是NodeJS? 依據(jù)這個原則障般,你應(yīng)該學(xué)NodeJS调鲸,因?yàn)樗漠惒絀O模型在理念上與Django的同步模型差異很大,而RoR則與Django更多相似之處挽荡。
最后我建議每個程序員都應(yīng)該經(jīng)營一款自己的產(chǎn)品藐石,它可以是一款app,一個網(wǎng)站或是一個開源軟件定拟。
3于微、重視溝通能力的培養(yǎng),累積你的人脈
4、尋找發(fā)揮你才華的平臺(公司前景,團(tuán)隊(duì)質(zhì)量,薪資福利)