綠色旗幟

綠色旗幟

週日,他坐在樓下客廳的鐵椅上,低頭看著手機。Google Map 開著,螢幕上佈滿紅色的小圓點,夾著幾面綠色旗幟。
他點開其中一面。

再抬頭時,已經站在那條巷口。

手機上的淡藍色方向偏了一點。他把手機轉正,確認它對準巷子,才右轉進去。

他第一次看見店門口,幾張方桌分開排著,坐著的人幾乎都在同一側,對面空著。桌面不大。放一台筆電剛剛好。手要拉開門時,視線停在一張告示牌上:

「店內要非常安靜」

進去後,他低頭往座位旁掃了一眼,牆邊看得到插座,有些桌邊也拉著延長線。店裡沒有交談聲,只有音樂很慢地流著,客人頭都低著,視線被鎖在螢幕裡。他臉上原本繃著的地方鬆了一格很快地,就挑了一個靠牆的位子坐下,把背包放到腳邊。

旁邊書架上有幾本漫畫。他掃過書背,掃到其中一個名字時,頭很輕地向右歪了一點。手撐住桌面,身體往上提了半寸,又坐了回去,才慢慢把筆電拿出來。

店員把餐送來時,他朝對方點頭,把筆電收回包包,才把盤子拉近一點。三明治烤得很熱,他低頭咬了一口,蛋沙拉在舌尖散開,有一點細細沙沙的觸感。他慢慢嚼完,又喝了一口奶茶,茶香先浮起來,奶味在舌面鋪開,甜味跟著吞嚥沉下去。

吃完之後,他抽了張衛生紙擦嘴,嘴角很輕地往上動了一下。衛生紙折整齊,放進盤子裡,盤子推到桌子的左上角,這才又把筆電從包包裡拿出來。

隔天早上的 Sprint 會議剛結束,大家慢慢收著東西,準備走出會議室。

他身體還側在原位,手裡拿著筆電。那個同事從他斜前方走過來,眉頭往中間擠,低頭看著他,問:「這個功能不是很簡單?為什麼需要這麼多時間?」

他沒有轉頭,視線只往斜上方移了一下,沒講話。

旁邊另一個學長見狀,很快把話接了過來,替他解釋說:「他進來不到半年,還需要一點時間熟。」

他拿著筆電走出會議室。回到座位坐下,下唇往上頂,下巴微微繃住。他把筆電掀開,直接把視窗切到新的 ticket。

吃完晚飯,他快步上樓。升降桌上的燈又亮起來,眉頭還低低壓著。

早上那句「這個功能不是很簡單?為什麼需要這麼多時間?」又從腦子裡閃過去。他眼睛往桌子右下角看去,那本技術書還躺著。他伸手一抽,直接翻到某一章。

他照著例子一段一段試,改參數,跑結果,再回頭看說明。有一段他停了比較久,改了一個參數,又跑一次。畫面上的結果和他猜的一樣。

他看著那幾行字,點了幾下頭,手指在桌面上輕輕敲了兩下。

接著他切回 ticket,動作快了一點,把描述從頭看到尾。剛才還黏在一起的幾個問題,開始分開。

PR 推出去時,時間比他預想得早。肩膀終於往椅背靠回去。

他沒有立刻關掉那個測試頁面,又把其中一個參數換成另一個值。結果跳出來時,他看著那幾行字。

「喔。」

聲音很小,尾音拖了一點,像是只講給自己聽。他又試了另一個參數。


螢幕上暫時沒有下一個東西要追。他坐了一會兒,才拿起旁邊的手機,打開 Google Map。搜尋列裡還留著「咖啡廳」三個字。

他把搜尋列裡的「咖啡廳」刪掉,換成一個新的地址。

照著地址走進一間 bootcamp 的教室。

教室正前方的投影幕已經放下來,右邊白板還留著上一堂課的字。他沒有張望,直接走到中間靠前的位置坐下。左前方長髮的男生開著 VSCode,右邊戴眼鏡的男生開著 Notion,他忍不住笑了。

講者提到鐵人賽和公司讀書會時,他把「讀書會」三個字記住。

分享會一結束,他立刻站起,快步走到前台排隊。輪到他時,他問:「我想問讀書會的事情,請問不是你們公司的人可以參加嗎?」

