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