馬漢
0.忽視了編程終究是以人為本的。是的,機(jī)器的確會執(zhí)行代碼,但編程是為人們解決問題的,將他們的需求轉(zhuǎn)換為由其他人讀取、維護(hù)和修改的代碼。
1 .未能花充足的時間練習(xí)編程。根據(jù)工作或日程安排,可能會花費(fèi)大量時間在與編程相關(guān)的任務(wù)上,但實(shí)際上這些并非編程本身。
2.停留在正在學(xué)習(xí)的某個技術(shù)的表面。沾沾自喜于自己掌握了足夠完成任務(wù)的基礎(chǔ)知識,對技術(shù)的了解卻只流于表面,未有觸及核心內(nèi)容。
3.在編程學(xué)習(xí)中挑挑揀揀,無法持之以恒。一開始學(xué)習(xí)Rails,半道兒發(fā)現(xiàn)Phoenix也不錯,哦,學(xué)點(diǎn)JavaScript吧,這樣就能用Node.js了......從TJ轉(zhuǎn)到Go然后堅(jiān)持了一陣子......說起來Rust好不好用來著?
一周內(nèi)的瀏覽歷史全是這些東西,“Web開發(fā)者還是數(shù)據(jù)科學(xué)家”“Clojure死了嗎?”“Clojure對比Elixir”“Crystal足夠成熟嗎”“Golang有什么好的架構(gòu)”“Phoenix對比Buffalo”以及“Kotlin與網(wǎng)頁開發(fā)”。
4.在線閱讀書籍和觀看課程,卻不練習(xí)相應(yīng)的技能,因此很快就會忘記它們。
5.不關(guān)心基礎(chǔ)知識。如果沒有對象關(guān)系映射(O/RMapping)的輔助,連最基本的SQL連接都搞不定。
6.缺乏足夠的耐心或自律來完成學(xué)習(xí)過程和掌握任何技術(shù)所需的步驟。
7.疲于應(yīng)付日常編程中的各種問題,缺乏繼續(xù)學(xué)習(xí)的長遠(yuǎn)規(guī)劃安排。
8.浪費(fèi)太多時間在各種框架和庫(如Angular,React和Vue)中進(jìn)行選擇,而不是僅僅認(rèn)準(zhǔn)一個,使用它并且只有在真正需要時才切換其他。實(shí)際上講就是,一心只想找到能一勞永逸的萬能鑰匙,而不愿意先充分利用手頭資源。
9.無法認(rèn)識到現(xiàn)代編程需要多語言協(xié)作的性質(zhì)。在大多數(shù)領(lǐng)域,期望一種編程語言成為解決所有問題的靈丹妙藥是荒誕不經(jīng)的。……