Tuần này có hai bài viết ra cách nhau vài giờ, nói về hai thứ tưởng chẳng liên quan gì nhau, mà đọc xong thấy chúng nó chung một bệnh.
Bài thứ nhất: Mario Zechner — developer kỳ cựu, người viết libGDX — đăng một bài dài tựa đề thẳng ruột ngựa: “Thoughts on slowing the fuck down.“ Bài thứ hai: Joy Yang và Mason Rodriguez Rand trên Strange VC Review, phân tích vì sao pin của robot hình người (humanoid) đang là bức tường không ai leo qua được: “Hitting the Battery Wall.“
Một bên nói AI agent viết code nhanh tới mức tự đào hố chôn mình. Bên kia nói robot đi được 2 tiếng rồi phải sạc. Hai câu chuyện, hai ngành, nhưng cùng một khoảng cách: giữa cái mà giới marketing hứa và cái mà vật lý — hoặc kiến trúc phần mềm — cho phép.
Phần 1 — Mario Zechner: Hãy chậm lại, đồ ngốc
Bối cảnh
Zechner không phải dân anti-AI. Ông dùng agent, hiểu agent, và thừa nhận chúng giỏi thật ở những task cụ thể. Nhưng sau 12 tháng quan sát ngành — từ AWS outage bị nghi do AI gây ra (Financial Times, 03/2026), đến Satya Nadella khoe 30% code Microsoft giờ do AI viết rồi Windows ngày càng tệ, đến các startup tuyên bố “100% code by AI” mà sản phẩm lỗi tràn lan — ông rút ra một kết luận rất gọn:
Chúng ta đã đánh đổi kỷ luật lấy tốc độ. Và hóa đơn đang tới.

