另一個旅程:程式設計入門的學習回顧

雖然在部落格寫字,時不時將之視為小小樹洞的時間已超過十年,但並沒有習慣定期書寫,也少有主題性,或許每年書單已經是最接近「主題」的長文(掩面)。這次在長滿草的blogger久違地想寫下近一個月以來的學習紀錄。

學了什麼呢?

呵呵,程式語言,更準確來說是程式設計的入門


為什麼想學?為什麼在這個時間點學?

其實在人資相關領域打滾跌撞五年多後,漸漸發現自己對於解析問題、假設驗證、產出解方這一連串解決問題的過程,偏好即時回饋,傾向能夠看到具體的產出如何回應需求(這並非是人資的領域無法做到的,實務上很仰賴接觸業務的廣度與深度,而有層次與具體性的差異)。同時回顧自己在不同環境、團隊中的動力與woo moment究竟從何而起,重新梳理個人的價值觀與工作觀後,把擺放許久的曾經的理想,拉回生命軸線裡。

上述的理想是做個遊牧民族,旅居各地,漂泊冒險,並且在過程中透過自己的技能與經驗,協助弱勢團體與非營利組織有能力藉由科技,更有效回應社會議題。因此除了現有累積的能力與經驗以外,意識到自己需要另一個技能與經驗的發展,在一番腦力激盪、自由書寫的過程後,浮現了「程式設計」作為option B,現階段希望能透過對程式的深入探索與實作,提高對於後續發展的解析度。

於是,釐清了方向、彈性還有上述美好想像的門檻與邊際後,正式展開程式設計的探索階段。


學了什麼?

四週多的時間裡,陸續透過交錯的實作與概念解說,以Java Script為基礎,建立對於程式概念,包含什麼是程式語言(What)、為什麼會有程式語言(Why),以及程式語言如何運作(How),其中的What, How佔較多篇幅,在練習基礎語法(條件式、迴圈、運算子等等)後,切入運算思維的建構(於是終於搞懂演算法、虛擬碼跟流程圖之間的關係到底是什麼...),接著進入網站設計的環節,透過HTML的架構定義、CSS的基礎排版樣式,做出靜態網頁作為第一個階段的結尾。


整體而言的收穫

在這段學習歷程中,有兩個收穫,分別是:面對犯錯的覺察與調適、擁抱全新事物。

說真的,直到現在自己仍然是個會害怕犯錯的人,但把自己拋回到學習狀態的過程裡,有那麼些害怕逐漸被鬆開與緩解。

某次在收到課程系統通知,點開發現作業需要修改時,當下的感受是緊張,深吸了一口氣,覺得「自己怎麼會沒做好?」,然後內心開始出現各種劇場。而在著手修改完作業後,也開始反思:這其實一直都是個試誤的過程,並沒有人要求要拿到straight A,重要的是從現在的成果裡,了解到自己學會什麼,前進了多少。

其中的深吸一口氣與反思,幫助了面對害怕的那個自己,讓害怕可以不只是被面對,也可以被好好擁抱著。雖然過往習慣累積的自動反應還是很有可能會不經意地跳出來,但也緩緩透過每週的進度推進,以及內化的反思習慣,支持自己轉念,以及保有接受犯錯的彈性。

然而在這段循序漸進的學習過程裡,也了解到曾在blogger, wordpress後台看到的術語原來是這麼回事,發現到有好多很酷的東西,進一步重拾了對於擁抱全新事物的自信,甚至覆蓋掉了過往作為初學者接觸C++的挫折體驗(遙想當年程式的期中作業寫不出來,巴著助教教學,關在實驗室裡寫到快天亮...)

即使不再是學生時期,能夠全時段地沈浸在學習狀態裡,但透過動機與習慣的建立,仍然可以持續精進,深化已知,擴展未知領域,而那樣的領域不侷限於所謂的軟實力,也可以是硬實力,就如同這篇文字所舉的程式設計。接下來則會持續進行程式設計的探索,展開下個階段的課程,更深入練習與了解JavaScript的核心概念,朝向會動的網頁前進。


在此列出使用到的學習資源:

其他則是曾經幫助過自己的書本們:

留言

這個網誌中的熱門文章

2024 年的 77 本書與 9 套漫畫

岡山、出雲、關西 11 日,久違的遊記

2023 年的 70 本書