這是一篇關(guān)于虛度青春的短篇回憶錄痊焊。
多年來盏袄,我一直在學(xué)習(xí)編程語言忿峻,然后用它們來構(gòu)建更好的投資工具。在建立預(yù)測和風(fēng)險管理模型之余辕羽,編程方面的工作堆積如山逛尚。
但實際上,我并沒有花太多時間在真正需要解決的問題上刁愿。
我把大部分注意力放在了算法和編程語言上绰寞。多年來,我每周都要花幾個小時學(xué)習(xí)計算機(jī)基礎(chǔ)知識,卻沒有花太多時間應(yīng)用這些知識來讓現(xiàn)實世界變得更美好滤钱。
而我的一個朋友卻基于微軟 Office 開發(fā)出了一個完整的產(chǎn)品觉壶,它使用 Access 保存數(shù)據(jù),使用 Excel 分析數(shù)據(jù)件缸,然后使用 Word 輸出報告铜靶。
當(dāng)他把產(chǎn)品賣給一家大公司時,我為他感到高興他炊,同時也有些嫉妒争剿。我比他更了解編程,但卻沒能推出可以解決實際問題的產(chǎn)品痊末。
實際上蚕苇,為什么要開發(fā)產(chǎn)品比如何開發(fā)產(chǎn)品更加重要。我花時間學(xué)習(xí)如何編程凿叠,而我的朋友把時間花在解決實際的問題上涩笤。
他從使用非常簡單的工具開始,一步一步往前走盒件,直到找到一個完整的解決方案辆它。在這個過程中,他自學(xué)了如何將其他工具整合在一起履恩。這仍然需要做大量的工作锰茉,但他做到了,盡管資源非常有限切心。
神奇之處在于“為什么”
后來飒筑,我加入了一家初創(chuàng)公司,并最終汲取了這個教訓(xùn)绽昏。
一個團(tuán)隊能否取得重大突破從來都不取決于如何使用代碼完成某些功能协屡,而在于知道要做什么,以及為什么要這樣做全谤。
在創(chuàng)造性的旅程中肤晓,沒有什么比在不必要的東西上投入太多更令人心碎的了。
如果你想要創(chuàng)造出一些有用的東西认然,首先要知道“為什么”要這樣做补憾。從一開始你就要問自己:誰會用這些東西,它們將如何改善他們的生活卷员?
專注于解決真正的問題可以加快學(xué)習(xí)速度
當(dāng)你專注于真正需要解決的問題時盈匾,大腦中的信息留存率會更高。我們的大腦會優(yōu)先考慮需要保存的信息毕骡,并忽略大部分其他東西削饵。這樣可以節(jié)約能量岩瘦,但不利于學(xué)習(xí)。
知道自己為什么要學(xué)習(xí)窿撬,就相當(dāng)于觸發(fā)大腦要優(yōu)先考慮新信息启昧。
追求創(chuàng)造性的活動會讓你學(xué)得更快,而這并不要求你一定要學(xué)會一門編程語言劈伴。
下面這些事情比學(xué)習(xí)編程語言更重要
找到真正的問題箫津。
把問題寫下來,它現(xiàn)在是什么樣的宰啦,它應(yīng)該是什么樣的苏遥,并盡可能詳細(xì)。例如赡模,如果你的問題與使用 Office 文件格式保存數(shù)據(jù)有關(guān)田炭,那么就詳細(xì)說明這方面的問題,這樣有助于找到最好的解決方案漓柑。
當(dāng)你對問題本身以及你想如何解決問題有了很好的描述教硫,你就已經(jīng)成功了一半。
然后你要努力去澄清問題辆布,朝著可以找到解決方案的方向邁進(jìn)瞬矩。
如果你在這個時候糾結(jié)于編程語言,那么你可能不是一個好程序員锋玲。你要不斷培養(yǎng)描述問題和解決方案的能力景用。
當(dāng)你對問題有了很好的描述,并且確切地知道想要什么惭蹂,然后再去學(xué)習(xí)一門編程語言來解決這個問題就變得很容易了伞插。
關(guān)于編程語言的 One more thing
Java
從 1995 年第一個版本發(fā)布到現(xiàn)在,Java 語言已經(jīng)在跌宕起伏中走過了 22 年盾碗,最新的 Java 版本也已經(jīng)迭代到 Java 9媚污。當(dāng)年 Java 語言的跨平臺優(yōu)勢如今看來也只不過是家常小菜,Go廷雅、Rust 等語言橫空出世耗美,進(jìn)一步拓寬了編程語言的邊界。當(dāng)年發(fā)明 Java 語言的 Sun 公司早已被 Oracle 收購航缀,Oracle 現(xiàn)在也正處于水深火熱的云計算浪潮當(dāng)中商架,甚至連 Java 之父 James Gosling 也加入了當(dāng)今世界最大的云計算公司 AWS。
Java 語言發(fā)展的這 20 年也正是全球互聯(lián)網(wǎng)迅猛發(fā)展的 20 年谬盐,Java 語言同時也見證了電商浪潮甸私、移動互聯(lián)網(wǎng)浪潮诚些、大數(shù)據(jù)浪潮飞傀、云計算浪潮皇型,所以在現(xiàn)今各大互聯(lián)網(wǎng)公司身上都能看到 Java 的身影。TIOBE 的語言排行榜顯示砸烦,自 2016 年初 Java 語言就出現(xiàn)了明顯的下頹趨勢弃鸦,開發(fā)者社區(qū)也出現(xiàn)了一些唱衰 Java 語言的論調(diào)。