Khóa Cơ bản · Bài 1/13 · Chặng 1 · Hiểu đúng Vibe Coding: bạn làm chủ, AI làm thuê

Vibe Coding là gì, và không là gì

Mới bắt đầu 8 phút đọc

Hiểu đúng Vibe Coding, phân biệt với AI hỗ trợ code và AI Agent, biết con người phải giữ phần việc nào.

Bạn sẽ làm được

  • Giải thích Vibe Coding bằng lời của bạn, không thổi phồng.
  • Phân biệt 4 cách dùng AI khi làm phần mềm.
  • Nắm vòng lặp mô tả, thực thi, kiểm chứng, phản hồi.
  • Biết vì sao "AI báo xong" chưa phải là xong.
Nội dung bài học

Vấn đề thật

Bạn có ý tưởng: một trang giới thiệu dịch vụ, một form đặt lịch, một bảng tính giá cho xưởng. Bạn nghe nói “giờ không cần biết code, cứ bảo AI làm”. Bạn thử. AI ra một giao diện trông rất ổn. Rồi bạn sửa một chữ, nút bấm hỏng. Bạn nhờ AI sửa, nó sửa chỗ này và làm vỡ chỗ khác. Sau hai buổi tối, bạn có một mớ file không dám động vào.

Vấn đề không nằm ở AI kém. Vấn đề là bạn đang dùng AI như máy bán hàng tự động: bỏ yêu cầu vào, chờ sản phẩm rơi ra. Bài này giúp bạn đổi cách nhìn đó.

Định nghĩa

Vibe Coding là cách làm phần mềm trong đó bạn chủ yếu diễn đạt ý định, mục tiêu và yêu cầu bằng ngôn ngữ tự nhiên (hoặc hình ảnh, bản vẽ), để AI tạo, sửa và hoàn thiện phần mềm qua nhiều vòng phản hồi. Mức độ bạn trực tiếp viết code tùy người và tùy dự án.

Ba chữ cần nhớ: ý định (bạn quyết định làm gì), vòng lặp (không có chuyện một lần là xong), tùy dự án (trang giới thiệu khác xa app có thanh toán).

Thuật ngữ này từ đâu ra

Andrej Karpathy, một nhà nghiên cứu AI nổi tiếng, dùng cụm “vibe coding” vào đầu tháng 2/2025 để tả kiểu làm phần mềm “cứ theo cảm giác”, nói với AI và chấp nhận code nó viết mà không đọc kỹ. Cụm từ lan rất nhanh và được Collins Dictionary chọn là Từ của năm 2025 (xem nguồn cuối bài).

Lưu ý: ý gốc của Karpathy là cách làm cho dự án chơi, dự án cuối tuần. Khi bạn làm thứ người khác sẽ dùng thật, bạn cần thêm kỷ luật. Bụi Code dạy chính phần kỷ luật đó.

Bốn cách dùng AI khi làm phần mềm

Cách dùngBạn làm gìAI làm gìVí dụ
Tra cứuHỏi, tự viết codeGiải thích, gợi ý đoạn ngắn“Hàm này trong Excel nghĩa là gì?”
AI hỗ trợ codeViết code là chínhGợi ý, hoàn thành dòng, sửa lỗi nhỏGợi ý code trong trình soạn thảo
Vibe CodingMô tả, xem, phản hồiViết phần lớn code“Làm trang giới thiệu tiệm mộc, có bảng giá”
AI AgentGiao nhiệm vụ, duyệt kết quảTự lên kế hoạch, đọc file, chạy lệnh, sửa nhiều bướcAgent tự tạo dự án, chạy thử, sửa lỗi build

Vibe Coding và AI Agent không phải một. Vibe Coding là cách bạn làm việc. AI Agent là loại công cụ có thể tự thực hiện nhiều bước trong máy hoặc thư mục dự án.

Vì sao agent làm Vibe Coding dễ hơn hẳn

Chatbot trong khung chatAI Agent trong thư mục dự án
Không thấy thư mục dự án của bạnĐọc được cả cây thư mục, hiểu file nào gọi file nào
Bạn tự chép code vào fileTự tạo file mới, sửa file cũ
Bạn tự chạy lệnh, gặp lỗi đỏ lại chép ngược cho AITự chạy lệnh, thấy lỗi, sửa, chạy lại
Dễ đứt mạch vì chép qua chép lạiBạn tập trung vào xem kết quả và phản hồi

