When the GUI Disappears: Google UCP and the Shift to Protocol-First Commerce

中文版請點此 🇹🇼 👉 https://aaronwubuilds.github.io/posts/google-ucp-perspectives-zh/ Yesterday, Google officially announced the Universal Commerce Protocol (UCP). Tech media headlines are screaming “The Death of E-commerce,” but this one-dimensional panic is not only cheap clickbait—it’s fundamentally wrong. As a backend engineer who has navigated the worlds of Big Tech, academia, and startups, I don’t see destruction. I see a displacement of power: a shift from the dominance of the “Platform” back to the purity of the “Protocol.” ...

January 12, 2026 · 6 min · 1152 words

當 GUI 介面消失後:從 4 個視角看 Google UCP 協定帶來的「思維重構」

Read English Version 🇺🇸 👉 https://aaronwubuilds.github.io/posts/google-ucp-perspectives-en/ 昨天,Google 正式官宣通用商務協定 (UCP, Universal Commerce Protocol)。媒體標題都在喊「電商死期到了」,但這種單一維度的恐慌不僅廉價,而且錯誤。 身為一名在 大廠 (Big Tech) 、研究界、新創界,都略為留下足跡的後端工程師,我看到的不是毀滅,而是 權力的位移:從強勢的「平台 (Platform)」回歸到純粹的「協定 (Protocol)」。 過去十年,我們習慣了「圍牆花園」——你要買東西得開亞馬遜,要聊天得開微信。但 AI Agent 的出現正在打破這堵牆。當 Shopping Agent 能跨平台直接讀取數據時,我們正面臨一次難得的「重洗牌」。 在這篇文章中,我將 切換四個不同的身份視角(工程師、架構師、商業分析師、創業者),來解構這場變革。對我們來說,最重要的不是 Google 做了什麼,而是我們 不該再做什麼,以及應該開始做什麼。 1. 👨‍💻 工程師視角:從 SEO 到 AEO (Agent Engine Optimization) 以前我們做網站,核心指標是「給人看」。我們會優化 CSS 動畫,設計吸睛的 Landing Page,並在 Meta Tag 裡塞滿關鍵字來討好搜尋引擎 (SEO)。 但 AI Shopping Agent 是機器的邏輯。它不看網頁的「皮」(CSS/HTML),它只讀網頁的「骨」(Data Structure)。當 Agent 接收指令「幫我買最划算的 4K 螢幕」時,它不會被你的精美圖片吸引,而是直接掃描程式碼中的數據結構。 如果你的產品規格只寫在圖片裡(Image-heavy descriptions),或者你的價格是用 JavaScript 動態渲染出來的,對 Agent 來說,你就是「透明」且「不存在」的。 🔄 The Shift: 思維轉向 ❌ 你不該再這樣做 (Stop): ...

January 12, 2026 · 2 min · 336 words

[Build in Public] 入伍前把腦袋備份:我如何用 Python 和 AI 自動化我的技術部落格

Read English Version 🇺🇸 👉 Backing Up My Brain Before the Army: How I Automated My Blog Workflow with Python & AI Status: ☕️ Caffeinated | ⏳ Days until Enlistment: 20 我是 Aaron,一個喜歡 Software Design 的後端工程師。 想像這個情況:你完全是新手,根本不知道寫什麼東西可以創造價值,甚至不知道 Audience 是誰。你甚至不知道要在哪裡發表你的所學所見——明明這些技術對你而言是有趣且值得紀錄的。你會怎麼做? 深刻的研究嗎?Well,我本來也是這麼想的。不過一位經營一人公司的前輩告訴我,鎖定市場最重要的事情是 Fail Fast,也就是要能夠快速地測試,在各個平台都丟出去看看反應。 我一開始很反對,「我又不是要賣東西,幹嘛一直講市場?」不過當我 Study 了好多成功與失敗的創業例子後,發現一個規律:最悲慘的結局,大多來自「想太多,錢和時間就燒完了」以及「我以為市場長這樣」。 於是我打算到處發點東西,但是第一天真的很多挫折:Github Pages, Dev.to, X, Threads, LinkedIn… 每個平台的格式都不太一樣。我光是發第一篇簡介「Redis 如何解決 Race Condition」的文章,處理 Canonical URL 和 OG Image 就花了我一個下午。 我很生氣啊! 更尷尬的是:我再過 20 天就要去當兵了。 為了確保我的部落格不會因為我進部隊就荒廢,我決定把整個發布流程「自動化」。畢竟我可不想放假回家還把家人丟著,花時間一直在複製貼上文章。 🛠️ The Architecture: 先有腦袋,才有 AI 網路上有很多教你用各種工具拼湊 Pipeline 的教學,但我並沒有直接照抄。 ...

