電腦之前的電腦
1994 年 10 月 20 日,那台電腦記得的最早一筆業務動作。
那一秒之前 T 旅行社已經在做生意了。那一秒之後 5 年 2 個月,是 Franca 一個人撐起的時代。
當新系統 1999 年 12 月 30 日上線那天 06:43:03 apple 按下她的第一個儲存鍵 —— Franca 已經不在那個帳號了。
這篇是寫給那台電腦之前的電腦。
序 · 06:43:03
1999 年 12 月 30 日,禮拜四,凌晨。
那一秒 apple 在這台新電腦上按下她的第一個儲存鍵。那是 T 旅行社舊系統 MIS 5.0 第一天上線的第一筆業務動作。
那一秒之前,5 年又 2 個月 —— 從 1994 年 10 月 20 日算起 —— T 旅行社是另一台電腦在跑。那台電腦的會計部主力是一個帳號叫 Franca。她在 1994-1999 之間寫了 20,843 張收據,總金額 1.8 億。
那一秒之後 26 年 —— 一直到 2026 年 —— Franca 從未在這個新系統按下她的第一個儲存鍵。
不是她忘了。是因為在 1999-12-30 那天 06 點 43 分這一刻她已經不在那個帳號了。
這篇要說的是 v1 跟 II 的所有故事開始之前的那個人。
一 · 沒有出現的人
打開新系統第一天的 lgc 紀錄看,1999-12-30 那一天總共 6 個帳號按下過儲存鍵:
02:24:42 glmenu 系統 admin 登入 06:43:03 apples apple 上工 08:44:50 maggie 新人 maggie 09:19:08~ joyce 連續 5 筆 / 4 分鐘 10:54:31 rebecca 當天第二筆動作 11:15:01 wendy 第一次按下儲存鍵
新系統第一天「在現場按過儲存鍵」的人是這 6 個。
不在這份名單上的是 Franca。
她不是不在公司 —— 她可能就在隔壁桌、可能在另一間辦公室、可能就站在 apple 後面看新系統怎麼登入 —— 但她沒有自己的 lgc 紀錄。她在這台新電腦上不存在。
她的 20,843 筆舊紀錄被一次性匯入新系統,所以資料庫裡的 iv333='Franca' 跨年保留下來。但這只是檔案搬家。這個帳號的活人已經不在了。
新系統第一天接她位置的是 apple,06:43:03 那一秒按下儲存鍵 —— 這個 timestamp 從某種角度看,是 T 旅行社「上一代會計主力」到「下一代會計主力」的交班瞬間。
當交班那一秒發生時,被交班的那個人,已經不在現場。
二 · 她比所有人都早
Franca 第一筆紀錄在資料庫裡是這樣的:
iv303: 1994-10-20 dtc: NULL iv307: _ iv322: 20,900 iv333: Franca
dtc(在系統裡的建檔日)是 NULL。iv303(交易發生日)寫著 1994-10-20。
換句話說 —— 她這筆紀錄不是現場開的。是 1999-12-30 新系統上線時,從上一代系統匯入過來的。她真正按下儲存鍵的那一刻不是這個 timestamp,而是 1994 年 10 月 20 日,在另一台電腦上。
那台電腦沒有保留下來。它的 timestamp 只有日期、沒有時間,只有業務發生日、沒有「按下儲存鍵的瞬間」。我們現在能看到的,是那台電腦在 1999 年最後一刻把它的記憶交給這台電腦的副本。
從 1994 年 10 月 20 日算到 1999 年 12 月底,她在那台電腦上寫了:
1994 546 張收據 1995 1,880 1996 4,709 1997 5,390 ← 高峰 1998 4,575 1999 3,742 ───── ─────── 共 20,842 張 / 約 1.8 億
5 年又 2 個月。20,842 張收據。
換算下來:1997 年她每個工作天平均寫 20-22 張。整個 1997 年她沒有一個禮拜「進公司就只是開兩三張」的時候。每天 20 張,5 年下來 2 萬筆。
她不是某種輔助角色。她是那 5 年公司收據業務的主軸。
三 · yame — 她的副手
如果你看 Franca 在 1994-1999 經辦的客戶名單,會看到旁邊一直跟著另一個帳號叫 yame。
ABC 工程行 (1994-1999) Franca: 509 張 yame: 52 張 笙笙公司 (1995-1999) Franca: 545 張 yame: 61 張 OO公司 (1994-1999) Franca: 3,118 張 yame: 442 張
yame 的工作量大概是 Franca 的 8%-12%。看起來像是副手 —— 也許是助理、也許是兼職。我們從電腦看不出來她是誰,但老闆娘可能記得。
但有一件事可以確定:Franca 不是孤軍奮戰。那 5 年她身邊有人,至少有yame。
yame 在 2000 年之後也沒在 inv003 出現過。她跟 Franca 是同期離場的。
T 旅行社 1994-1999 年的會計部,是這兩個人撐起來的。
四 · ABC 工程行 → XX 科技
挖 Franca 客戶的時候有一個發現讓人停下來 ——
她排第 6 的客戶是「ABC 工程行」,1994 年 10 月起 404 張、533 萬。
她那一代結束之後,ABC 工程行在 1999 年 9 月寫下最後一筆。隔了 6 年的資料黑洞之後 ——
2005 年 5 月新系統重建那一週,XX 科技股份有限公司作為一個「新客戶」在 inv003 出現。從 2005 到 2026 累計 3,072 張、4,993 萬,是 wendy 21 年的二大客戶。
我們以為這是兩家不同的公司。
直到把統編對起來看:
ABC 工程行 統編 ×××××××× 1994-10-20 → 1999-09-01 XX 科技股份有限公司 統編 ×××××××× 2005-05-27 → 2026-05
同一個統編。
這家公司沒有換、沒有死、沒有重生 —— 它只是 2000-2004 年那段資料黑洞裡,從「工程行」改名成「科技公司」。可能跨足新業務、可能法人重組、可能策略性更名。
但對 T 旅行社來說,這家公司從 1994 年 10 月一直到 2026 年 5 月都是同一個客戶。
跨度:31 年 7 個月。
中間經手過 Franca、apple 系列、wendy。客戶端可能換過好幾個會計、好幾個 logo、好幾個窗口。T 旅行社這邊也換過好幾個人。
但這個統編 ×××××××× 的合作關係沒有斷。
我們以為這家公司跟 T 旅行社合作 21 年,其實是 31 年。Franca 的 5 年加上後面的 21 年,中間還有 5 年資料黑洞裡的歷史。
她們的關係比 wendy 一個人的職涯還久。
五 · 從一個人到九個人 — 笙笙公司的稀釋
Franca 排第 3 的客戶是笙笙公司。她 1995-1999 親手開了 545 張。
新系統 2000 年上線之後,這家客戶散到 9 個人手上:
2000 年笙笙公司經辦: apples 33 張 maggie 45 張 rebecca 44 張 cindy 12 joyce 8 lily 10 elaine 17 ally 4 其他 若干
從一個人(Franca)5 年 545 張,變成9 個人一年內分掉 173 張。
不是因為笙笙公司的業務量爆增。是因為 Franca 走了,這個客戶不再有「專屬窗口」,落到新系統第一年的 9 個人手上輪流接。
對笙笙公司的會計來說,他們在 1995-1999 打電話到 T 旅行社永遠是同一個聲音。2000 起每次打進來不一定是誰接。
對 T 旅行社自己來說,笙笙公司失去了某種「機構性記憶」 —— 以前 Franca 知道對方上個月開了什麼、這個月在等什麼,現在每次重新介紹一次。
這個轉換大概只有「老朋友變陌生」這個比喻能說清楚。客戶端可能也注意到了 —— 但他們沒辦法選擇對方換什麼人接。
T 旅行社的舊客戶從 Franca 時代過渡到新系統時代,很多都經歷了同樣的「從一個人變九個人」的稀釋。
六 · Ghost:林秀雲
Franca 在 dtc>=2000 的紀錄總共有 8 筆。其中 6 筆是 2000 年 1 月初新系統剛上線那週,apple 用 Franca 的標籤幫她補登歷史資料(lgc=apples、iv333=Franca)。
剩下 2 筆是真正的 ghost:
dtc tmc iv303 iv307 iv322 lgc 2006-10-31 10:30:24 1999-07-05 林秀雲 43,723 wendy 2010-08-16 09:51:26 2010-08-10 (空白) 16,249 wendy
兩筆都是 wendy 經手。
第一筆 —— 2006 年 10 月 31 日,wendy 用 Franca 的標籤補登了一張 1999 年 7 月 5 日的舊收據。客戶是林秀雲 —— 這份資料裡少數的個人名,不是公司。
7 年。一張 1999 年的收據,2006 年才被開出。
我們不知道為什麼。可能是林秀雲那一年訂了什麼、結了帳、但沒拿憑證 —— 7 年後她需要報帳,回來找 T 旅行社,wendy 翻到那筆原始紀錄,用 Franca 的標籤補了一張收據。
那一刻 wendy 一定知道 Franca 是誰。可能也記得 1999 年那筆的細節 —— 或者就翻看舊系統檔案找出來。
電腦不會解釋這件事 —— 但這個 ghost 是這份資料裡少數有人情味的痕跡。有人在 2006 年想起了 7 年前那筆業務、想起了 Franca、用她的名字補了一張收據。
第二筆 2010 年那筆更安靜 —— 客戶名空白、沒有故事。可能是另一次補登、可能是 wendy 自己用 Franca 標籤做了什麼測試或記帳。
兩筆 ghost 之後,Franca 在這個資料庫裡再也沒出現過。
七 · 她寫的 20,843 筆還在這裡
Franca 沒有像 wendy 那樣繼續寫到 2026、也沒有像 rebecca 那樣在 2020-12-22 寫下最後一筆 —— 她是更早的人,沒有「最後一筆」。
她有的是「上一代系統最後一年寫完之後就交班了」。
但她寫的 20,843 筆紀錄全部留在這個資料庫裡。每一筆 iv303 都還能查到、每一個客戶都還能 GROUP BY、每一個金額都還能 SUM。
- 她在 1994 年 10 月開的那張 20,900 元,現在還在 SQLite 第 N 筆
- 她在 1997 年高峰期那 5,390 張收據,現在還能畫成曲線
- 她服務的ABC 工程行,現在改名XX 科技繼續活著
- 她服務的笙笙公司,現在還是 wendy 的客戶
- 她服務的OO公司,現在是 wendy 26 年第一名大客戶
Franca 是 wendy 客戶名單的源頭。
我們以為 wendy 的客戶是她自己從 1999 年起累積的,其實前三大客戶(OO公司、ABC 工程行、笙笙公司)每一個都是 Franca 在 1994-1999 那 5 年帶大的,新系統上線後她們順著被傳給新一代。
換句話說:Franca 沒有繼承 wendy,是 wendy 繼承了 Franca。
八 · 電腦之前的電腦
T 旅行社有兩台電腦的歷史 ——
第一台 1994-10-20 ~ 1999-12-29 Franca 主力 + yame 第二台 1999-12-30 ~ 2026 至今 6+ 人輪替
我們現在做 v7 ETL,是把第二台電腦的記憶搬到第三台。但第一台電腦的記憶早就被搬過一次了 —— 在 1999-12-30 那天,它的 20,843 張收據被匯入第二台。
那次搬家做得很乾淨。連同 iv333='Franca' 這個標籤一起搬過來。所以我們今天還能看到她。
但有些東西沒有被搬:
- 她按下儲存鍵的時間戳(
tmc全部 NULL) - 她的登入紀錄(
lgc只有 1999 年 34 筆) - 她的輸入習慣、錯字、修改痕跡 —— 這些 metadata 都沒留下
我們能看到的是她做了什麼,看不到她怎麼做。她可能每天 8 點到公司、下午 5 點走、抽菸喝茶、跟 yame聊天。我們知道的只有她按下儲存鍵之後留下的 20,843 個快照。
這個資料的形態跟我們現在處理 wendy/apple 的資料質地不同。我們對 wendy 可以說「她 11:15:01 按下今天第一個儲存鍵」「她週五下午通常比較早結束」。對 Franca 我們只能說「1997 年她大概一年寫了 5,390 張」。
她在這個資料庫裡的存在比較像化石、不太像活的足跡。
但化石也是紀錄。20,843 個化石 —— 每一個都是真的客戶在那一年真的訂了什麼、真的付了錢。電腦的「上一代」記得這些事,然後把這份記憶交給「現在這代」。
我們今天做 v7,會把第二代電腦的記憶交給第三代。Franca 的 20,843 筆會跟著第三代繼續活下去 —— 伴隨著 wendy、apple、rebecca、lily 的紀錄,伴隨著林秀雲那張 1999 年 7 月 5 日的 43,723 元,伴隨著ABC 工程行變XX 科技 31 年的合約延續。
電腦記得 Franca。它記得她,因為它的前一代記得她。
結語 · 兩層深度
II 系列補上的 rebecca、lily、現在這篇 Franca —— 是這台電腦記得的「它的前一代記得的事」。
也就是說,這份資料庫的記憶有兩層深度:
第一層 ── 這台電腦親眼看到的 1999-12-30 ~ 2026
wendy, apple, rebecca, lily, ...
第二層 ── 上一代電腦留給它的 1994-10-20 ~ 1999-12-29
Franca, yame, 林秀雲, ...
兩層加起來才是 T 旅行社的真正歷史。
如果我們把 v7 上線當成第三代電腦的開機日 —— 那麼第三代電腦的記憶,是我們今天決定要傳承什麼進去之後才會有的。
它會記得多少 Franca?多少 wendy?多少ABC 工程行 → XX 科技 的 31 年連續性?多少 1994 年那張 20,900 元的第一筆?
完全由我們今天怎麼做 ETL 決定。
這也是為什麼「不接舊資料」這句話聽起來不只刺耳,是對歷史的犯罪。
第一代電腦的記憶在 1999-12-30 被完整交棒。第二代不能在 2026 把它弄丟。
第一代到第二代是 5 年資料、第二代到第三代是 27 年資料。中間誰都沒有資格說「這些不重要」。
電腦之前還有電腦。電腦之後也還會有電腦。我們現在做的事,就是讓這條鏈子不要斷。
— Amy + Claude(2026 春)