Bạn vẫn vibe code được bằng chatbot thường cho dự án 1–2 file. Dự án nhiều file thì agent đỡ hẳn việc chép tay và ít lỗi “thiếu ngữ cảnh” hơn. Đổi lại, agent sửa được nhiều file một lúc, nên bắt buộc phải có checkpoint (bài Git).

Vòng lặp cốt lõi

1. MÔ TẢ      Bạn nói rõ: làm gì, cho ai, giới hạn gì, thế nào là xong
2. THỰC THI   AI lập kế hoạch rồi làm (hoặc bạn bảo nó lập kế hoạch trước)
3. KIỂM CHỨNG Bạn chạy thử, bấm thử, xem trên điện thoại, đối chiếu tiêu chí
4. PHẢN HỒI   Bạn báo đúng chỗ sai, kèm bằng chứng. Quay lại bước 1 hoặc 2

Ví dụ một vòng: trang quán cà phê

Mô tả (yếu): “Làm trang web cho quán cà phê của tôi, có menu và nút đặt bàn trực quan.” AI phải tự đoán quán bán gì, khách là ai, “trực quan” là sao.

Mô tả (tốt): “Trang một trang cho quán cà phê nhỏ ở Đà Nẵng, khách chủ yếu xem trên điện thoại. Có menu 12 món chia 3 nhóm, mỗi món có tên và giá VNĐ. Nút ‘Đặt bàn’ mở Zalo số [SỐ]. Không cần giỏ hàng, không đăng nhập. Xong khi: xem trên điện thoại không cuộn ngang, giá hiển thị dạng 35.000đ, bấm nút mở đúng Zalo.”

Kiểm chứng: mở trên điện thoại, bấm thử, đối chiếu từng điều kiện “Xong khi”.

Phản hồi chính xác: “Phần menu chưa hiển thị giá rõ ràng: giá đang là 35000, cần định dạng 35.000đ và in đậm. Chỉ sửa khối menu, không đụng phần khác.”

Người mới hay bỏ bước 3. Họ nhìn giao diện thấy đẹp, coi là xong. Phần lớn rắc rối về sau bắt đầu từ đây.

Ai chịu trách nhiệm phần nào

ViệcBạnAI
Quyết định làm gì, cho aiChịu trách nhiệmGợi ý
Định nghĩa “thế nào là xong”Chịu trách nhiệmGiúp viết rõ
Viết code, dựng giao diệnDuyệtLàm chính
Chạy thử, kiểm traChịu trách nhiệmViết test, tự kiểm một phần
Bảo mật, dữ liệu người dùngChịu trách nhiệmCảnh báo, gợi ý
Quyết định phát hànhChịu trách nhiệmKhông

Nguyên tắc: AI làm, bạn chịu. Khách hàng không quan tâm lỗi do ai viết.

Vì sao “AI báo xong” không phải bằng chứng

AI rất hay nói “Tôi đã hoàn thành, mọi thứ hoạt động tốt” trong khi:

  • Nó chưa chạy thử lần nào.
  • Nó sửa đúng file nhưng quên file khác dùng chung.
  • Nó “sửa” test để test qua, thay vì sửa lỗi thật.
  • Nó tưởng tượng ra một thư viện, một hàm không tồn tại.

Bằng chứng thật là: bạn tự bấm và thấy chạy; ảnh chụp màn hình; kết quả lệnh build không lỗi; checklist nghiệm thu đã tick từng dòng. Tập thói quen hỏi lại AI: “Bạn đã chạy thử chưa? Cho tôi xem lệnh và kết quả.”

Prototype, dùng được, sẵn sàng phát hành

MứcNghĩa làVí dụ
PrototypeChạy được cho bạn xem ý tưởngTrang demo trên máy bạn
Dùng đượcNgười quen dùng được, lỗi nhỏ chấp nhậnForm nội bộ cho 5 đồng nghiệp
Sẵn sàng phát hànhNgười lạ dùng, có dữ liệu thật, phải an toànTrang nhận đơn hàng có thông tin khách

