人人都想自學程式設計,為什麼堅持下來的沒幾個?

不要陷入「我正在學習,這已經足夠好了,等我準備好了,我再去找工作」的迷思。
評論
Photo Credit:Reuters
評論

本文獲得合作媒體 36kr 授權轉載。本文作者 Xiang Zhou ,原文標題 The most difficult things about learning to code by yourself — and how to tackle them

不管是半途而廢,還是抽不出時間,最終都要把學到的東西落實到應用中去。近年來,許多人對學習程式設計產生了興趣。他們要麼透過線上課程開啟了學習,要麼透過面對面授課,當然還有一些人淺嚐輒止。

像 code.org 、 codecademy 和 freeCodeCamp 之類的網站越來越受歡迎--畢竟網路上有大量的程設資源。

但是學習程式設計並不容易。以下就是一些我們在學習中會面臨的挑戰:

1. 每天都找不到合適和足夠的時間

如果你正在自學程式語言,很可能你還有其他的事情要做。

你可能有一份兼職或者一份全職工作,或者要居家照顧小孩。關鍵是很難抽出空來。那麼,你如何每天撥出時間來學習程式設計呢?

有些人可能會說:「如果你肯下功夫,總能找到時間。」說實話,我同意。

所以問題就變成了:「你每天應該花多少時間學習程式設計?」如果每天只能抽出半個小時,那還能學到東西嗎?

這個問題只有你自己才能回答。每天應該學多久的程式設計,這個很難有確切的答案。有些人建議時間不要太長-- 15 分鐘就夠了。

另一方面,我也聽說過有些人在一年左右的時間每天學習 9 到 10 個小時的程式設計,取得了驚人的進步。所以如果你想找到一些動力,可以參考一下這個。

底線在於:只有你自己知道你每天可以抽多少時間出來學習程式設計,並養成習慣。 freeCodeCamp 的創辦人 Quincy Larson 曾在 twitter 上說:

「不在於某一天突飛猛進,而是每天都能循序漸進。」

你可以自己去找找資源,看看那些在技術領域工作了十幾年的資深開發人員是怎麼做的,儘管這個不一定是絕對標準,但會讓你知道如何為自己設定一個現實的、可持續的學習計劃。

2. 在「沒有取得長足進步」和「精疲力竭」之間找到平衡點

就我個人而言,我在這方面掙扎了很久。

當時有幾天,我就是沒法理解書中的一個程式碼片段。我非常疲憊,以至於不得不強行讓自己冷靜下來,去陽台深呼吸。

從那時起,我就一直提醒自己不要用力過猛,以免物極必反。

學習程式語言並不容易。你需要集中注意力--尤其是當你學習新事物的時候。這是一種精神上的負擔,有時候你無法弄清楚--為什麼你寫的程式碼沒法奏效,或者為什麼它就奏效了。

我發現,每當我真正專注於正在解決的問題時,我的效率非常高,同時也非常放鬆--當我發現一個需要解決的問題的時候,當我在網路上找到了解決辦法的時候,當我試了各種各樣的辦法想看看哪個能奏效的時候,以及當我解決了所有問題的時候,我很享受整個過程。

在演算法學習中,我們遇到的很多東西都是非常複雜的(數據結構和演算法等等),每當我學習寫程式時,我都會應用「50/50 規則」。

我用 50% 的時間來做困難的任務,學習概念和演算法等等。另外 50% 的時間我就做自己最有興趣的事。所以我在日常學習中保持了一種平衡。

所以,更直接一點來說,你需要熱愛自己的工作。我們來看看下一點。

3. 熱愛自己的工作

雖然聽起來很老套,但這是事實。如果你熱愛自己正從事的工作和方向……你就不需要從外界的認可獲得動力。這種滿足感是無法偽造的。

4. 記得在完成了別的工作後,繼續堅持學習程式設計

事實上,當涉及到自學時,你永遠都沒辦法心無旁騖地學習。

我們在生活中都扮演了各種各樣的角色--可能是丈夫,或者妻子,或者父母。你需要照顧家庭,或者工作,或者完成學業。

當我們還有其他角色,哪裡還有時間去學習程式設計呢?

有時候你的確做不到一直堅持學習。我曾經長達 2 個月完全停止學習程式設計。

但在那之後,我立即又撿起了寫程式的學習。我發現自己忘記了很多學過的東西。當你拿起同一本書,卻不知道如何繼續讀下去時,你可能會感到沮喪。「天啊,難道我真的要重頭來過,再學一次嗎?」

這就是你必須堅持到底的時候了。

你需要告訴自己:「好吧,第一個小時的學習可能很慢,效率也不高。不過沒關係,我明天再多學點就可以補上了。」

但粉飾也沒用,只能繼續前進。你可以發洩,但是只要發洩完了,就趕緊繼續學習。

5. 無論如何,保持動力

自學是很不一樣的。當你自學寫程式的時候,身邊沒有人陪著你。沒有同學,沒有社交,成功了也沒有喝彩。大多數時候,你都是一個人。大多數時候,你都是孤獨的。