對方笑著答應,拿出手機,請他加 FB。

「太好了!我要去!」他立刻加好友。

隔幾天,信箱裡跳出一封用戶訪談。是那個他常用的產品,信裡提到可以搶先試用新功能。他切到日曆選了一個時間,預約成功的頁面跳出來後,腳尖輕輕一點,人體工學椅慢慢轉了半圈。

他沒關掉那個視窗。旁邊的日曆上,讀書會那天的行程還亮著。

讀書會那天出門前,他又把筆電打開一次。那個工具的畫面載出來後,他照著之前試過的地方又走了一遍。畫面沒有卡住。左邊選單裡還有幾個他沒點過的項目,游標在上面不動,沒有點下去。他把筆電闔上。

小樹屋的門推開時,裡面已經有人在聊,坐在靠前座位的短髮女生向他點頭微笑。他找了個位子坐下。

前一個人介紹完後,投影畫面還停在幕上。筆電貼著貼紙的男生問:「還有沒有人要分享?」

沒有人接話。

他看向自己的螢幕。那個工具的頁面還開著。他才說:「我前幾天收到那個工具的訪談邀請,可以搶先試用。」
話剛說完,桌邊好幾個人同時往前傾,椅腳在地上刮了一聲。

「哪個工具?」

「想看!想看!」貼貼紙的男生把椅子往他這邊挪了半步。

他笑了出來。

他把筆電往桌子中間推了一點,螢幕轉向大家,才點進左邊的選單。

「它這邊可以設定 workflow,你可以把常用的步驟放進去。」

「那它可以改嗎?」

「可以。」他把游標快速移到其中一格旁邊。「這裡改完,下面會一起更新。」

下一個問題很快接上來。到後來有人直接報 email 要邀請碼。他複製、貼上、送出,對方的手機螢幕亮了一下。

「收到了!」

整桌笑開。


隔天他一進辦公室,先往前輩的位子看了一眼。對方頭低著。他在自己位子坐著等,見到前輩靠回椅背,才站起來走過去。

「我發現它多了一個新功能,還滿好用的誒。」

前輩湊近看了幾眼,馬上說:「這個你可以在會議上跟大家分享啊。」

他還看著前輩,聽到「會議」兩個字,話先停在喉嚨裡。

前輩又說:「不用太正式,簡單講一下你怎麼用的就好。」

他原本要點頭。

筆電螢幕還停在昨天讀書會大家圍著看的那個頁面。昨天有人問什麼,他就點進去試給他們看。左邊選單裡還有幾個他沒點過的項目。

限制不知道在哪裡。權限能不能共用,他也還沒試。萬一有人問導入到現在的流程要花多少時間,萬一⋯⋯。

扶在桌邊的手指蜷了起來。

「我其實對這個沒有很熟。」他說,「我再看看好了。」

當天下班後,他坐在外接螢幕前看 YouTube,影片裡傳來笑聲,一段接著一段。他背靠在人體工學椅上,右手搭在滑鼠上,沒有動。

Slack 通知跳出來。他看見學長的名字。

今天沒有會議,也沒有約討論。他看了名字幾秒,手指沒有馬上按下去。

訊息是一大段文字。列了好幾點。前面有問題,也有他舉的例子。中間提到上次回顧會議,他有提出一個問題,當時大家也給了方向。再往下,學長寫:會議上我有先幫忙說明,但之後還是要自己跟進,不要只是提出來就停住。

他先把整段滑到底。字太多,前後像黏在一起,只剩幾個詞跳出來:回顧會議、主動、跟進、積極性。

手指又把畫面往上推回去。視線停在一句話上。

「我觀察不到你的積極性。」

他把 YouTube 關掉。螢幕只剩 Slack,幾行字的冷光貼在他的鏡片上。身體往螢幕前靠,耳朵開始發熱。他瞪著那段訊息。

下面還有幾行,說即使是一件小事,大家都看在眼裡。

「永遠都不要覺得自己已經做得很好了。」

握著滑鼠的手越收越緊。他看向旁邊的白牆,深吸了一口氣,用力吐掉。

過了一會兒,他才在回覆框裡打:「謝謝你的留言。我已經看到,我思考消化之後回你。」

鍵帽一下一下沉下去,聲音比平常重。後來他關掉電腦,洗澡,躺上床。房間暗下來。

