非典型程式人:保持彈性 就能找到屬於自己的效用函數

前進吧,會寫扣的經濟女孩!我們家的芝大生,哪有這麼可愛?

林庚遠 Ken-yuan Lin
ccClub
10 min readDec 16, 2021

--

《非典型程式人系列》隔了快一年終於又重出江湖。從上一篇文章刊出至今,我們的生活經歷了相當劇烈的轉變。本土疫情雖趨緩,大家出門也別忘了遵守防疫政策,要健健康康的喔!

這次的主角是筆者非常欣賞的一位學姊。我們希望透過這篇文章讓讀者感受到故事主人翁的溫暖,也希望 ccClub 對程式教育的堅持與努力能持續獲得各界支持及肯定。我們還有其他專訪文系列(本文文末也有各篇文章連結),歡迎各位看倌參考參考 。

參加過 ccClub 讀書會的朋友們,應該都對辣個女孩不陌生 - 俐落的短髮、輕盈的腳步與甜美的聲音,不時穿梭在教室走廊間,她為學員解惑,宛如空谷跫音、餘音繞樑而三日不絕。她擔任過讀書會的助教,更曾是基礎班讀書會的講師。她就是我們今天專訪文的主角,周侑萱

侑萱畢業於台灣大學經濟學系,已於今年八月赴美攻讀計算社會科學碩士學程。大學時的她除了有過書卷獎的殊榮,也積極投入社會科學與資訊領域。這次的專訪文,就讓我們一起來看看這位經濟女孩如何在 Computer Science 界大展身手吧!

▍經濟系?亞當斯密也懂 debugging 嗎?

談到經濟學,你腦海中第一個浮現的畫面是什麼呢?GDP、CPI、各國經濟指標?還是高中公民課本上的需求及供給曲線?

不管你的專業背景是什麼,多少對「經濟學」這個名詞不會太陌生。它除了在國、高中公民課本佔有一席之地,日常生活的書報媒體中也不難見到。作為社會科學家族裡重要的成員,經濟學的知識不只讓我們了解市場運作的機制,更能幫助我們認識自己所處的世界。申言之,經濟學是一門探討人行為背後的誘因、以及解釋社會現象的科學。

談到自己當初選擇就讀經濟系的理由時,侑萱也分享了自己對經濟學的體悟:

讀經濟學就像是在閱讀一篇又一篇的故事集,每一次閱讀 paper 或經濟學書籍時,經濟學家們為了解釋社會現象所提出的論述或各種數據,都讓我深感佩服,內心也充滿驚奇。

假新聞可能對意識形態帶來哪些影響?政府推出新的配偶移民政策,會如何影響本地居民假結婚的比例?教育普及程度與兩性所得分配有何相關性?當我開始想這些問題時,我能感受到腦海中正準備經歷一場激烈的思辨之旅。我從高中開始就對社會科學研究很有興趣,探討這些社會事件之間的關係也常常能讓我感到滿足。

不過,如果要說經濟學跟程式語言扯得上關係,相信不少讀者還是會在心裡打個問號。前者看似充滿數學及艱澀理論,後者則是坐在電腦桌前埋頭苦思如何撰寫程式碼。兩者看似風馬牛不相及,實際上卻能扮演相輔相成的關係。

「許多經濟研究往往需要實證資料正當化論證的基礎。想了解股市與匯率之間的關聯性,我們當然需要大盤指數及匯率的歷史資料;要探究疫情對就業市場產生的影響有多大,如果有疫情前、後的不同經濟及就業數據的資料,或許更能幫助我們思考。從資料的選擇、整理到分析,都能透過程式語言來完成。程式語言就像是進行經濟研究時的得力助手!而這也是我喜歡學習程式語言的原因之一。

因此,大學時的侑萱除了經歷過系上精實的經濟學試煉外,在程式語言的經驗也相當豐富,除了擔任 ccClub Python 讀書會的講師及助教外,也曾經擔任教授的研究助理,以及台大社工系計畫專任研究助理,協助進行資料分析。

▍前進芝加哥!不一樣的生涯規劃選擇

侑萱目前準備就讀的是芝加哥大學 Computational Social Science Program。學程的導向是有志於利用計量方法進行社會科學研究的學生。程設計上除了基礎的程式設計,也包含統計學及計量方法,以及部分理論導向的社會科學課程。

