Vibe Code
Giáo trình/Phụ lục

Biên bản review toàn giáo trình

Chuyên gia review soi lại cả 43 bài: cái gì đã kiểm chứng, cái gì chưa, chỗ nào có thể sai, và ba điều người đọc nên nghi ngờ.

Tra cứu20 phút đọc

Bài này là kết luận nghiệm thu của giáo trình, viết theo đúng chuẩn mà bài test yêu cầu: nói rõ đã kiểm gì, chưa kiểm gì, và rủi ro còn lại.

Phạm vi đã bao phủ

43 bài, bảy cấp, bám đúng tám lớp của sơ đồ Vibe Stack:

Lớp trong sơ đồ Bài phụ trách Mức độ
1 · Truy cập (tên miền, DNS, HTTPS, CDN, WAF) Tên miền & DNS Đủ cho app tự vận hành
2 · Hạ tầng (Pages, Workers) Pages, Workers Đủ
3 · Lưu trữ (D1, DO, R2, KV) D1, KV & R2, Durable Objects Đủ
4 · Phát triển (Git, PR, test, preview) Git → Actions, Quy trình Đủ
5 · Phân vai AI / chuyên gia Phân vai, Ra đề, Claude Code nâng cao Đủ
6 · Vận hành & an toàn Đăng nhập, Bảo mật, Quan sát, Sao lưu Đủ
7 · Chất lượng (Web Vitals, SEO, analytics, dễ truy cập) Tốc độ web, Chất lượng Đủ
8 · Phản hồi thật Vòng phản hồi Đủ

Kết luận phạm vi: ĐẠT. Không lớp nào bị bỏ trống.

Cái gì đã kiểm chứng bằng thực tế

Những phần dưới đây đến từ app đang chạy thật, có số đo:

  • Quy luật "D1 chậm theo byte" (~100 KB/giây) — đo trên app chấm công, case 101 MB → 18,9 MB, 90 giây → 2 giây.
  • Sự cố 429 do đếm theo IP — xảy ra hai lần, trên mạng 4G Việt Nam.
  • ctx.waitUntil giữ D1 gây treo app — sự cố một buổi chiều.
  • Binding rate limit đếm không chắc chắn — đo 25/09/2026, cùng trần, lần chặn đúng lần lọt hết 10/10.
  • Bẫy requestAnimationFrame không chạy khi tab ẩn — đo được app dựng ở giây thứ 7, Speed Index 8,6 giây.
  • Bẫy dấu tiếng Việt trên dòng lệnh Windows — tái hiện được, có dấu hiệu nhận ra rõ ràng.
  • Bẫy CI ghi đè binding — gặp khi đưa Worker đang chạy lên GitHub.
  • Lỗi đường ghi lọt vì tài khoản test chỉ-xem — lên tới bản thật.

Các bẫy môi trường (Node 24 không spawn .cmd, Smart App Control chặn wrangler, CRLF) đều từ máy Windows 11 thật, không chép từ tài liệu.

Cái gì CHƯA kiểm chứng — đọc kỹ mục này

Đây là mục quan trọng nhất của biên bản.

1. Toàn bộ giáo trình viết từ MỘT bối cảnh. App nội bộ cho doanh nghiệp vừa và nhỏ tại Việt Nam, trên Cloudflare, do một người làm và vận hành. Những thứ sau không được kiểm chứng: - App có hàng chục nghìn người dùng đồng thời. - Nhóm nhiều người cùng sửa một mã nguồn. - Sản phẩm bán theo thuê bao cho nhiều khách. - App phục vụ người dùng ngoài Việt Nam.

2. Các bước trên macOS và Linux chưa chạy thử. Lệnh tương đương thì đúng, nhưng các bẫy môi trường ở bài cài máy là bẫy của Windows.

3. Con số thời gian là ước lượng, không phải khảo sát. "20 phút có trang web", "3–7 ngày cho app có cơ sở dữ liệu", "90 ngày" — đều từ trải nghiệm của tác giả và người được kèm, không phải thống kê ngành. Hãy coi là thứ tự độ lớn.