他閉著眼,還是看得到那幾行字。

隔天進辦公室時,他看見同事,包包還掛在肩上,就開口了。

「我想問你一件事。」

同事手還放在鍵盤上,抬頭看他。椅背上掛著一件卡其色的連帽外套。

他把背包帶往肩上拉緊,沒有馬上說。昨晚那段 Slack 還在腦子裡,幾行字排得很整齊。

「昨天學長傳了一段話給我。」他說,「我有點不知道要怎麼回。」

「我覺得他講的,我不太認同。」

說完這句,他才把包包從肩上放下來。「可是我現在其實沒有太多餘裕。」他說。

同事沒有接話。

「我每天下班都在看那本書。」他說,「週末讀書會我也去。前幾天我還……」他停住。

「我不是沒有在補。」聲音比剛剛小。

他說完後,沒有馬上接下一句,視線還停在對方臉上。手指碰到褲子口袋裡的手機,又收了回來。

同事卻很快接上來:「可是上次會議他不是還幫你說話?他也是好意啦。你這樣回,他以後可能就不會想提醒你了。」

他張開了嘴,又把話停住。「我不是說他不好。」他說。

同事點點頭,從座位上站起來,沒有走近,只是隔著那段距離又說:「可是你轉職嘛,本來就會比較辛苦一點,這塊要趕快補起來。」

他的腳尖先轉向自己的座位,視線落到地板上。手碰到椅背,停在那裡。最後,他沒有再看那個同事,只說:「好吧。」


人坐到餐桌前時,飯已經在碗裡,菜也夾好了。再低頭,碗已經空了。

他上樓走到升降桌前坐下。桌面是空的,筆電闔著。他坐了至少五分鐘,才伸手把筆電打開。

Slack 的回覆他沒有直接打在 Slack 裡,而是先打在 Notion。

他打下一句:「我其實不太認同。」

手停在鍵盤上,食指一下、一下敲著鍵帽。

他又打下一句:「有些問題我還在整理。」

他看著那句話,喉嚨動了動。

「這個功能不是很簡單?」那句話又冒出來。

他按住刪除鍵。字一個一個往回退,最後整行空掉。

重新打,把句子改成:「我想請教,如果是你的話,會怎麼安排優先順序?」

他把那段話反白,複製。Slack 視窗切回來時,學長的名字還停在最上面。昨晚那一大段訊息在上方,最後一段話露出一半。他把文字貼進回覆框。

游標停在句尾,一閃一閃。送出鍵就在旁邊。

他的右手握著左手的大拇指,拇指在指節上來回磨,磨到皮膚有點發熱。
他把右手放回滑鼠上。

按下送出。

沒有再看第二眼,就啪一聲闔上筆電,走回房間。

房間裡沒有開燈,手機螢幕亮過一次,又暗下去。

7-11 的自動門往兩側滑開。
他從捷運站另一個出口上來,一進店裡,餘光先勾到一塊卡其色。那件連帽外套站在早餐架前,隔著兩排貨架,低頭挑著早餐。

他本來要往前走,腳步卻停了下來。下一秒,他退到另一排貨架後面。洋芋片的包裝袋排在眼前,他看著其中一包,手一直垂著。

等同事走向櫃台,他才繞到冷藏櫃前,拿起一顆鮪魚御飯糰。翻到背面時,他用餘光看著櫃台。直到同事走出 7-11,他才拿著御飯糰走到隊伍後面。

結完帳後,他走到自動門前,先看向公司的方向。同事已經過了路口。他望著那個背影再走遠一點,才走出去,腳步比剛才更慢。

那顆御飯糰被隨手擱在辦公桌邊,包裝紙還沒拆。

螢幕暗下去時,他鬆開滑鼠,拇指摸到手機側邊。

Google Map 開著,搜尋列裡常常還留著「咖啡廳」三個字。公司附近一間,捷運站另一頭一間,回家路上兩間。

他點開照片,不是先看餐點,是先看牆邊。桌下如果看不到插座,就退出去。評論裡有人寫「聊天很熱鬧」,他也退出去。留下來的,多半是安靜、不限時、桌面剛好夠放一台筆電、每個人都低頭看螢幕的店。

有些他真的去過,有些只是先存起來。