「目前的我還沒立定志向要走學術或直接進入職場。如果能投入學術工作、延續對社會科學領域的研究熱誠,想必是件相當精彩的事;投入職場也是另一個可能的選項。我一直容許自己的人生旅途可以有更多元的選擇,我不想輕易把自己侷限在任何一個類別裡。

不過,經濟研究是我無法割捨的興趣,能用經濟模型或理論解釋社會現象,說出一個又一個故事,本身就是非常有趣的事情。而程式語言是資料處理與分析的好工具,也成為我在作報告或研究時的好夥伴。

既然不想為自己設限,又想滿足對社會科學研究的需求,在種種考量下,這個學程就成為我的選擇之一了。」

我們身處的社會由許多不同的變數交織而成。不論是一國的貧富差距、男女同工不同酬,工業產出或匯率升貶、背後都有許多可能的解釋與變因。為了釐清不同變數之間是否具有一定的相關性甚至是因果關係時,經濟學就成為我們分析時的思考框架之一。

解釋社會現象是經濟學的重要使命,而其中,統計學與資料處理所扮演的角色正是幫助我們提升分析品質。對侑萱來說,從實證資料講出一個又一個有趣的「經濟故事」,能帶給她無盡的收穫。

「在經濟學的研究領域裡,有一部分的人是進行實證研究,由於在研究的過程中往往有資料處理的需求,所以會寫程式就會更方便。這也是我之所以喜歡寫程式的原因。如果我們將經濟學家形容成一個好的大文豪,那我相信程式語言就是書寫故事時不可或缺的紙筆了吧!」

▍微軟讓我看見資料科學這片更廣闊的天空

除了在學校學習的時光,侑萱也曾在大四時擔任台灣微軟技術中心的技術實習生。對以非程式本科出身的學生而言,能拿到全球知名科技巨頭的實習機會並不輕鬆。在微軟實習到底是什麼感覺呢?

「實習生平日的工作內容有產品介紹,應用微軟現有的技術來滿足不同客戶的需求。我們也會協助主管製作投影片,或與同事協力完成多元的專案。實習生面對的工作及挑戰很多元,雖然有時比較忙,但這段經歷也讓我認知到自己的不足,更開拓了我在這個領域的眼界。」

在實習期間,侑萱也有許多實際接觸專案的機會。例如:

「客戶如果想將自己爬蟲下來的資料搬運到 Azure 的雲端資料庫上,我們就會協助處理一些雲端服務的 API 互動程式碼;我也接觸過與空氣汙染防制有關的專案。當檢測儀器分析完空氣中有那些成分後,會將結果傳輸到 IOT Hub 上。我們會寫出程式並確保資料搬運到雲端資料庫上,藉由 Azure 的雲端服務進行機器學習模型,並在預測結果出爐後,透過資料視覺化呈現結果。」

Microsoft Azure 是微軟旗下的雲端平台服務。實習生除了協助介紹部分產品外,必要時也有需要提供技術支援的機會。實習時的所見所聞,都成為侑萱在程式學習旅程中珍貴的養分。

「實習結束後,我對於雲端服務的運作方式及專案協作更有概念。不論未來的我選擇學術或職場,這些收穫都很難得。除了技術面及建立人脈,而在微軟實習也讓我更深刻地體悟到科技巨頭如何實際透過技術改變人類的生活。許多雲端服務及科學產品都讓企業或個人在業務運作時能以更有效率、精準的方式完成。」

筆者自己也有在銀行實習的經驗。即便產業類別不同,做的事情不一樣,但實習毋寧都提供了在學學生接軌實務及所學的機會。公司業務運作上使用到的真槍實彈,讓我們了解到其與學校所學的不同之處,更讓我們明白知識如何在真實的商業世界中如何被實踐及利用。

一路走來我與它──我與程式的愛恨糾葛

▍為什麼當初會接觸到程式語言呢?

Photo by Pankaj Patel on Unsplash

「我從小就一直被灌輸資訊素養的重要性。因此大一的我選修了計算機概論,但當時的我對於需要寫程式的作業一竅不通,這場震撼教育也成為埋藏在我心裡的種子。