4. Giá và hạn mức sẽ cũ đi. Cloudflare đổi giá và hạn mức vài lần mỗi năm; tên mô hình AI đổi còn nhanh hơn. Mọi con số về giá trong giáo trình phải kiểm lại trên trang chính thức trước khi dùng để báo giá.

5. Phần pháp lý và tuân thủ gần như trống. Giáo trình không nói về nghĩa vụ khi giữ dữ liệu cá nhân, thời hạn lưu trữ, quyền xóa của người dùng, hay hợp đồng ở mức pháp lý. Nếu app của bạn giữ dữ liệu cá nhân của nhiều người, đây là ô vàng thật sự và cần người có nghề.

6. Phần trợ năng (accessibility) chỉ ở mức tối thiểu. Bài Chất lượng phủ bốn việc cơ bản (alt, tương phản, bàn phím, nhãn ô nhập) — nhưng không có hướng dẫn cho trình đọc màn hình hay chuẩn WCAG đầy đủ.

Ba điều người đọc nên nghi ngờ

Nghi ngờ 1 — "Vibe Code nhanh hơn 10 lần." Đúng với bản đầu tiên. Không đúng với toàn bộ vòng đời. Thời gian tiết kiệm ở khâu viết mã sẽ bị tiêu bớt ở khâu kiểm chứng, test, và xử lý những lỗi mà bạn không hiểu vì không phải bạn viết. Con số thật hơn: bản nháp nhanh 5–10 lần, sản phẩm giao được nhanh 2–3 lần.

Nghi ngờ 2 — "Cloudflare là lựa chọn đúng cho mọi việc." Giáo trình chọn một bộ công cụ rồi dạy sâu, và điều đó có cái giá: bạn sẽ không biết lựa chọn khác tốt hơn ở đâu. Cloudflare không phù hợp khi: cần chạy tác vụ dài quá vài chục giây, cần ghi file lên ổ đĩa, cần cơ sở dữ liệu quan hệ lớn với truy vấn phức tạp, hoặc khi khách yêu cầu dữ liệu đặt tại Việt Nam vì lý do pháp lý.

Nghi ngờ 3 — "Làm theo đủ các luật là an toàn." Các bảng kiểm trong giáo trình bắt lỗi đã biết. Chúng không bắt được lỗi nghiệp vụ im lặng — tính sai tiền, sai múi giờ, hiểu sai yêu cầu. Loại đó chỉ phát hiện được bằng đối chiếu tay với dữ liệu thật, và giáo trình nhắc điều này ở năm bài khác nhau vì nó là rủi ro lớn nhất còn lại.

Điều giáo trình này cố tình KHÔNG dạychuyên gia insight & case thực tế

Ba thứ bị loại bỏ có chủ ý, nói ra để bạn biết mà tự tìm nếu cần:

1. Framework giao diện (React, Vue, Svelte). Giáo trình dùng HTML/CSS/JS thuần và một file. Lý do: với app doanh nghiệp vừa và nhỏ, framework thêm một lớp bạn phải hiểu để gỡ lỗi, trong khi lợi ích chỉ rõ khi app lớn và có nhiều người cùng làm. Khi app của bạn vượt ~3.000 dòng hoặc có người thứ hai tham gia, hãy học framework — lúc đó bạn đã đủ nền để chọn.

2. Kiểm thử tự động sâu (unit test, integration test). Giáo trình chỉ dạy test theo kịch bản thật qua HTTP. Lý do: với mã do AI sinh và thay đổi nhanh, test đơn vị thường lỗi thời trước khi phát huy tác dụng. Test qua HTTP thì bền hơn vì nó kiểm hành vi, không kiểm cấu trúc bên trong.

3. So sánh ngang với các nền tảng khác. Lý do: so sánh nhanh lạc hậu, và nó làm loãng. Người học cần một con đường đi hết được, không cần một bản khảo sát.

Cả ba quyết định này đều có thể sai với bối cảnh của bạn. Biết là chúng được quyết định có chủ ý thì bạn tự điều chỉnh được.

Chất lượng từng phần — đánh giá thẳng