所以你需要找到某種動力來保持前進。

我一直在看這個網站-- r/macsetups ,因為那裡有很多開發人員。他們用強大的硬體來創建自己想要創建的軟體。沒有比這更值得的了。

要獎勵自己,讓它成為一種習慣。

獎勵可小可大。可以是一天結束後洗個熱水澡,也可以是喝杯飲料。告訴自己你做得很好。

6. 不要「為了學習而學習」,要去面試、去實踐、去找工作

在學習程式語言時,我們有時會偏離正道。我覺得有時候你只是想偷懶--一種希望透過整天坐在電腦前就不必面對真正的挑戰的偷懶。

別偷懶,別忘了,你要成為一名開發人員。

不要陷入「我正在學習,這已經足夠好了,等我準備好了,我再去找工作」的迷思。

坦率地說,找工作是我們最應該做的事情。你可以聯繫潛在客戶,哪怕是為家人和朋友免費建立網站也行。

下次你去面試的時候,你就能展示自己都做了哪些工作,這會給你的簡歷增添光彩。第一步總是最難的,但無論如何你都必須邁出這一步。

所有這些都是你在成為一名開發者的路上將要面對的挑戰。承認它們,以正確的態度面對它們--所有的挑戰只會讓你變得更強、更好。

最後,要享受學習程式設計的過程,享受你正在構建的東西,無論是你的項目還是你自己的未來。

延伸閱讀:

歡迎加入「Inside」Line 官方帳號,關注最新創業、科技、網路、工作訊息

 


洞見機會,創新未來──新創如何用雲端打出一手好牌:AWS Startup Day 7 月 15 日線上重磅回歸

AWS Startup Day 即將於 7 月 15 日重磅回歸,此次不只聚焦新創趨勢與數位應用,更聯合 AWS 創投新創媒合會,提供參與者豐富的資源,所有與新創生態系相關的夥伴都不容錯過。
評論
Photo Credit:AWS
評論

隨著 Web3.0 去中心化的趨勢開展與現在進行式的產業數位轉型浪潮,雲端技術早已成為許多早期新創發展產品或服務的關鍵金鑰,甚至為其奠定高速發展的穩健根基。而台灣雲端服務供應龍頭 AWS(亞馬遜網路服務公司)更自 Web2.0 時代開始就從未缺席,始終在技術新知、應用實務等方方面面致力支持新創,其中最具代表性的免費論壇活動──AWS Startup Day 也即將於今年 7 月 15 日重磅回歸,在線上和參與者相會!

今年度 AWS Startup Day 持續聚焦新創趨勢與數位應用,精心規劃八場新創專題演說,非常適合長期關注新創生態系統的相關人士,或是正要起步、成長的新創夥伴報名參加。

立即報名 2022 AWS Startup Day!

五大特色議程安排,給你滿滿新創觀點與技術乾貨

Photo Credit:AWS

「新創如何運用雲端科技打出一手好牌,投注資源延續未來業務?」這是今年 AWS Startup Day 欲探討的核心議題之一。為解答雲端科技之於新創企業的珍貴價值,AWS 以「國際市場」、「創投趨勢」、「多元創業」、「雲端技術」、「焦點產業」等五大特色精心規劃講座內容,完整收錄新創趨勢脈動、雲端技術實務、佈局策略觀點與創投媒合等新創事業歷程的重要節點。為此,AWS 不只力邀 Web3.0、電商、串流、B2B 解決方案等不同領域的新創合作夥伴,分享選擇 AWS 開展新創事業的策略考量,更毫不藏私地解析雲端技術如何快速又穩定的開拓事業。

Photo Credit:AWS

無論新創還是育成,想要洞見機會就不能錯過 AWS Startup Day

Photo Credit:AWS

任何產業或技術的發展,不單要前人的引領,也需要後繼者無窮盡的創新思維與打破框架的勇氣,缺乏其中一個環節,生態系都無法平衡永續。所以無論是天使創投、孵化器,還是剛起步或處於早期新創的企業,只要你身為新創生態系統中的一份子,渴望尋求創意突破或開展新興業務,AWS Startup Day 都是你絕對不能錯過的最佳活動。

填單取得 2022 AWS Startup Day 免費入場券!

尋找下一個新創獨角獸──同場加映 AWS 年度創投新創媒合會

本次 AWS Startup Day 除新創及創投相關講座外,AWS 更直接邀請多家國際及台灣知名創投公司,與 AWS Startup Day 同場舉辦今年度唯一的線上「新創創投媒合會」,欲透過串聯本地深具潛力的新創與創投,幫助台灣新創企業獲得更豐富的資源,孕育下一個獨角獸。

根據 AWS 釋出的消息,媒合會將以早期天使輪或 Pre-A 輪融資為主,重點關注 AI/ML工具和平台、智能零售、MarTech、Web3.0、媒體和娛樂等產業,並以快速輪流的形式替新創獲得最大的曝光。

立即報名 2022 AWS Startup Day,共構台灣新創生態系統!