January 10, 2026 · 2 min · 309 words

Backing Up My Brain Before the Army: How I Automated My Blog Workflow with Python & AI

中文版請點此 🇹🇼 👉 入伍前把腦袋備份:我如何用 Python 和 AI 自動化我的技術部落格 Status: ☕️ Caffeinated | ⏳ Days until Enlistment: 20 I’m Aaron, a backend engineer who loves Software Design. Imagine this scenario: You’re a complete novice. You have no idea what creates value, or who your audience is. You don’t even know where to publish your insights—even though the tech you’re working on is interesting and worth documenting. What do you do? Deep research? Well, that was my initial thought. But a mentor running a one-person company told me that the most important thing when targeting a market is to Fail Fast. You need to test rapidly, throwing content onto various platforms to see the reaction. ...

January 10, 2026 · 5 min · 988 words

[System Design] Why Is Your App 'Overselling'? A Founder's First Lesson in Concurrency

You’re Bob, a bootstrapped founder who can’t afford to hire a software engineer. In this era of “Vibe Coding,” you believe you can build a Minimum Viable Product (MVP) just by relying on AI. 🤖 Today, you finally figured out how to set up an API, handle frontend rendering, and connect a SQL database. You actually built an e-commerce app! The tests passed, and it’s finally time for the soft launch. 🚀 ...

January 9, 2026 · 4 min · 833 words · Aaron

[System Design] 為什麼你的 App 會「超賣」?給創業者的併發第一課

你是 Bob,一個請不起軟體工程師的創業者。在 Vibe Coding 的時代,你相信自己靠 AI 寫 MVP 沒問題的。 今天你學會架 API、做前端渲染、連接 SQL 資料庫,總算是做出了個電商 App,測試沒問題,終於可以試用期上線啦! 哇!結果一上線辦活動,你好不容易吸引來的用戶開始哀哀叫啦! 「Bob!我明明看到還有庫存,為什麼扣款了卻不出貨?!」 你去後台一看,庫存只有 10 個,卻賣出了 12 個!?你要去哪裡生出另外兩雙喬丹限量鞋? 你汗流浹背了。你可不想讓人發現你只是個摳門的創業者,這牌子剛打磨好就要砸啦! 你趕快跑來問後端工程師 Aaron。 「Aaron Aaron,這是甚麼情形?難道天要亡我,電腦就這麼故意多算兩筆數據嗎?」 Aaron 拍拍你的背,「這不是運氣不好,這是典型的 Race Condition (競態條件)。」 「Race Condition?」 🛑 為什麼你的程式碼會說謊? Bob,你寫的邏輯大概是長這樣吧? 讀取:看資料庫,還有貨嗎? (Select count...) 判斷:如果 > 0,就賣給他。 寫入:把庫存 -1,寫回資料庫。 (Update...) 這邏輯在只有你一個人測試時,完美無缺。 但當 User A 和 User B 在「同一毫秒」按下購買鍵時,悲劇發生了: A 看到庫存是 1。 B 同時也看到庫存是 1 (因為 A 還沒來得及扣掉)。 A 買到了,庫存變 0。 B 也以為自己買到了,庫存變 -1。 這就是 Race Condition。 ...

January 9, 2026 · 1 min · 164 words · Aaron