一個故事告訴你,學習程式設計是否需要天賦?

令狐義卓發表於2021-02-08

學習程式設計需要天賦嗎?

一個故事告訴你,學習程式設計是否需要天賦?

你適合學習程式設計嗎?**

有的時候我也會懷疑我自己,我到底適不適合學習程式設計呢?感覺身邊的同齡人都好牛X:

1、985/211

  1. 阿里/百度/騰訊/美團
  2. ……

說真的,我真的很羨慕,有的時候就覺得,這才是一個程式設計師該有的嘛,而我嘞:

  1. 不知名三本(俗稱花錢買學歷)
  2. 混跡於各個小廠,薪資待遇強度,不堪……

3、

__就是在熬著唄!__

有段時間,每天早上醒來,我都痛苦萬分,為啥,真的,不想去上班了……

現在的年輕人好像都是熬夜黨,我也是,為什麼熬夜呢?我看過一句深得我心的話語:

__每一個不願早睡的年輕人,都是有一個不想過去的今天和一個不想面對的明天!__

不知道你是不是這樣,其實吧,每天晚上上床睡覺的時候可以說是我一天當中最幸福的時候了,什麼也不用想了,可以躺在床上好好放鬆休息了,那種感覺真的很棒,可是,一般我都習慣晚睡,有的時候,不是不想睡,而是不敢睡,因為睡著了,也就是一眨眼的功夫,就要起床了,然後,各種事情……就來了……

曾經有段時間,我一直告訴自己,現在還是因為自己技術能力跟不上,所以在工作中會比較吃力,我一定要多多學習,想必只要自己的技術能力提升上去了,那工作起來就如魚得水,每天就不會那麼累了……

可是實際上呢?我覺得自己也努力了,也學了,可是日復一日,感覺自己始終如此,技術能力還是弱的一批,依舊每天是在熬著……

我真的適合程式設計嗎?我是不是沒天賦啊?

學習程式設計,真的需要天賦嗎?**

那麼學習程式設計,是不是真的需要有天賦呢?如果沒有天賦,是不是就不適合學習程式設計呢?不知道你是否思考過這個問題。

那好吧,你先來看下,你是否有這樣的困惑呢?

  1. 覺得自己學了很多東西,但是就是技術能力不見漲
  2. 有些知識看似會了,就是寫不出來,一看就會,一寫就廢
  3. 讓你寫程式碼寫不出來
  4. 同樣的知識點,就是沒有別人理解的快
  5. 同樣的功能,你寫的程式碼就是垃圾,可能還寫不出來
  6. ……

怎樣,你是否有過上述這些問題呢?當遇到上述這些問題,你是否也懷疑過,自己到底適不適合程式設計呢?是不是在程式設計這塊,自己真的沒什麼天賦呢?

至少我這樣自我懷疑過……

天賦是什麼?**

那你有沒有思考過,什麼才是天賦呢?

天賦即天分,是成長之前就已經具備的成長特性。在某些的事物或領域具備天生擅長的能力,而使其可以在同樣經驗甚至沒有經驗的情況下以高於其它人的速度成長起來,而且有它的獨一性,特殊性。如果這個人具有的成長潛力和可能性已經在他的人生中表現化了的話,那麼他就具備了該方面的天賦器量。

天賦也可以被理解為人從小到大被動接受和養成的人格特點,根據小時候還沒發育完全的大腦受所在環境的誘導和影響來分類的話,天賦值也有所不同。而這個天賦是不可逆的。

以上是摘自百度百科對“天賦”一詞的解釋,其實說真的,我就覺得,天賦這個玩意有點玄學的感覺,著實讓人摸不著頭腦,覺得雲裡霧裡,不知道天賦是個什麼東西!

那我就簡單點說!

有句話是這麼說的,實現夢想沒有捷徑,努力也是一種天賦,說起努力,想必大家就不那麼陌生了,所以啊我覺得,與其說想學習程式設計是否需要天賦,倒不如說成是:

一個人擁有什麼特質,比較適合程式設計,比如耐得住寂寞(有的時候,程式設計是需要你獨自一個人幹到深夜兩三點的……)

當然,努力是必不可少的,而努力,每個人都可以,所以,程式設計嘛,其實每個人都可以!

所以啊,要想弄明白學習程式設計,是否真的需要天賦,首先要清楚,這個天賦到底指的是什麼,我覺得,比較直觀的來說,這個天賦指的就是比較適合程式設計的一些特質。