Nguyên văn Zechner:
“While all of this is anecdotal, it sure feels like software has become a brittle mess, with 98% uptime becoming the norm instead of the exception, including for big services. And user interfaces have the weirdest fucking bugs that you’d think a QA team would catch. I give you that that’s been the case for longer than agents exist. But we seem to be accelerating.”
“Companies claiming 100% of their product’s code is now written by AI consistently put out the worst garbage you can imagine. Not pointing fingers, but memory leaks in the gigabytes, UI glitches, broken-ass features, crashes: that is not the seal of quality they think it is.”
3 luận điểm cốt lõi
1. Lỗi nhỏ cộng dồn thành quái vật (compounding booboos)
Con người cũng mắc lỗi. Nhưng con người là nút thắt cổ chai tự nhiên — một developer không thể tạo ra 20.000 dòng code trong vài giờ. Lỗi cộng dồn chậm, và khi đau đủ thì người ta dừng lại sửa.
Agent thì khác. Không có nút thắt cổ chai. Không có nỗi đau. Những lỗi nhỏ vô hại — code trùng lặp, abstraction thừa, code smell mà linter không bắt — cứ thế nhân lên theo cấp số. Bạn chỉ phát hiện khi đã quá muộn: kiến trúc toàn booboo, muốn thêm feature mới thì agent không làm nổi, muốn refactor thì không biết bắt đầu từ đâu.
Nguyên văn Zechner:
“A human is a bottleneck. A human cannot shit out 20,000 lines of code in a few hours. Even if the human creates such booboos at high frequency, there’s only so many booboos the human can introduce in a codebase per day. The booboos will compound at a very slow rate.”
“With an orchestrated army of agents, there is no bottleneck, no human pain. These tiny little harmless booboos suddenly compound at a rate that’s unsustainable. You have removed yourself from the loop, so you don’t even know that all the innocent booboos have formed a monster of a codebase. You only feel the pain when it’s too late.“
2. Agent là thương lái của sự phức tạp (merchants of learned complexity)
Agent được huấn luyện trên đống training data chứa đầy “industry best practices” — mà thực tế là cargo cult architecture. Khi bạn giao quyền thiết kế kiến trúc cho agent, nó sẽ tạo ra đúng cái mớ phức tạp mà một codebase doanh nghiệp (enterprise codebase) mất nhiều năm mới đạt tới. Với agent và 2 người, bạn đạt mức phức tạp đó trong vài tuần.
Tệ hơn: các agent không nhìn thấy nhau, không thấy toàn bộ codebase, không biết quyết định nào đã được đưa ra trước đó. Mọi quyết định của agent đều mang tính cục bộ (local). Kết quả: trùng lặp, mâu thuẫn, abstraction chồng abstraction.
Nguyên văn Zechner:
“You have zero fucking idea what’s going on because you delegated all your agency to your agents. You let them run free, and they are merchants of complexity. They have seen many bad architectural decisions in their training data and throughout their RL training. You have told them to architect your application. Guess what the result is?”
“Your agents never see each other’s runs, never get to see all of your codebase, never get to see all the decisions that were made by you or other agents before they make a change. As such, an agent’s decisions are always local […] With agents and a team of 2 humans, you can get to that complexity within weeks.”
3. Tìm kiếm “thông minh” (agentic search) có recall thấp
Trước khi agent sửa lỗi, nó cần tìm tất cả code liên quan. Nhưng codebase càng lớn, recall càng thấp — cho dù bạn cho nó ripgrep, LSP server, hay vector database. Agent không tìm thấy code cần dùng → viết lại → tạo thêm trùng lặp → codebase phình to → recall lại càng thấp. Vòng xoáy đi xuống.
Zechner đề xuất gì?
- Task phù hợp cho agent: scope nhỏ, có thể đánh giá kết quả (evaluation function), không mission-critical, hoặc chỉ cần rubber duck để bounce ideas. Con người luôn là cổng chất lượng cuối cùng.
- Kiến trúc, API, gestalt hệ thống: viết tay. Pair-programming với agent thì được, nhưng phải ở trong code. Ma sát (friction) là cơ chế giúp bạn hiểu hệ thống và học hỏi.
- Đặt giới hạn: giới hạn lượng code agent tạo mỗi ngày, tương xứng với khả năng review thực tế của bạn.
- Học cách nói không: ít feature hơn, nhưng đúng feature.
Nguyên văn Zechner:
“I would like to suggest that slowing the fuck down is the way to go. Give yourself time to think about what you’re actually building and why. Give yourself an opportunity to say, fuck no, we don’t need this. Set yourself limits on how much code you let the clanker generate per day, in line with your ability to actually review the code.”
“Anything that defines the gestalt of your system, that is architecture, API, and so on, write it by hand. […] The simple act of having to write the thing or seeing it being built up step by step introduces friction that allows you to better understand what you want to build and how the system ‘feels’. This is where your experience and taste come in, something the current SOTA models simply cannot yet replace.”
“All of this requires discipline and agency. All of this requires humans.”
Phần 2 — Pin robot: Khi vật lý không thương lượng
Vấn đề
Bài của Yang & Rand trên Strange Review mổ xẻ một sự thật mà ngành robotics nhân hình (humanoid robotics) đang cố giấu: pin hiện tại không đủ cho một ca làm việc.
Nguyên văn Yang & Rand:
“A warehouse humanoid picks up a 15 kg box, carries it 30m, shelves it, and walks back. But inside the battery pack, nothing about this is routine. Each cycle contains a 2,500W lift spike, a 600 to 1,000W loaded walk, one or two 3,000W balance-recovery transients when something unexpected appears in the path, and a gentler unloaded return. Over a single charge, the battery absorbs 200 to 400 high-power spikes that are violent, asymmetric, thermally punishing.”
“No other battery-powered device on earth operates like this. […] A humanoid robot does something no commercial lithium-ion cell was designed for: sustained high discharge punctuated by repeated transients, hundreds of times per charge cycle, inside a compact torso where heat from 40+ actuators has nowhere to go. The closest analogue isn’t a car or a laptop. It’s closer to an aircraft auxiliary power unit, except that it is expected to run all day, every day, and the business model depends on it lasting for years.”
Con số trên giấy: pin NMC (Nickel Manganese Cobalt) — loại hầu hết humanoid đang dùng — được hãng rate 800–1.500 chu kỳ (cycles) ở 80% dung lượng. Nghe ổn. Nhưng đó là điều kiện phòng thí nghiệm: phóng điện 1C, 25°C, sạc nhẹ nhàng.
Con số thực tế trong nhà kho: phóng điện 3–5C, sạc nhanh, nhiệt độ thân robot lên tới 80–100°C vì 40+ bộ truyền động (actuator) tỏa nhiệt trong không gian chật. Tuổi thọ pin rơi xuống 200–500 chu kỳ. Robot chạy 2 ca/ngày = ~500 chu kỳ/năm. Ở con số phòng thí nghiệm: pin sống 2 năm. Ở con số thực: 6 tháng.
Khoảng cách giữa spec sheet và shop floor: gấp 4 lần.


