Bài 1: Babel
Bài 1 (Babel) lập luận ở tầng hệ thống nhiều người: giới hạn của large software project chưa bao giờ là tốc độ viết code, mà là khả năng đồng bộ mental model giữa người với người.
Agent xoá friction, mà một phần friction đó là cơ chế đồng bộ hiểu biết. Kết quả: construction tiếp tục nhưng shared understanding sụp âm thầm, không có dấu hiệu thất bại ngay lập tức nên không ai nhận ra.
Bài 2: antirez
Bài 2 (antirez) lập luận ở tầng cá nhân: đọc code từng dòng giờ là tradeoff dở, nên dồn thời gian vào design, QA, mental model ở tầng ý tưởng.
Đề xuất viết DESIGN.md mô tả data structure bằng ngôn ngữ người, thay vì review code.
Phân tích ban đầu (surface)
Antirez đang đề xuất đúng liều thuốc cho căn bệnh Babel nhưng chỉ áp dụng được nếu bạn đã là antirez.
“Controlling the ideas” giả định bạn đã có ideas để control. Và chính ổng tự mâu thuẫn khi nói young programmers vẫn cần tự viết interpreter, hash table để build mental model trước, tức là thừa nhận cái năng lực đó không phải mặc định mà là đặc quyền của người đã đọc rất nhiều code rồi.
Ba điểm đào sâu hơn
1. DESIGN.md không tạo được long-term memory
Não người cần retrieval practice, spaced repetition, và encoding effort để consolidate bộ nhớ dài hạn.
Đọc tài liệu là passive intake, tạo fluency illusion: bạn hiểu lúc đọc nhưng không reconstruct được sau đó. Friction như debug, bị review reject, tranh luận chính là desirable difficulty, chậm vì đang tạo durable memory trace.
Antirez đề xuất thay cơ chế encoding bằng cơ chế reference rồi giả định output giống nhau, giống nói đọc sách anatomy thay vì tập gym.
2. Drift giữa document và actual logic là trilemma không có exit
Viết quá general thì không biết invariant nào thực sự enforced, invariant nào chỉ “mọi người ngầm hiểu.”
Viết quá detail thì phải maintain song song với real code, double the drift surface.
Ai maintain nó? Nếu agent thì code vẫn là source of truth, doc chỉ là cache layer có thể stale. Nếu người thì bạn vừa tạo thêm coordination cost mới để giải quyết coordination cost cũ.
Luận điểm của antirez ngầm giả định ổng là single author, không đúng cho hầu hết team.
3. Level không đứng yên
“Control the ideas” giả định level đủ cao so với domain hiện tại, nhưng level là relative to complexity.
Khi antirez implement inference cho DeepSeek v4, ổng vẫn phải đọc spec, đọc code người khác, tìm bug trong attention implementation. Sau khi trả đủ học phí mới đủ tư cách bảo “giờ chỉ cần design.”
Công nghệ xoay, domain mới xuất hiện, bạn lại quay về giai đoạn phải đọc. “Không cần đọc code” là đặc quyền tạm thời của người vừa master xong một domain cụ thể, và nó expire khi domain shift.
Kết luận
Antirez đúng rằng ở một thời điểm cụ thể, với một cá nhân cụ thể, dời effort lên tầng design là tối ưu. Nhưng ổng biến một chiến thuật cá nhân có thời hạn sử dụng thành lời khuyên phổ quát.
Ba điểm trên đều chỉ về cùng một lỗ hổng: ổng treat “đã có mental model” như trạng thái mặc định, trong khi nó là trạng thái đắt đỏ, dễ hao mòn, và không transfer được bằng tài liệu.