比如說以下這些特質:

  1. 比較喜歡程式設計,感興趣,覺得敲程式碼是一件很酷的事情
  2. 細心,有耐心,做事情認真
  3. 勤于思考,善於總結
  4. 喜歡用實踐來驗證理論
  5. 愛學習,坐得住,能鑽研
  6. ……

那麼,只要你擁有以上這些特質中的一二,你就是適合程式設計的,沒什麼不可以的,你完全可以從事這個行業。

人和人之間還是有差別的**

不過,我們不能不承認的一件事情就是其實人和人之間還是有差別的,我們在學習程式設計的過程中,基本每個人都會遇到的一個共性問題就是,很多知識,學了就忘,那麼要在用的時候,自己就可能記不起來了,但是,我們會發現,現實生活中,有些人的記憶特別好,同樣的知識,也許你看了就忘了,但是人家卻可以記住很久。

那你說,這是不是就是程式設計的天賦呢?

記憶好,不單單是程式設計的天賦,如果你記憶力超群,我想,在任何一個領域,它都會成為你的天賦,那麼現實中,這樣的人畢竟還是少數,也就是說,即使你記憶力一般,平均水平,但是你對程式設計感興趣,能夠坐得住,沉下心的去學習程式設計,那麼我認為,你完全是適合學習程式設計的,也可以說,你有程式設計的天賦。

因為有些人,很難靜下心來去學習一些新知識,比較有難度的知識的,沒耐心的,那麼在學習程式設計這件事情上,可能就比較費勁了

我們再來舉一個例子:

假如小明同學記憶力好,看過的API和一些知識點都會記得很清楚,不會那麼快容易遺忘,而小紅呢?記憶力一般般,但是英語比較好,基本上程式設計學習看的都是英文版的第一手資料,可以掌握一些最新的技術,那麼你說,小明和小紅哪個更有程式設計天賦呢?

小明和小紅兩個人之間是有差別的,但是對於程式設計這件事情上,可以說兩個人都比較適合,而像記憶力和英語這些能力,其實都是可以透過後天培訓訓練學習增強的。

所以,“學習程式設計是否需要天賦”我覺得說成“學習程式設計,應該具備哪些特質比較好”更有意義,而這些所謂的特質,大多都不是天生就有的,都是可以後天形成的,也就是說:

透過一定的學習和培訓,大部分都可以學習程式設計,都是適合的!

天賦是可以秒殺其他人的能力**

那你是否認天賦的存在嗎?

其實還真不是,我這個人相信人和人之間是有智商差別的,同樣,我也相信某些人在某些方面確實有天賦,而這個天賦的存在幾乎是碾壓同級別對手的。

比如我們都知道的“賈伯斯”,神話般的存在,我想,他在科技技術這塊一定是擁有非同尋常的天賦存在的,幾乎碾壓99%的人,但是,我想說的是,又有多少個賈伯斯呢?這個世界上,其實還是普通人多!

而普通人真的都到了要拼天賦的時候了嗎?不是有這樣的一句話嘛:

以大多數的努力程度之低,還輪不到拼天賦的地步!

我是覺得這句話說的挺有道理的,不知道你怎麼看?因為的確存在很多人真的只是看起來很努力而已,也就是所謂的“偽勤奮”

對於這句話,我在網上看過這樣一個不同的觀點:

“說天賦沒用只要努力就行的也是夠了。天賦就是相同的努力程度,有天賦的人能兩天理解一個新框架 /語言 /業務流程,沒天賦的人一個月也入不了門。沒天賦就不要用只要努力就行來安慰自己了。而且天賦也不是用來拼的,天賦的存在是讓你不用拼。”

這個聽起來貌似也很有道理,哈哈,我覺得再說就要扯到老子的陰陽說了。

我不否認天賦的存在,也即是說我相信有些人確實在某方面做某些事情非常擅長,也就是說擁有所謂的天賦,當然,對於程式設計也是一樣的,但是,這個天賦我覺得是個很虛的東西,與其說,學習程式設計是否需要天賦,倒不如說“擁有哪些特質,更加有利於你學習程式設計”

如果你想成為賈伯斯那樣的人,光憑努力夠嗎?我覺得遠遠不夠,沒有天賦,你很難達到!

可是又有多少人能成為賈伯斯那樣的人呢?

即使沒有賈伯斯那樣的天賦,即使你很普通,但是,只要你透過一定的學習和培訓,你就能從事程式設計,而且,只要你持續的投入時間,持續學習你就可以超越很多人。

