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