文組人對語法與演算法的重新理解

馬拉松的撞牆滋味

three line 三條
夢想落地
3 min readFeb 22, 2020

--

最近持續學習JavaScript程式語言,也頻頻遇到傳說中的「撞牆期」,談到撞牆期,不得不憶起馬拉松訓練時,反覆思酌與想像「撞牆期」究竟是什麼體驗?眾多過來人表示,那是一種靠意志力驅動身體的過程,全身已經僵硬、痠痛到不行,離終點越近越是煎熬,大概30km就會碰到了!

而我那唯一一次的42.195km馬拉松終於來臨,帶著興奮雀躍的心情上路,我的撞牆期在32~33km發生,此時腳底筋膜已在哀號,很明顯感受到腳底下的腫脹,每一次觸地都是一陣微刺痛,已經跑不起來了,用類似快走+極度緩慢的姿態「移動」著,一直到剩下最後七公里,距離「關門」不到一小時。

此時此刻,意志力爆棚,心裡想著無論如何一定要在關門前到達終點啊!腎上腺素盡最後的努力噴發,我的肢體開始輕盈起飛,以跑者的姿態飛越了起來,當大腿用力抬起,全身也跟著大幅度地動起來,就這樣速度提升最後看到終點線近在眼前,更是不顧一切地前奔,最終在關門前四分鐘抵達終點啦!!

程式語言的撞牆期

跳脫身心的疲憊,程式語言的撞牆期,是一種腦脹的感覺,盯著一行一行程式語言,東改西改,run run run,卻跑不出想要的結果,反覆看運算子、條件式、迴圈的寫法,思考箇中邏輯,再反覆試驗,還是無法解決問題……google找解法,拆解參考答案……再好好睡一覺,隔天繼續作業時就會發現撥雲見日啦!腦中的雲霧消逝而去,程式的太陽透著柔和的光,照耀著的破涕為笑的我。

語法與演算法的關係

和友人討論程式語言、語法、演算法、AI,友人說AI可想成一種演算法,可以用不同程式語言寫出來。這不就像是食譜與食材的關係嗎?語法就像食材,演算法就像食譜,AI雖然是近來火紅的技術,但它可以用不同的程式語言表達。因此AI的演算法,就如同食譜,告訴你要用什麼程式語法(食材)寫出來!而不同的程式語言就好像是參考同樣的食譜,但使用不同來源的食材,一樣可以寫出同一種AI演算法。

熱門的程式語言,因為使用的人多,因此有些常用功能甚至有模板可以參考,這個模板就可以想像成料理包的概念,譬如想吃羊肉爐,不用辛苦地去張羅食材,只要購買羊肉爐料理包,就能方便做出羊肉爐啦!程式語言的 package (軟體包)就是這樣的概念;反之,冷門語言,可能連食材都要自己想法辦生出來,沒辦法快速找到現成的材料使用。

經過食材與食譜的譬喻,死板的程式語言忽然都變成可口的食物了XD

🍀三條聊聊:最近持續學習新東西,上了更多投資心態與策略的課程,接下來還有關於職涯探索的體驗活動,會盡快與大家分享: )

--

--