一學期後,我就修了小傑老師開設的商管程式語言。後來抱持著『一不做、二不休』的心態,我陸續修了資料結構與演算法、機器學習、離散數學等電資學院的課程。雖然花了很多時間,但過程中的我卻很開心。經歷過這段旅程後,看見自己在程式能力的提升,也意識到自己的努力並沒有白費。」

大二時,侑萱加入了經濟系學術部,並在因緣際會下,於 2018 年意外加入了 ccClub。因為在寫程式的能力上備受肯定,後來更成為 Python 讀書會的助教,以及 2019 年讀書會的講師。

「我覺得有能力把觀念清楚分享給初學者很重要,因為這體現我們對觀念的掌握度有高。如果能化繁為簡地幫助他人理解寫程式的箇中道理,也能讓我們自己溫故知新,甚至更精熟自己具備的知識。

ccClub 對我的大學生活有很不凡的意義。我在這邊認識了很多不同背景的好朋友,突破了我既有的交友圈。在程式方面,「助教」及「講師」兩個不同的身分都帶給我有不同層次的成長。當助教時的互動多建立在與學員之間一對一的關係,最大的收穫莫過於幫學員 debugging 的過程。而成為講師後,最大的成就感應該是台下學員們融會貫通的的神情吧!看到台下觀眾們默默點頭,也讓我感受到知識被傳遞的喜悅。」

侑萱曾擔任 ccClub 2019 年春季班的講師

「我對大部分的事情都沒有太強烈的熱情,但『經濟學』跟『程式語言』是少數能特別引起我興趣的事物。不管是修經濟系的課、讀經濟學的 paper、在微軟實習,或在 ccClub 與大家學習的時光,每個經驗都是我大學生活中不可缺少的拼圖。」

侑萱是一個思考速度跟執行力都很高的人,也對自己有很高的要求。筆者相信正是侑萱「擇你所愛、愛你所擇」的態度,讓她能在自己喜愛的領域大放異彩。

有什麼話,想跟初學程式的朋友們說嗎?

「一開始會解不出來是很正常!不要太害怕它。

去洗個澡、喝個水,放空一下,總會有新的想法的。別太早放棄,加油!」

侑萱是筆者大學生涯中非常敬重的前輩(雖然我們並沒有差很多歲)。猶記得大一時的我什麼都不懂,在讀書會時看到她穿梭在走廊間為學員解惑時充滿自信的微笑,就覺得什麼都夠了。

四年時光如白駒過隙,如今的我還是什麼都不懂,而看到侑萱即將開啟另一段人生新篇章,也在此為學姊致上最誠摯的祝福!

【延伸閱讀】
❓ Skiwitch Talk 萬年程式用途聖經:➡️
你能用程式做什麼?⬅️📜
🏰 歷史男:➡️
用鍵盤譜出時空的旋律 ⬅️
👷‍♂ 土木男:➡️
在土與木之間 散播程式的種子 ⬅️
🏙️ 都市男:➡️ 在太平洋彼岸 看見城式的光芒 ⬅️
👩 管顧女:
➡️ 展開雙翼 讓維納斯帶你翱翔商管程式的奧秘 ⬅️
👩‍⚖️ 法律女:
➡️ 褪下法袍 從解構資料看見社會裂口的那道光 ⬅️
💵 財金男:
➡️沒走進華爾街的孤狼 開闢前端另一座獵場 ⬅️
🎵 音樂男:
➡️ 築夢的靈魂樂手 踏上美麗的新創樂章 ⬅️
👨‍⚕️ 醫學男:➡️ ️拼湊程式碼 建構屬於自己的白色高塔 ⬅️

我們是 ccClub 團隊,致力於讓 Python 成為大家的第二外語,希望能用淺顯易懂、循序漸進的方式,帶領新手一步步跨入程式設計的世界。如果你喜歡這篇文章,請給我們 11~20 個掌聲。
如果你喜歡「Python初學」的教學系列文,請給我們 31 個以上的掌聲。
如果你喜歡「非典型程式人」的專訪,請給我們 50 個掌聲。
Facebook: ccClub Python讀書會
Youtube: Coding & Coworking Club, ccClub

--

--