【香檳】人何寥落花何多

2020 年春天,COVID-19 在美國大爆發。香檳校園也早早宣布了暫停實體授課與學術活動。

大學城一但停了課,那肯定是百般寂寥的。而此次尤甚,因為連留守的國際學生們也多慌張離開了。

因為即將畢業與返國需要好好收拾,我算是走得遲的。那幾天又看日出完成了一個大作業。稍事休息,便至稍遠的住宅區把二手車賣給了另一位留學生。雖說是買賣,不知為何,心情更像是託付——車子一賣,離別便已是篤定的了。

因為眷戀;因為春天;也因為隔離得慌,我和朋友決定步行一個多小時回到校園。春天裡滿滿開花,鄉間優雅的小房子因為瘟疫,不見人煙。

從未想到一切會如此結束。但轉念思及人生,能預料的事終究不多,遂有釋懷感。

香檳的冬天好長;春天又好美好美。春逢大疫,人何寥落花何多。

【香檳】菁英中心不收垃圾

常常覺得知識是很有趣的,但有時教育者本身並不關心人。即便是我這樣對程式有愛的學習者,到了CS學院上課,也常常覺得折磨⋯⋯

以下圖為例,取材自最近上課的講義。上方是投影片截圖,下方是我整理出來的筆記。這張投影片的主題是透過一個簡單的遞迴函式,示範OCaml語言的遞迴語法。

pic

這張投影片在課堂中大概只會使用30秒。但是否理解這30秒的內容,卻關乎接下來的學習效果。

計算原理就只是國中數學的乘法公式——乍看之下卻像是一種艱深定理的證明。但只要經過簡單的排版與上色,就可以大幅降低學生消耗的認知能量。我認為,不論你是不是程式熟手,都不該浪費能量在混亂的資訊中。