Vibe Coding đưa bạn tới prototype rất nhanh. Từ prototype lên sẵn sàng phát hành mới là phần tốn công: kiểm thử, bảo mật, xử lý lỗi, sao lưu. Đừng nhầm hai mức này.

Giới hạn bạn phải biết

  • Lỗi logic: code chạy nhưng tính sai (ví dụ giảm giá áp hai lần).
  • Bảo mật: AI có thể để lộ khóa API, quên kiểm tra quyền truy cập.
  • Bảo trì: code AI viết nhanh nhưng có thể rối, lần sau sửa khó.
  • Ngữ cảnh: AI chỉ biết những gì bạn đưa cho nó; cuộc trò chuyện dài thì nó “quên” phần đầu.
  • Test thiếu: AI không tự biết bạn cần kiểm những trường hợp nào.

Câu cần nhớ: Vibe Coding không loại bỏ việc hiểu sản phẩm. Nó chuyển phần việc của bạn từ gõ code sang mô tả đúng và kiểm tra đúng.

Lỗi hay gặp

  • Gửi một câu prompt cho cả app. “Làm cho tôi app quản lý bán hàng” sẽ ra một thứ trông giống app, không phải app của bạn. Chia nhỏ (xem bài Giao việc cho AI).
  • Không lưu bản ổn định. AI sửa hỏng, bạn không có đường lui. Học Git hoặc ít nhất sao lưu thư mục (xem bài Git cho người không code).
  • Bắt đầu bằng dự án khó. Đăng nhập, thanh toán, dữ liệu cá nhân để sau. Bắt đầu với trang tĩnh.

Việc làm ngay

Lấy một ý tưởng của bạn và trả lời 4 câu, mỗi câu 1–2 dòng:

  1. Ai dùng nó, và họ đang gặp khó gì?
  2. Nó thuộc mức nào: prototype, dùng được, hay sẵn sàng phát hành?
  3. Có dữ liệu cá nhân, tiền, hoặc đăng nhập không? (Nếu có: chưa phải dự án đầu tiên.)
  4. Bạn sẽ kiểm tra thế nào để biết nó chạy đúng?

Giữ câu trả lời. Bài 3 sẽ biến chúng thành Project Brief.

Tóm tắt

  • Vibe Coding: bạn mô tả, AI viết, bạn kiểm. Lặp lại.
  • Khác AI Agent: một bên là cách làm, một bên là loại công cụ.
  • “AI báo xong” không phải bằng chứng. Tự chạy, tự bấm, đối chiếu tiêu chí.
  • Prototype nhanh, sản phẩm thật tốn công. Biết mình đang ở mức nào.
Kiểm tra cuối bài

Trả lời đúng 3 câu để mở Bài 2

Sai thì đọc giải thích và làm lại, không giới hạn số lần.

Câu 1. Câu nào mô tả đúng Vibe Coding?
Câu 2. Vibe Coding và AI Agent khác nhau thế nào?
Câu 3. AI báo 'Đã hoàn thành, mọi thứ hoạt động tốt'. Bạn làm gì?

Tiến độ lưu trên trình duyệt này. Đổi máy hoặc xóa dữ liệu trình duyệt sẽ mất tiến độ cho tới khi có tài khoản.

Bài này có giúp ích cho bạn không?

Cùng ngẫm một câu

Bạn định dùng Vibe Coding làm sản phẩm gì đầu tiên? Viết 2 dòng: ai dùng nó, và bạn sẽ kiểm tra thế nào để biết nó chạy đúng.

Tự trả lời vào NOTES.md của dự án bạn — đó là cách biến bài đọc thành việc làm thật.

Mời Bụi Code ly cà phê

Bụi Code miễn phí cho mọi người. AI viết code, còn người viết bài thì chạy bằng cà phê. Nếu bài học giúp được bạn, mời mình một ly nhé.

Kênh nhận ủng hộ đang được cập nhật. Muốn ủng hộ ngay, nhắn mình qua email phungnb@gmail.com.

Ủng hộ hoàn toàn tự nguyện. Chia sẻ Bụi Code cho một người đang cần cũng quý như một ly cà phê.