為什么學習編程這么難?如何成為一名優秀的程序員
您花了無數小時來制作YouTube教程,參加付費在線課程以及閱讀編程入門文章。但是,感覺就像有一個障礙,您根本無法突破。有很多人在編寫您不了解的復雜代碼,并解決復雜的編程問題。
"我永遠都不會變得像他們一樣,"你想,敬畏。"他們是如何學會做到的?"
我要告訴你一件事-他們當然不是天生的會編碼,他們也不比你聰明。
在本文中,我將分解您為克服編程恐懼而可以采取的步驟。
如果您熱衷于進入需要編程知識的領域(例如數據科學或軟件開發),那么克服這種恐懼對于您而言確實很重要。最重要的是,編碼焦慮會阻礙您前進多年。然而,很少有人談論這件事。
背景-我的經驗
我是學校里的學生。
我以解決問題的能力而感到自豪,并熱愛數學和科學等學科。我學習速度很快,幾乎沒有犯錯。
但是,當我高中畢業后,情況發生了變化。
編程與高中課程中所教授的科目不同。學習的唯一方法是犯錯誤。作為一個不習慣于此的人,我驚訝于我花了多長時間學會了編碼。
我想:"我犯了太多錯誤。"
突然之間,我的表現不再是最好的了。我在看似簡單的任務上苦苦掙扎-甚至是設置編程環境。
我開始認為自己不是編碼專家。
每個人似乎都比我更好。我什至無法毫無錯誤地在Internet上編譯代碼,更不用說理解它或編寫自己的程序了。
這導致了很多挫敗感,我放棄了。
它不僅發生了一次。
我想我嘗試學習如何編碼,并以不同的編程語言參加了10多次在線課程。
每次,我以為自己不夠出色,就放棄了。
我面臨的問題不是缺乏信心。相反。我太有信心了我非常有信心,當事情沒有按照我想要的方式發生時,我感到沮喪并放棄了。
我最大的錯誤?
認為編程是可以在短時間內學會的東西,而不是承認有學習曲線。如果我理解并接受了從頭開始學習編碼的過程需要付出努力和耐心,那么我本可以為自己節省很多挫敗感和時間。
在本文中,我將細分您在該領域取得成功所需要的態度。
當我放棄學習編碼時,我認為世界上有兩種類型的人-為編程而被淘汰的人和沒有的人。
原來我是對的。
但是,那些精于編程的人不一定比你聰明。
他們只是有一定的心態,并且有一種態度可以幫助他們在該領域脫穎而出。以同樣的態度,您也可以到達那里。
如何成為一名優秀的程序員
> Photo by ALAN DE LA CRUZ on Unsplash
您首先需要確認自己沒有什么專長。
您所要做的只是參加一兩門在線課程,并完成了一些編程教程。當然你還不擅長。
有些人一生都致力于該領域,而您才剛剛起步。
請記住,下次您看到一堆看不懂的復雜代碼。不要為另一個人在解決問題上的出色表現而感到不知所措,而您可能永遠也無法到達那里,而是想一想他們為達到自己的水平而花費的時間和精力。
如果您想成為普通碼農,只需要付出更多的努力。
這不是比賽。僅僅因為他們設法解決了您無法解決的復雜問題,并不意味著他們比您聰明。
他們付出了比您更多的時間和精力。要到達那里,您需要這樣做。
學會忍耐
> Photo by Adrien Delforge on Unsplash
耐心可以說是程序員最重要的性格特征之一。您需要成為能夠凝視電腦屏幕數小時的人。
一個看似簡單的問題可能要花費數小時甚至數天才能解決。
您只能坐下來花費數小時來調試代碼,才能學習。
我發現培養這種習慣的耐心真的很困難。
如果您像我一樣,容易感到無聊或注意力不集中,則需要花費大量時間來訓練自己,以耐心等待。
一旦開始學習盯著計算機屏幕并投入大量時間來解決問題的技巧,您就很容易實現成為一名優秀程序員的目標。
固執
固執:堅決不改變自己對某事的態度或立場的決心。
> Photo by Vidar Nordli-Mathisen on Unsplash
還記得您小的時候,您的父母拒絕給您買玩具嗎?
你大叫,哭泣和抱怨了幾個小時。您拒絕與他們一起離開商店,直到他們為您購買了商店,并引起了現場。
最后,你的父母讓步了。他們放棄了,給你買了玩具。
這正是您學習編碼時所需要的那種固執。
拒絕接受"否"的答案。
每當您因為不知道如何進行而感到沮喪或一堆代碼沒有運行時,就不要放棄。
呆在那里,并表現出與小時候一樣的決心。如果您希望這個玩具至少比小時候想要的玩具少一半,那么您將呆在那里并完成開始的工作。
記住:如果您真的想要它,無論事情變得多么令人沮喪,您都將待在那兒,度過難關。
恰到好處的信心
> Photo by Joshua Bachand on Unsplash
過度自信是不好的。
過度自信會阻止您取得進步,因為您對自己的期望過高。
那里的人比你更擅長于此。當您看著這些人或閱讀他們的代碼時,很自然會感到無能。
取得任何進展的第一步是要承認它們比您更好。
當然是。
他們花了比您更多的時間,并且花了多年的時間學習如何編碼。如果您想變得更好,那么您也需要投入時間和精力。
實際上,即使是經驗豐富的程序員也知道他們不擅長編碼。承認還有很多東西需要學習的能力是任何程序員最重要的特征之一。
您不可能完全了解該字段所需的一切。科技行業在不斷發展,總是會有新的東西要學習。
了解您不可能學到一切。同時,嘗試通過跟上不斷發展的技術來獲取盡可能多的知識。
學習編碼需要大量的精力。
您將需要有正確的態度,養成良好的習慣。您養成的這些習慣將使您的職業生涯更長一段路,而不僅僅是智力,能力或記憶能力。
為了克服對編程的恐懼,您首先需要了解學習曲線。接受您還不擅長的事實,并知道這還可以。
您學會了摔倒很多次然后重新站起來,從而學會了騎自行車。
可以將編程視為一輛自行車。
您跌倒的次數太多了,但這是唯一的學習方法。隨著時間的流逝,您將掌握它,并且變得越來越好。
您只需要有適當的耐心和強,就可以在每次跌倒時恢復并繼續。
這就是本文的全部!我希望它對您的編程旅程有幫助,并克服您對學習編碼可能遇到的任何焦慮。
謝謝閱讀!
不可能與可能之間的區別在于一個人的決心—湯米·拉索達(Tommy Lasorda)
原文鏈接:
https://towardsdatascience.com/finding-it-difficult-to-learn-programming-heres-why-639024be0a13