要知道,要成為一代宗師和普通人中的佼佼者,需要的相關條件是真的不同的,一代宗師是極少數中的極少數,普通人中的佼佼者才應該是我們追求的!

為什麼我覺得別人比我聰明**

是不是因為他比我更加有天賦呢?

可能你會說了,為什麼我就覺得他比我聰明呢?同樣的一段程式碼,我就是看不懂,或者需要花很長時間才能搞懂,而他只要看一下,差不多就搞懂了,或者是實現一個功能,他能很快寫出來,而且比我寫的還優雅,這真的是我沒有天賦嗎?

其實我覺得不是,我認為主要的原因有兩點:

  1. 你不夠細心
  2. 你缺乏經驗

什麼意思呢?先來說第一點,想必你一定深有感觸,如果自己在某段時間內比較毛躁的話,是很難靜下心來去做一件事情的,而這個心情有的時候是無法把控的,那麼關於第二點罵我舉一個例子:

大家逛知乎的想必都知道一個大神級的人物就是“輪子哥”,很多人覺得輪子哥太強了,想到自己就會感嘆道,人和人,差別咋就那麼大呢?

你要知道,輪子哥人家上大學之前就有四五年的程式設計經驗,你咋跟人家比,另外你也知道,程式設計這個行業,一般工作年限高一點的話,薪資就會高點,為啥,核心不就是“經驗”二字嗎?

所以有的時候不是因為你沒天賦,而是你相比他人,缺乏經驗而已,很多人的努力你是看不見的,你最後看到了他的成果,你說他很有有天賦!

其實啊,說到底,程式設計就不是個簡簡單單的寫程式碼,它有很多寫程式碼之外的事情,比如說,你得勤思考,善總結,持續投入時間,不斷練習,對於程式設計上的工作而言,只要你有興趣,夠用心,工作上的事情基本都能搞定。

賣油翁的故事**

我想,一定有很多人想學習程式設計,但是又怕自己沒這方面的天賦,擔心自己學不會,那我就給大家說一個故事,看完這個故事,應該能給你吃一顆定心丸了。

這個故事就是賣油翁,不知道有沒有人知道,《賣油翁》是宋代文學家歐陽修創作的一則寫事明理的寓言故事

這篇文言文大概講了這麼一個故事,康肅公陳堯諮善於射箭,世上沒有第二個人能跟他相媲美,他也就憑著這種本領而自誇。有一次,他在家裡射箭,有個賣油的老翁放下擔子,站在那裡斜著眼睛看著他,很久都沒有離開。賣油的老頭看他射十箭中了八九成,但只是微微點點頭。

陳堯諮問賣油翁:”你也懂得射箭嗎?我的箭法不是很高明嗎?”賣油的老翁說:“沒有別的奧妙,不過是手法熟練罷了。”陳堯諮聽後氣憤地說:“你怎麼敢輕視我射箭的本領!”老翁說:“憑我倒油的經驗就可以懂得這個道理。”於是拿出一個葫蘆放在地上,把一枚銅錢蓋在葫蘆口上,慢慢地用油杓舀油注入葫蘆裡,油從錢孔注入而錢卻沒有溼。於是說:“我也沒有別的奧妙,只不過是手熟練罷了。”陳堯諮笑著將他送走了。

(故事解讀來源網路)

那這個故事啥意思呢?想必聰明的你已經猜到了,用一個成語足以概括,那就是“孰能生巧”,當你做的多了,就積累了大量的經驗,自然就會覺得心應手

那學習程式設計需要天賦嗎?**

看到這裡,不知道你明白了沒有,學習程式設計需要天賦嗎?

我覺得,有了更好,有可能你能成為一代宗師,沒有也無所謂,你依然可以透過一定的學習和培訓去學習程式設計,從事程式設計,而且,後期,只要你持續投入時間,持續學習,你依然有可能超越大多數人。

也就是說,不需要天賦,有天賦更好,你只要穩紮穩打,把相關的知識學紮實,依然可以用程式碼實現相關功能,當然,你也需要在工作和學習中,不斷的學習總結,力求不斷的提高自己的程式碼能力。

相信苦心人,天不負,百二秦關終屬楚,有志者,事竟成,三千越甲可吞吳!

程式設計其實也是門手藝,孰能則生巧,賣油翁不是已經說了嘛!

零基礎學習Java程式設計,可以加入我的十年Java學習園地

相關文章