Phần Đánh giá Ghi chú
Cấp 0–1 Mạnh Có việc làm ngay, mốc kiểm được, không lý thuyết thừa
Cấp 2 (Git) Mạnh Cố tình hẹp (7 lệnh) và đó là lựa chọn đúng
Cấp 3 Mạnh nhất Đây là phần có nhiều kinh nghiệm trả giá nhất
Cấp 4 Khá Durable Objects và AI là hai bài dễ bị dùng sai nhất; cả hai đều có mục "khi nào KHÔNG cần"
Cấp 5 Mạnh Phần phân biệt người làm được với người không
Cấp 6 Khá Bài Từ app thành sản phẩm phụ thuộc nhiều vào bối cảnh thị trường Việt Nam
Phụ lục Mạnh 40 bẫy và 8 case là phần người đọc sẽ quay lại nhiều nhất

Điểm yếu rõ nhất: Cấp 6 trộn hai loại nội dung khác hẳn nhau — kỹ thuật (Claude Code nâng cao, biến kinh nghiệm thành luật) và kinh doanh (định giá, hợp đồng, phản hồi). Người đọc chỉ quan tâm một trong hai sẽ thấy nửa còn lại lạc đề. Chấp nhận có ý thức, vì tách thành hai giáo trình thì người học dễ bỏ qua hẳn phần kinh doanh — mà đó lại là phần quyết định có sống được bằng nghề không.

Kết luận nghiệm thu

ĐẠT KÈM RỦI RO ĐÃ BIẾT.

  • Đạt ở phạm vi (đủ bảy lớp), ở độ sâu kỹ thuật, và ở tính kiểm chứng được (mỗi bài có bài tập có tiêu chí đo được).
  • Rủi ro đã biết: viết từ một bối cảnh duy nhất; con số thời gian là ước lượng; phần pháp lý và trợ năng chưa phủ; giá và hạn mức sẽ cũ đi.
  • Chưa test: macOS/Linux; quy mô lớn; làm việc nhóm.

Khuyến nghị cho người đọc:

  1. Đừng đọc hết rồi mới làm. Làm theo lộ trình, mỗi tuần một thứ chạy được.
  2. Khi giáo trình lệch với trang chính thức của nhà cung cấp, tin trang chính thức.
  3. Mỗi lần bạn mất hơn 30 phút cho một lỗi, hãy ghi nó vào CLAUDE.md của chính bạn. Sau một năm, bộ luật riêng của bạn sẽ đáng giá hơn giáo trình này — vì nó khớp đúng với bối cảnh của bạn.
Lời cuối từ người không biết codengười dùng bình thường góp ý

Tôi là người được nhắc tới trong các khung "góc đời thường" suốt giáo trình này. Tôi muốn nói một điều với người đang phân vân có nên bắt đầu không.

Thứ khó nhất không phải là kỹ thuật. AI lo phần đó thật. Thứ khó nhất là chia nhỏ việc ra, và không bỏ cuộc ở tuần thứ năm khi lần đầu gặp một lỗi mà nhìn vào không thấy gì sai cả.

Và thứ khiến tôi đi tiếp không phải ý chí. Là hôm tôi gửi link cho vợ và vợ nhắn lại "ơ, cái này của anh làm á?". Rồi hôm tôi thấy app của mình được dùng thật trong công ty.

Nên lời khuyên của tôi, từ người ở phía bên kia: làm cho có một thứ gửi được cho ai đó, sớm nhất có thể. Đừng học hai tháng rồi mới cho ai xem. Cái link đó mới là thứ kéo bạn đi hết chặng đường.

Chốt review của chính biên bản nàychuyên gia review
  • Đã nói rõ: phạm vi, phần kiểm chứng được, phần chưa kiểm, ba điều nên nghi ngờ, ba thứ cố tình không dạy, điểm yếu rõ nhất.
  • Thiên lệch cần nhận: biên bản này do chính người viết giáo trình soạn, nên nó không thay được đánh giá của người ngoài. Cách kiểm thật duy nhất là bạn làm theo và tự thấy chỗ nào thiếu.
  • Nếu bạn tìm ra chỗ sai: đó là đóng góp giá trị nhất. Ghi lại theo khuôn ở Biến kinh nghiệm thành luật — nó thành luật của bạn, và của người sau.