81 điểm bởi flowkater 2026-03-01 | 3 bình luận | Chia sẻ qua WhatsApp

Cuối tuần của người khai sinh vibe coding

  • Karpathy giao dự án cuối tuần cho agent. Chỉ đưa IP, tên người dùng, mật khẩu và mục tiêu, sau 30 phút mọi thứ đã hoàn tất
  • Cách làm là gần như không trực tiếp viết code trong 99% thời gian, mà ra lệnh và giám sát agent — “agentic engineering”
  • Nhưng dù 60% lập trình viên đang dùng AI, mức độ ủy quyền hoàn toàn vẫn chỉ ở 0-20% — nghịch lý ủy quyền. “Do you trust your agents?” Phần lớn vẫn là “không”

① Khả năng phân rã (Decomposition)

  • Nếu nói “hãy làm tính năng đăng ký thành viên”, đúng là sẽ ra một thứ gì đó. Vấn đề là xác suất cao nó không phải thứ tôi muốn
  • Từng có trải nghiệm giao màn hình AddPlan cho agent chỉ bằng cách ném PRD vào, rồi ping-pong hàng chục lượt, mất cả nửa ngày
  • Phỏng vấn bằng đối thoại Socratic với AI trong 5 phút → sắp xếp trước các edge case → rút còn 2-3 lượt chỉnh sửa
  • Dành thời gian suy nghĩ trước khi triển khai, 5 phút đó tiết kiệm được 4 giờ

② Thiết kế ngữ cảnh (Context Architecture)

  • Viết AGENTS.md tốt là điều quan trọng, nhưng nếu chính kiến trúc code được thiết kế tốt thì tốc độ agent nắm bắt ngữ cảnh sẽ khác hẳn
  • Agent từng loay hoay trong thư mục phẳng, nhưng sau khi tái cấu trúc thành thư mục theo từng feature thì cải thiện ngay lập tức
  • Armin Ronacher: “Công cụ phải được thiết kế để đề phòng việc con khỉ hỗn loạn LLM dùng sai hoàn toàn”

③ Định nghĩa hoàn thành (Definition of Done)

  • Đã để một dự án CLI chạy qua đêm, nhưng nó kết thúc sau 1 giờ — chỉ thiết lập định nghĩa kiểu, còn business logic thì là vỏ rỗng
  • Ở lần thử thứ hai, agent còn tự viết lại cả test theo hướng thuận tiện cho chính nó
  • “Hoàn thành” của agent khác với “hoàn thành” của tôi
  • Hệ thống DoD 7 bước của Elvis (PR→CI→3 code review→Telegram) có phần cực đoan, nhưng cho thấy đúng hướng

④ Phục hồi thất bại (Failure Recovery Loop)

  • Trong engine tái phân bổ, cùng một tham số lại có ngữ nghĩa khác nhau ở từng hàm → sửa A thì B hỏng, thành vòng lặp vô tận
  • Thử lại bằng cùng một prompt chẳng khác nào tiếp tục đập đầu vào tường theo đúng một hướng
  • Nếu phân loại thất bại thành 3 nhóm (thiếu ngữ cảnh, sai hướng, xung đột cấu trúc) thì cách xử lý sẽ rõ ràng
  • Guardrail “Must NOT Have” đã cắt được vòng lặp vô tận

⑤ Khả năng quan sát (Observability)

  • Giao liquidglass cho agent rồi nghĩ “trông kỳ kỳ... thôi cứ để đó” là quyết định đắt giá nhất
  • 20 file rối vào nhau đến mức không thể rollback
  • Sau đó áp dụng chiến lược tracer bullet + blueprint — với công nghệ dùng lần đầu thì không thể vẽ sẵn blueprint, nên tracer bullet giúp phác nhanh nó ra
  • Khả năng quan sát tạo ra niềm tin, và niềm tin mới khiến việc ủy quyền trở nên khả thi

⑥ Thiết kế bộ nhớ (Memory Architecture)

  • Nếu làm việc liên tục 3 ngày, mỗi sáng lại mất 15 phút chỉ để giải thích lại ngữ cảnh
  • Dùng Claude Code hooks để tự động trích xuất bộ nhớ khi kết thúc session → khôi phục ở session sau trong 5 giây
  • Nhóm của Boris Cherny check in CLAUDE.md vào git để cả team cùng chia sẻ
  • Cấu trúc để không phải ký ức cá nhân mà là ký ức của cả nhóm được truyền cho agent

⑦ Điều phối song song (Parallel Orchestration)

  • Boris Cherny vận hành đồng thời 10-15 session song song
  • Kinh nghiệm từng quản lý 6 squad khi còn là CTO lại giống đáng kinh ngạc với việc quản lý song song các agent
  • Không phải ADHD mà là multitasking có chủ đích = quản lý
  • Con người thì đặt câu hỏi, còn agent thường không hỏi mà tự phán đoán để làm tiếp — vì vậy thiết kế trước lại càng quan trọng

⑧ Thiết kế các tầng trừu tượng (Abstraction Layering)

  • Level 0 (tự code trực tiếp) → Level 1 (chỉ thị cho agent) → Level 2 (orchestrator) → Level 3 (thiết kế meta)
  • Từng biến một routine 20 phút mỗi ngày thành kỹ năng và rút xuống còn 2 phút
  • Compounding engineering — dự án không phải trò chơi cán đích, mà là trò chơi lãi kép. Các session trước tác động kiểu lãi kép lên các session sau

⑨ Gu thẩm mỹ (Taste)

  • Thiết kế do AI làm chỉ ở mức 60-70 điểm. Nhưng ngay khoảnh khắc thiết kế của Ellie xuất hiện, có cảm giác “à, cái này được”
  • Bài post tổng hợp thông tin do AI tạo ra thì 0 lượt thích, còn một dòng khoe ngẫu hứng viết tay lại đạt 30.000 lượt xem
  • “No Skill, No Taste” của KinglyCrow — LLM đã hạ thấp rào cản gia nhập về kỹ năng, nhưng rào cản thực sự là taste thì lại còn được khuếch đại
  • Chris Lattner: “Càng tự động hóa việc triển khai, tầm quan trọng của thiết kế, phán đoán và cảm quan lại càng tăng”
  • Trong thời đại 80% đang tràn ngập, sự khác biệt đến từ 20% còn lại

Kết

  • Cái đã kết thúc là việc gõ phím, không phải engineering
  • 9 điều này vốn đã là những phẩm chất mà một kỹ sư giỏi có từ trước cả thời AI
  • Đòn bẩy từ thiết kế tốt đã lớn hơn, nhưng thiệt hại từ thiết kế tệ cũng lớn hơn
  • Nhân vật chính của màn trình diễn đó không phải AI, mà là kỹ sư biết cách sử dụng AI thật giỏi

3 bình luận

 
armila 2026-03-03

Chỉ cần tuân thủ tốt SSoT thì có vẻ giảm được ảo giác khá nhiều. Cũng tiết kiệm token nữa.

 
tsboard 2026-03-03

"Thứ kết thúc chỉ là việc gõ phím, chứ không phải kỹ nghệ phần mềm"

Tôi đồng ý. haha

 
yangeok 2026-03-02

Cảm ơn bạn. Mình đã thấy hơi lo khi có cowork xuất hiện, chỉ cần bật PC lên là còn có thể đóng vai trò như một máy chủ, nhưng giờ cũng yên tâm hơn phần nào và trong đầu đã hình dung được mọi thứ sẽ thay đổi như thế nào trong tương lai haha