以下是我覺得可以做出的改變:

  • OCaml有許多宣告函式的語法,我換了一個最靠近C家族的(因為學生一定學過)。並透過排版與縮排讓他結構上更容易與已有的知識連結。

  • 使用等寬字來區分(可交給機器的)程式碼與(不可交給機器的)自然語言。

  • 使用等寬字後,我們可以輕易地做出上下整齊的排版空間。並將將後兩句switch概念的語法進行同質性的排比。第一個 | 符可加可不加,但個人偏好會加。

  • 使用桃紅色標明這則案例的關鍵字rec。

  • 使用橘色區分參數n。而n一但被標示出來,match與with便具備了關鍵字的隱喻。

  • 使用灰色標示註解——學生甚至不需要知道OCaml是使用(**)作為註解符這件事。

  • 使用黃色螢光筆標示出函式的遞迴點。

  • 井字號(#)為REPL工具的prompt字符,但其實在教學的上下文中,根本不需要使用——使用的結果就是讓學生copy代碼時如果沒有略過#,會得到錯誤。

最後還是想讚嘆Python當初把縮排納入語法的設計——這堪稱是科技對人類的無上關懷。考量到「程式更常被閱讀,而不是撰寫」這件事實,Python讓你無論怎麼惡搞,都得處理好排版;而一但你處理好了排版,其實也就沒那麼惡搞了⋯⋯

而世界的現實似乎就是,大學往往是教天才的,不是教笨蛋(如敝人)的。更廣一點來看,這其實也反映了大學體系強迫頂尖研究者同時也必須教學的弔詭之處。

【香檳】 A General Purpose Programmer

最近比較認真地思考著未來的求職,苦思一句新版的About Me用於履歷,想來想去,竟沒有比「A general purpose programmer」更好的——總之是個削瘦寡言的華人男性工程師。無臉孔,近似物質。要發射火箭那是不行;翻翻文件寫點不出格的代碼,持續累積知識,倒還算有點信心。

在美國也一年多了,漸漸地體驗到所謂「虛偽的美國人」的說法:一方面,他們強調多元文化與個人特色;但另一方面,其實每個人又忙碌得不得了,以至於只能勉力維繫價值的表象——作為一個潛在的海外移工,在此生活,人的屬性其實相當稀薄。

舉例來說,敝系iSchool是個國際學生非常多的學院——你要說是國際學生學店我也不介意[2]。其對於分組扮多元文化家家酒之熱衷,已經到了連教資料結構都要分組的境界。但是,其實不止教職員忙,連來美國拿身分與賺錢的台灣人中國人印度人,以及來敝系偷學Python的美國人其實也都很忙。不只課業負擔其重;還要抽空投履歷與面試,以至於分組的化學效應真的奇差無比。所謂的多元文化融合,也就是一件「我們極度重視,儘管它得到的資源排不進top 10」這般,如此重要的事。

再兼之美國的企業規模之大,我常笑稱,美國人總說:We are an agile startup with ONLY 500 employees。其人才需求之專業化程度,本質上就近似於軍隊。我感受到自己在台灣做過的工作,那些吾少也賤現在依然很賤的歲月裡所學會的鄙事,在這裡真的一點也派不上用場(噢你還做過遊戲設計和PM啊,那你會不會功夫或包餅乾呢)。

(岔個題,在台灣工作的朋友真的要慎重評估「待在小公司當小叮噹」這件事——儘管我本人不後悔,但還是建議大家慎思這件事對職涯可能的負面影響。除非你很堅定,否則想辦法擠進大公司擔任專職;又或是至少是小公司的專職;都還是相對安全很多的選擇)。

我對於美國人的所謂虛偽有一種私人的解讀暨體諒。記得曾看過一篇報導:「(在美國)除非你是比爾蓋茲,否則你離破產永遠只有一場大病的距離」。作為資本主義社會的模範,美國的專業人士一方面賺得真的很多;另一方面環境卻也內建了可能是世界上最強烈的消費主義與最進步的商業技術;同時,個人主義的盛行更讓社會無從建構出完善的福利制度,讓人得以在不幸時免於失去人之為人的基本尊嚴。

這樣生活的具現就是:人們賺得很多;但是想買的東西更多。幸福的背後就是萬丈深淵,因此無事不需保險——同時必須祈禱保險條款裡沒有致命性的漏洞。

正如《寄生上流》裡說的「如果我有錢,我也會是個好人」。所謂倫理道德暨多元文化包容,估計也都是吃飽撐著沒事的人兒發明出來維繫社會安定的東西。大家都有生存壓力,相同人種結合在一起,中文組刷著一畝三分地;美國組與印度組自己進行著神秘的計畫,其實才是再合理不過的事。題外話是,在我私人的理解裡,東亞的主流貌美女性,儘管仍然一定程度地受制父權價值的壓迫,但當在融入多元文化圈時,仍然是具有相當優勢的(東亞女生真的好美啊)。

而至於要不要真的用「A general purpose programmer」呢,我還是有點猶豫。就像敝業師曾苦心規勸本寶寶「A great programmers don’t result from people who only study programming」。所謂國王沒穿衣服是一件事,公然宣稱國王沒穿衣服,那又是另一件事——但我覺得最有可能的是,根本沒有人讀得出本寶寶心中的百轉千迴。看到這句子,起先覺得疑惑,但在30毫秒內便斷定了這人either英文不太好or腦子有問題,總之總之,真的不是很重要⋯⋯

以上,其實也沒什麼。新學期修了一門叫作Programming Language & Compiler的課,學習了一個讓人三觀盡毀的語言叫OCaml。感受到自己對於程式理論的鑽研即將要暫告一段落了——再往深處,就是所謂學術的巍巍大門了。而自己不論是求知慾與心智負擔,似乎也都將到了一個臨界。

連同申請算入,算是任性地低頭念了兩年半的書。儘管不大情願,還是要抬起頭關照社會、關照人。勉勵自己要慢慢開始恢復社交,多面試、多講英文與多交朋友。故以此為記。以上所描述的看法,說不定未來也會改變。


註解

[1] General purpose programming language是一個常見的對於程式語言的描述,意指該語言的目的不限於專門領域(例如Python與Java)。以Python為例,其被泛用於資料分析、自動化腳本、網站後端⋯⋯等。

[2] 但要澄清的是,這學店賣的不主要是學歷,主力商品反而是OPT。另外以美國的教育成本來看,敝系收費尚屬公道。

【香檳】時事有感

想想民主其實是一種很微妙的制度,它的精妙性似乎不全是當初制度與理論推行者,所刻意為之的。

舉例來說吧,太陽花事件裡馬政府最後出動了鎮暴警察與水炮車,為什麼最後沒有上綱到如香港般更大規模的全島癱瘓運動,以及隨之而來的催淚彈雨和恐怖政治呢?

因為光是選舉,就直接讓國民黨輸到脫褲。

這其中固然有內耗,有不效率,甚至看來愚蠢可笑。但很明確地,這成功避免了更多慘無人道的殺伐。而台灣一定程度上獨立的司法,更讓國家機器要形成一黨專政的利益集團更加困難——當馬英九無法透過司法,將王金平或是其他派系抄家時,我們就會看到一堆顧慮著選舉的跳船仔,以及一個至今還在國民黨內呵呵笑,不戰不降不談不和不走不死,亦絕不出力的魯洨王系。

民主制度裡固然有撈仔,有政客,也有距離所謂「理想公民」有極大差距的選民群體。但能讓人類在生物內建「人人為己」的驅力下,還能某種程度地避免因權勢競逐而陷入原始狀態,導致人類在戰爭與恐怖政治裡無人道地死去的,大概也只有民主政治了。

而什麼是人性?我說人性的本質就是「嚮往生但終需死」,其間有老病餓苦的過程。而得以免於老病餓苦與其憂慮的片段,謂之快樂。就像一台飛在空中但失去起落架的飛機,人人都在苦思著一個免於粉身碎骨的結尾。

就像聖經裡說的,那些最偉大的、得以讓義人前往天堂的善行,也不過就是「我餓了你們給我吃,渴了給我喝;赤身露體你們給我穿;我作客旅,你們留我住;我病了、我在監裡,你們來看顧我」

而所有器物與制度的發明,其實都是中立的。在我的看法裡,其中真正有價值的所謂「文明」,便是那些能讓更多人免於老病餓苦,抑或是至少肯認老病餓苦之為議題的創造——以這個觀點來看,文學大多是文明的,而計算機則為不可知。

我直覺地相信中國共產黨並不是傻子,近年來歷任的國家主席大致還能維持一個彈性內的均勢與平衡。只可惜傻子只需要一個,就足以毀了一整代人。習近平政權可能已經用強太過,導致他只能繼續用強。而前所未見的計算機科學所帶來來的AI與大數據監控系統,是他維持統治的希望所在。

獨裁之患,在於當政者聰明但又不夠聰明,在體系裡缺乏深思卻便恣意重構,再搞不定就hard coding硬上,還自以為效率與洋洋得意。但我說,不管蓋了什麼高樓鐵路,沒有什麼比迫害人民,並讓人民在恐懼、饑饉與疾病中死亡更可憎的罪惡了。

只願一切還有轉圜餘地,台港中這一代眾生,不要因為習政權的愚蠢而一併「攬炒」,玉石俱焚去了。

【香檳】關於建議這件事

今天和instructor討論選課。我和他表明我所有有關programming的課都沒選到而我甚至願意先選(非常簡單的)Python introduction以備不時之需,反正我可以配合課堂看書自學更深入的主題。

這位老美非常nice地提醒我,一個好的programmer不該心中只有coding,也應該同時充實其他領域的知識,像是其他科學與社會科學。

本寶寶聞言心中戈登一聲,心裡苦但是寶寶不說。想想自己大學是商學院畢業,亦認真修了不少文學歷史與經濟的課,被社會運動吸住了好一陣子,畢業後到遊戲產業當PM和遊戲企劃(然後才開始自學程式)。且研究所第一年系上偏社科的必修我也算競競業業地修完了。十餘年來在某些人眼中亦不過是鼯鼠五技而窮:「你應該先確立自己的核心價值是什麼,再談其他」。

沒有責怪這位老美的意思,畢竟他也是非常認真地寫信與我尬聊,在課堂上給我的指導也很盡責。只是感受到:這世界上能坦蕩蕩地給予他人建議的人,都還是本於一種所處的優勢啊。

而人生終究是自己的,要能不為這些言語搖擺,還是要透過深入了解自己與所生存的條件,才能同時感到虛心與堅定。

最後想到我有一個原則就是:除非對方要求,否則不主動給予他人意見——這點我常常還是沒有做好,希望以後可以做得更好。終究是人生越老,上下文也就越多,片段地給出指引,實無異於對那些與經驗甚或磨難的輕率啊。

【香檳】台灣

回到台灣了。心情漸漸放鬆了下來,也才終於真心地感到了疲倦。在台北逗留了幾天,阿基的腸子還在不明原因發炎(怎麼連病都和主人一模一樣orz),我便被姊姊帶著練習餵藥和照顧他。這段日子真是辛苦姊姊和姊夫了,一面要上班,一面要照顧著因病而暴怒的貓。對於阿基感到很愧疚,如果知道我的人生會變得這麼需要流浪,也許我不會做出收養這麼重大的承諾吧。

在台北逗留了幾天便回高雄,開始了整天睡覺與吃家常菜的日子。長久以來,在人際關係的狀態裡一直是扮演照護者稍多於被照護者的角色。回到高雄,終於又恢復了那個寶貝兒子的身份。每餐面對著滿桌好菜,突然感覺到好脆弱,也終於能放心地感到脆弱⋯⋯

「幸福時刻,我總是感到無常。」

在國外好想台灣,回台灣大吃之餘,卻又立刻陷入了過敏地獄。台北家裡潮濕的壁櫥;舊衣的塵蟎;貓咪撒嬌時紛飛的貓毛,又讓我整天噴嚏連發;眼睛刺癢;鼻水川流不息。溫帶的香檳生活幾乎要讓我忘記自己曾是個超級過敏兒。關於人生,我還是不知道該在哪裡生活。

下週一要開始上班了,剩幾天打算讓自己好好補眠。這段時間沒讓自己做什麼正經事,只是閒散地搬遷著部落格。這學期自己code了一個新的部落格,舊有的wordpress便決定關站了。部份文章有搬過去,部份文章也許年久失修;也許自己也不再喜歡,便決定讓他們自行消失了。未來也許會多寫一些programming相關的文章吧。

對了,這幾天除了家人和同事外都沒有見其他的朋友——雖然我很想念你們。但請容我再休息一陣子。其實更主要的原因是,我在台北不小心剪了一個過短的頭髮,以致於我希望等待它長長一點,再出來見客。我知道你們一定想說who cares!

but I care…所以我們過幾週再見了orz

【香檳】寶寶含生日

今天是寶寶生日,寶寶離開快兩年了。

我與寶寶並不熟識,透過T的關係照過幾次面。聽聞她美;聽聞她能寫。聽聞她執抝氣傲又別扭;自覺過意不去時又蹭過來打滾撒嬌。但我甚至沒能在她離開之前讀完那本她簽過的書。送別時掉了幾滴淚,連自己都覺得虛無空洞,像是純粹為了自己的脆弱與蒼白而流的。

寶寶離開後的幾個月是我好長一段混亂的子。腸胃又開始作亂;身體深處緩慢地發著炎;而生命像是一場大霧。儘管已經決定要出國唸書,卻連美國東西南北都分不清楚;成日自我質疑著到底該念什麼;或是能唸什麼。因為離申請尚早,只能復一日地埋首刷著托福考古題,艱辛地發著異國的語音——你喜歡自己做菜還是外食呢?請在嗶聲後作答——我沈默良久,背脊出汗;良久又良久,竟擠出一句…well…ah…I prefer cook myself.

那天是個奇怪的日子,我與T在一家家常小店裡吃飯,因為狂滑手機而惹怒了T。察覺T臉色不對,我便摸摸鼻子放下手機,湊趣地拋出一些僵硬的話題,但氣氛仍然一團尷尬,毫無和解的跡象,只剩兩人幾近無聲地吃完飯。直到回家,我打開手機,才發現在那十五分鐘裡,我被朋友洗了一整排訊息與未接來電。

寶寶離開了。

然而後來我幾次回想,如果時光倒流,好像也無法為她多做些什麼。我無法更不焦慮於我自己的迷霧;而她的心思亦從未停留在我身上。我漸漸這麼相信著:某些命運的軌道,在星體碰撞的瞬間就已經被大致決定了。而某些悲劇,那種我們總以為是脫離常軌的悲劇,往往是多方不可撼動的均衡。作為寶寶生命之中他者的他者,我暫定的詮釋是:我並沒有更好方法,去參與她的生命。而意識到這樣的無能為力,毋寧是一種對於生命與磨難莊嚴的本質的謙卑。

今天是寶寶生日。寶寶的超級無敵好朋友美美為她舉辦了這個吃蛋糕的活動,並邀請我分享活動。我雖然不知道寶寶喜歡吃蛋糕,但看了美美的描述,幾乎就這樣確信也笑了出來——在我心中,寶寶就是這樣一個會對著蛋糕掉書袋,然後眼睛亮亮地把他們吃完的女子噢。美美希望大家可以吃一塊蛋糕,也算是和寶寶一起分享。但我想我既不嗜吃蛋糕,估量著美國的惡甜蛋糕大概也只會惹寶寶生氣,索性也就不多瞎忙了。

時值春假,就想想寶寶寫寫字吧。其實以我的狀態,我不該又在深夜裡不寐寫字的。但我的確又感受到了那種「這一切並非我能控制的」那種召喚感。從台灣到美國,儘管我已經相信,自己就是一個熱愛寫碼的宅宅;儘管我相信,與我討論過coding的朋友,也應該都能感受到我對寫碼的熱情;但我仍然隱隱然猜測著,其實我正試圖透過(過度沈浸於)一層又一層的巢狀區塊與邏輯閘,極力想逃避著自己性格裡,某種毀滅性的宿命——那種感覺好像是:寶寶興高采烈地描寫著新婚的伊紋(伊紋是多麽美又多麽像她啊)。彷彿這樣寫著寫著,寶寶就真的可以走回那條快快樂樂長大的路:滿級分的文學美少女、一場無瑕的婚姻,連同一切應許的幸福——這些,可都是本寶寶願意就可以擁有的哦。

關於我,也許是庸人自擾了。但是關於妳,寶寶,我猜部分的妳確實地知道,其實並沒有應許的幸福,而毀滅終究會降臨的,對吧?

我喜歡點歌給人,有時也把對某人的記憶指派給一首歌。覺得其中最好的一首是熊寶貝樂團的〈螢火〉——尤其是有著爵士鼓配樂版本的。在這樣一個難以入眠的夜裡,是這樣一首歌終於讓我決定放棄睡眠,起床寫字。寶寶,都兩年了,我才終於對這一切有了最勉強的想法。大學時我曾經瘋狂著迷、反覆眷聽的熊寶貝樂團都解散了。在解散前幾乎超過五年,我不再有力氣出席他們的活動。在決定解散的那刻,他們感受到的是寂寞嗎?他們會期待歌迷如我多做點什麼嗎?我還有會機會告訴餅乾,她的歌聲是多麽地美好,足以令一個熟齡男子在失眠的夜裡淚流滿面嗎?

「上帝給我一些時間

讓我呼吸 讓我沈澱

看看這寬闊這世界 美好而殘缺」

「我因而明白

這人生短暫

如螢火閃閃

徒勞而無害」

寶寶離開了,留下了或許記著她、愛著她的人。我想起了〈邊城〉的結尾裡,少女翠翠在祖父死去後,結起了白色髮帶。在寧靜的小山城裡,仍舊日復一日地渡著兩岸的客商與遊人。故事裡過渡的人見了白色髮帶,又不見祖父,心中有了底,便對翠翠說:「天保佑你,死了的到西方去,活著的永保平安」。

願離開的到想去的地方;活著的永保平安。

【香檳】日常對話:妹子為王

(開場:這是個連妹子都只喜歡妹子的時代)

(某日,溫馨小飯局)

男:我想炫耀

女:請說

男:我最近幫朋友解了一個scraper case(網站擷取)

女:噢

(沈默十秒)

男:我中午和四個妹子一起吃飯

女:(眼睛大亮)真~的嗎!好棒!為什麼?你們聊什麼?有拍照嗎?

男:為什麼妳只對妹子有反應啊

女:廢話。爬爬文在座誰寫不出scraper。重點當然是和妹子吃飯而且一次四個啊!

男:我們不是來進德修業的嗎?此刻的我們,就像掛在枝頭的酸橘子

(女遂滑手機,不復與言)

【香檳】五月回家

最近和前公司談定,我會在五月中~八月中回台北全職工作約十二週。負責的項目會是web development以及data analysis infrastructure。這將是我第一份以軟體工程師為主要身份的工作,又是回到自己熟悉與喜愛的獨立製作環境,感到期待但也有點壓力。

為什麼不在美國實習呢?主要原因是自己的programming知識、經歷與人脈都還沒有好到可以輕易找到實習,而履歷海戰術又太消耗時間——這樣的消耗嚴重排擠了我唸書和寫碼的精力。正好前公司有我感興趣的項目;正好他們願意;正好我也想家;事就這樣定了。

除了台北與工作之外,我也會花大約兩週的時間回高雄陪陪家人~所以南北朋友們我們到時見啦。屆時已離家九個月,太多想吃的東西;想念的人;以及貓了。

PS. 圖為香檳四秀之虎大郎與虎次郎,預計將於五月時一同炫風(???)返台。

【香檳】香檳。柞樹。農曆年

柞(ㄗㄨㄛˋ)樹是香檳一帶常見的植物。葉子形狀頗為奇特,香氣獨具,是校園裡小兔子與小松鼠們最常吃的食物之一。校園約莫十月初入秋並開始落葉,到了聖誕節前幾乎樹葉落盡。

每年一月底是香檳極寒之時,也是華人的農曆新年。為了照顧系館周遭雪天裡的小動物;也為了與為數眾多的華人學生一起共度農曆年,學校的教職員們都會拿出入冬前就貯藏好的大包大包的柞樹葉,在校園各處餵食小動物——這樣的餵食活動與儀式,堪稱是校園內的趣事、美事與盛事。

如果你來到香檳,如果你見到這裡可愛的兔子,你或許可以問問他們:「兔子兔子~過年這麼冷,都吃些什麼啊?」

如果兔子會說話,他肯定會這樣回答你⋯⋯

「幹!啊就吃柞葉啊」

「永遠吃不完的柞葉」