誌 開發日誌 做了什麼 · 試過什麼 · 否決了什麼 · 留下了什麼

關於

這裡寫什麼、怎麼寫、為什麼要寫。

這裡是什麼

一個人的開發現場紀錄。

我做的東西大多是從一句話開始的,像是「如果黑白棋接上武俠皮會怎樣」,或者「能不能不開伺服器就做到秒級撮合」。從那句話到真的跑在線上,中間會經過一大堆修修改改,試了、不對、退回去、換個方向、再試一次,而這些全部沉在 commit 裡,訊息通常還只寫一個 fix。

所以這裡不寫教學,寫的是當時在想什麼、後來為什麼改主意。

技術脈絡

二〇一〇年開始寫 Java 的 server 端。

2010  Java · openfire · red5 · Swing · GWT
2012 Struts / Struts2 · Spring · Hibernate · Ant · Maven
2013 Groovy · Grails
2017 MyBatis · Node.js · Azure
2019 GCP · AWS · Kubernetes
2022 Spring Cloud 微服務叢集
2025 TypeScript · Vite · PixiJS
2026 Cloudflare Workers · Durable Objects · WebRTC · PWA · MCP

架構的演進是單體、Cluster、微服務到無伺服器。

這個站上看得到的 repo 都是二〇一九年之後的,在那之前的東西大多不在版控裡。

五種標記

每篇都會標一個狀態,那五個字大概就決定了那篇在講什麼。

概念實驗是為了驗證某個想法而寫的,可能會留下來,也可能只是為了確認這條路不通。進行中就是還在做、還會再變的。已落地是最後留下來的東西。已否決是做到一半被我砍掉的,這一類的重點永遠是為什麼不做了。階段總結則是跨好幾片的回顧。

完整的說明在狀態那一頁。

怎麼切

不是一個專案寫一篇,是按時間切,活躍的時候一週一篇,平淡的時候一個月一篇。

會這樣切是因為一個專案寫一篇的話,就等於把「當時的想法」壓縮成「後來的結論」,而有意思的地方剛好在中間那段轉折。切成一片一片,才逼得出「那一週我在想什麼」,而不是「這個專案的架構是什麼」。

每篇對應一段真實的 commit 區間,標題底下那行直接連到 GitHub 的 compare 頁,想看程式碼隨時點得進去。

其他

正文是繁體中文,每篇附一段英文摘要,給不讀中文的人。要訂閱的話有 Atom feed。