綠色旗幟一面一面插上去。

有一天他把地圖縮小,發現那些旗幟圍著公司、捷運站和家,連成一個歪歪的多邊形。他看著那個形狀,原本鬆著的嘴角慢慢收成一道平線。視線在幾面旗幟之間來回跳了幾下。

拇指最後停在其中一面綠色旗幟上。

第二次走進那間咖啡廳時,他順著門口往裡走,經過那座書架。腳步沒有慢下來。停在上次那張桌前,背包從肩上鬆下來,落到腳邊。

筆電拿出來,電源線接上。螢幕亮起來時,Notion 的白底和 terminal 的黑底並排著,在他臉上分出兩塊不同的光。

店員端著餐點走過來:「餐點來囉。」

他沒有抬頭,只把筆電往旁邊挪開一點,讓盤子放得下。

他的眼睛還在螢幕上,一手滑著觸控板,另一隻手摸到餐點,拿起來咬了一口。嚼著,又看回螢幕上的文字。他吸了一口奶茶,才剛吞下去,胸口下方像有什麼東西又浮上來。他把背往前彎了些。

奶茶放在旁邊,冰塊化了一點,杯壁的水珠流到桌面。他沒有拿衛生紙擦,只把滑鼠往旁邊移開。

吃完後,他抽了張衛生紙,隨便擦了擦嘴。衛生紙在手裡揉成一團,被他丟回餐盤裡。

黑底上的字一行一行往下跑。

他把筆電收進包裡,背包背上肩。桌上只剩一個空杯。

門被拉開了。外面的聲音進來一下,又被關回去。

店員走過去,把空杯收走。

那張靠牆的桌子空下來。

沒多久,另一個人背著背包進來,在門口停住,往牆邊看。對方坐到那張桌前,拿出筆電。

店裡的音樂還是很慢。

幾個人低著頭,眼睛被各自的螢幕照亮。


早上,手腕被 Apple Watch 一下一下推醒。他睜開眼,背還黏在床上。震動停了,他才把身體從床上撐起來。

坐到桌前後,他把昨晚停住的那一段重新打開。螢幕亮起來,黑底上的字先浮成兩層。他瞇起眼,等字慢慢對上,才把視線放回第一行。

第一次讀,圈出看不懂的地方。第二次再回頭讀,他把滑鼠指標移到字下面,一個字一個字往右推。推到句尾,又拖回句首。

AI 整理的大綱跳出來,他看了一會兒,只在輸入框裡打了幾個字:換例子。AI 換了一個。他又看了一會兒,眼睛先乾了起來。

手指停在鍵盤上,最後只補了幾個字:

看不懂。

眼皮撐不住,他閉上。等那點刺痛退下去,再睜開。螢幕上的字還在那裡。

再撐不住,再閉上。再睜開。

不知道過了多久,眼皮乾到每次閉上再睜開,都會刮過眼球表面。

他眨了幾下,眼淚沒有出來。

他最後一次把眼睛閉上。

再睜開眼時,他躺在床上,鬧鐘還沒響。

胸口靠下有一股灼熱慢慢頂上來,沿著食道往喉嚨泛。他僵著沒動,先是吞了一口口水。那股酸味沒有下去,反而黏在舌根後面。

他坐起來,等那股熱意退了一點,才下床走到桌前。水杯裡還剩昨晚的水,已經放到室溫。他拿起來喝了一口,又喝了一口,喉嚨還是澀的。

他撐到下午,坐進會議室時,胸口靠下的位置還一陣一陣地灼著。
對面的人說文件分享給他了。他把筆電打開,點開那份文件,最上面是他的名字。

他先往下捲到底。一段一段都是字,沒有數字。

「調薪的部分,」對面開口,講了一個幅度。

桌下的手指輕輕動了動,眼睛亮了一瞬。比他想的多。
他點了頭,停了一小拍,才說:「謝謝。」

走出會議室時,胸口先鬆了一點,眼皮卻沉下來,視線也跟著低了。
他回到座位,打開筆電。畫面還停在昨天的 PR。

他看著其中一行程式碼。那個地方,上次 review 留下的標記還在旁邊。

手先動了。刪掉,補上。

冷氣聲低低地響著。

螢幕的藍光打在鏡片上,只剩兩小塊冷白色的反光。