Nguyên văn Yang & Rand:
“The human body walks at a cost of transport (CoT) of about 0.2, the product of hundreds of millions of years of evolutionary refinement. Honda’s ASIMO clocked a CoT of 3.2: sixteen times less efficient. […] Balancing on two legs is inherently expensive.”
“Even the most capable modern humanoids top out at 4 to 5 hours of real-world active runtime on a fresh battery.”
Hóa học pin — không có giải pháp thần kỳ
| Loại | Ưu | Nhược |
|---|---|---|
| NMC | Mật độ năng lượng cao nhất | Nhạy cảm với nhiệt, phóng sâu, sạc nhanh. 800→200 cycles thực |
| LFP | Bền, rẻ, chịu nhiệt tốt. 2.000–4.000 cycles | Nặng hơn 20–30% → cắt thời gian chạy hoặc ép actuator làm việc nặng hơn |
| LTO | Gần như bất tử (10.000+ cycles) | Mật độ năng lượng = một nửa NMC. Robot chạy ~1 giờ |
| Solid-state | Lý thuyết giải quyết tất cả | Thương mại hóa cho xe hơi: 2027–2028. Cho humanoid: 2029–2030. Lịch trình đã trượt. Chưa rõ chịu được xung điện liên tục hay không |

Nguyên văn Yang & Rand về cơ chế hư hỏng:
“These mechanisms compound rather than add. High temperature accelerates SEI growth, which raises resistance, which generates more heat. Fast charging causes plating, which creates localized hotspots, which accelerates SEI growth in those regions, making the next fast charge more damaging. […] Cells can fade gradually for months, then drop sharply when accumulated damage crosses a threshold. The nonlinearity is where deployment models break.“
“In an EV, active thermal management keeps cells at 35–40°C. In a humanoid torso, with batteries packed among heat-generating actuators with far less space for cooling, internal cell temperatures can spike to 80–100°C during peaks. […] Every 10°C above 25°C roughly doubles the rate of parasitic side reactions.”
Hai chiến lược đang cạnh tranh
Đổi nhanh (Swap faster): UBTECH Walker S2 — đổi pin dưới 3 phút, không cần tắt máy, tự lái tới trạm sạc. Đã sản xuất hàng loạt, triển khai tại dây chuyền BYD, Nio, Foxconn. Đơn hàng xác nhận trên 112 triệu USD (11/2025). Boston Dynamics Atlas mới cũng đi theo hướng này.
Chứa nhiều hơn (Store more): Figure F.03 — nhúng pin vào khung thân chịu lực, đạt 2,3 kWh, chạy 5 giờ, mật độ năng lượng tăng 94% so với thế hệ trước. Figure 02 đã chạy hơn 1.250 giờ tại nhà máy BMW Spartanburg, bao gồm ca 20 giờ liên tục.
Con số đau
Mô hình triển khai tiêu chuẩn cho 100 robot: thay pin mỗi 12–18 tháng, ~1.100 USD/robot. Thực tế: thay mỗi 3–5 tháng. Mỗi robot cần 8–9 pin trong 5 năm thay vì 3–4. Tổng chi phí pin gấp đôi.
Nhưng con số lớn hơn là thời gian dừng (downtime). Đổi pin thủ công: 4–6 giờ (chẩn đoán, hạ nhiệt, tháo lắp, hiệu chỉnh). Với 100 robot thay pin liên tục: 1.000–2.400 giờ mất năng suất mỗi năm. Ở mức cơ hội 200 USD/giờ, chênh lệch giữa đổi 6 giờ và đổi 3 phút là khoảng 300.000 USD/năm.
Phần 3 — Cái khoảng cách quen quen
Quay lại cái bài mà tôi viết trước đó — bài về Jensen Huang tuyên bố “AGI đã đến” trong khi Harvard Business Review bảo hãy onboard agent như onboard nhân viên thử việc, còn tôi thì ngồi khảo sát xem nhân viên công ty dùng Zalo hay Telegram.
Rồi, vậy giờ thêm hai bài mới này vào bức tranh, nó trông như thế nào?
Nó trông như một cái pattern lặp đi lặp lại ở mọi tầng của AI và robotics năm 2026:
Tầng trên nói “xong rồi.” Tầng dưới nói “chưa bắt đầu.”
Jensen Huang nói AGI đã đến. Zechner nói agent viết code thì được nhưng kiến trúc thì thảm họa. Ngành robotics nói humanoid sẽ thay thế công nhân. Yang & Rand nói robot hết pin trước ca trưa. Harvard nói “onboard agent như nhân viên.” Tôi nói nhân viên kho hỏi “con bot đó nằm trên Zalo hay Telegram?” — nếu câu trả lời là “Telegram” mà họ chỉ xài Zalo, thì AGI hay ASI cũng kệ, chẳng ai mở.
Nói tới đây thì nhận ra cái insight mà trước đó chưa nhìn thấy rõ trong bản báo cáo cho BOM:
Insight mới: Lỗi cộng dồn không chỉ là chuyện code
Zechner nói lỗi nhỏ của agent cộng dồn thành quái vật trong codebase. Nhưng cơ chế đó không chỉ xảy ra ở code — nó xảy ra ở triển khai doanh nghiệp.
Trong báo cáo, tôi liệt kê rủi ro ô nhiễm ngữ cảnh (context pollution): AI “nhớ” dữ liệu cũ rồi ra quyết định sai. Giá tháng trước thành giá hôm nay. Khuyến mãi đã kết thúc vẫn gợi ý cho khách. Mỗi lần sai một tí, không ai chết. Nhưng kiểu Zechner mô tả — “you only feel the pain when it’s too late” — nó xảy ra ở tầng này y hệt: nhân viên mất niềm tin vào agent từ từ, không nói ra, chỉ im lặng ngừng dùng. Adoption rate rớt mà không ai hiểu vì sao.
Cái framework HBR — “gán danh tính, giới hạn quyền, audit trail” — đúng nhưng thiếu một chân: không có cơ chế phát hiện lỗi cộng dồn sớm. Giống như Zechner nói agent không có nỗi đau (no pain) nên không biết dừng, thì triển khai AI trong doanh nghiệp nếu chỉ đo adoption rate và NPS cuối quý cũng sẽ không phát hiện lỗi cộng dồn cho tới khi nhân viên bỏ cuộc hàng loạt.
Insight mới: Battery wall = architecture wall
Bài pin robot nghe xa lắc xa lơ với AI agent, nhưng cái logic y hệt:
- Pin NMC trên giấy: 800 cycles. Thực tế: 200. → Agent trên demo: output đẹp. Thực tế production: booboo everywhere.
- Hai cơ chế hư hỏng pin (SEI growth + lithium plating) cộng hưởng: nhiệt cao → SEI dày → điện trở tăng → nhiệt cao hơn → SEI dày hơn → sụp đổ đột ngột. → Lỗi code agent cũng cộng hưởng: code trùng lặp → codebase phình → recall thấp → agent viết trùng tiếp → codebase phình nhanh hơn → recall càng thấp → sụp đổ.
- Phi tuyến: pin có thể giảm dung lượng từ từ trong nhiều tháng rồi rơi sập khi tổn thương tích lũy qua ngưỡng. Codebase agent cũng vậy — chạy ổn cho tới một ngày bạn thêm feature mới và không gì hoạt động nữa.
T. Lai, kỹ sư pin được phỏng vấn trong bài: “Someone could design around it, whether by oversizing a battery or using a better cell chemistry.” Zechner nói gần giống: đúng công cụ, đúng task, con người giám sát, giới hạn output. Cả hai đều nói: không có giải pháp thần kỳ, chỉ có kỹ thuật tốt trong giới hạn vật lý.
Phần 4 — “Vậy sao?”
Có một chi tiết trong bài Zechner mà tôi cứ nghĩ mãi. Ông viết rằng kinh nghiệm và gu thẩm mỹ (taste) của con người là thứ mà model hiện tại “simply cannot yet replace.” Nhưng cái “taste” đó chỉ hình thành khi bạn chịu ma sát — khi bạn chậm lại, khi bạn viết tay, khi bạn thấy hệ thống được xây lên từng bước một.
Rồi, nói tới đây lại nhớ bài pin robot. UBTECH giải bài toán pin không phải bằng cách chế ra loại pin mới — mà bằng cách chấp nhận giới hạn và thiết kế hệ thống đổi pin trong 3 phút. Figure cũng không chờ solid-state — nhúng pin vào khung thân, tối ưu từng phần trăm mật độ năng lượng với hóa học hiện có. Cả hai đều không hứa hẹn phép màu. Cả hai đều nói: đây là giới hạn, và đây là cách tốt nhất để sống trong giới hạn đó.
Trong khi đó, ở phía AI, giới marketing vẫn bán giấc mơ “6 tháng nữa agent sẽ tự viết hết.” NVIDIA bán GPU bằng câu “AGI đã đến.” Và các startup vẫn để agent chạy tự do rồi ngạc nhiên khi codebase thành đống phế liệu.
Cái thang ANI → AGI → ASI mà tôi phân loại trong bài trước — tất cả những gì đang tồn tại vẫn là ANI nâng cao. Agent biết xâu chuỗi nhiệm vụ, biết gọi công cụ, nhưng không biết khi nào mình sai. Pin NMC có mật độ năng lượng cao nhất, nhưng không chịu được điều kiện thực. Trên giấy thì hoàn hảo. Trong nhà kho thì sáu tháng thay một lần.
Bạn có thể gắn bộ não thông minh nhất thế giới vào một cái robot — nhưng nếu pin hết sau 2 tiếng, nó cũng chỉ là một bức tượng rất đắt tiền đứng giữa nhà kho. Và bạn có thể cho agent viết code nhanh gấp 50 lần developer — nhưng nếu không ai review, không ai hiểu kiến trúc, không ai biết nó đã sai ở đâu, thì bạn chỉ đang xây lâu đài trên cát. Nhanh hơn. Đẹp hơn. Nhưng vẫn trên cát.
Cái pattern chung ở đây — và cũng là thứ cần nhớ khi ngồi trong phòng họp BOM nghe ai đó trình bày “AI roadmap 2026” — là: khoảng cách giữa demo và triển khai không phải là bug cần sửa. Nó là đặc tính cấu trúc của mọi công nghệ chưa trưởng thành. Ai nhận ra khoảng cách đó sớm thì thiết kế hệ thống sống được trong giới hạn. Ai cố giả vờ khoảng cách không tồn tại thì 6 tháng sau sẽ ngồi đọc lại bài Zechner và gật đầu — nhưng lúc đó codebase đã thành đống phế liệu, và pin đã thay 3 lần.
