Trung cấpCase StudyClaude CodeCộng đồng

Vibe Coding Thực Chiến: Bài Học Từ Ứng Dụng Du Lịch Cho Vợ

Nghe bài viết
00:00

Điểm nổi bật

Nhấn để đến mục tương ứng

  1. 1 Railway — cloud platform đơn giản, giá $1/tháng cho dự án nhỏ Tính năng: Một trong những điều thú vị nhất trong thí nghiệm này là Claude Code tự đề xuất toàn bộ tech stack: React + Vite + Tailwind CSS — hiện đại, nhẹ, dễ deploy Backend:.
  2. 2 Side projects cá nhân không cần production quality cao Prototype để validate ý tưởng nhanh Internal tools cho team nhỏ Automation scripts một lần dùng Khi nào KHÔNG nên vibe code thuần túy?
  3. 3 LLM mắc lỗi, rơi vào vòng lặp, và không có gì cô ấy thử có thể phá vỡ nó." Vợ Lawson không phải developer. Phần thú vị nhất — và đau lòng nhất — của bài viết là đoạn Lawson mô tả vợ anh thử dùng Bolt.new để tự build app:.
  4. 4 Anh quan sát đồng nghiệp trẻ hơn — "AI-native" — làm việc hoàn toàn khác, thoải mái giao phó nhiều hơn cho AI. Anh giữ khoảng cách, nhưng không thể không nhìn nhận: Là developer, anh lo ngại GenAI đang làm giảm giá trị nghề nghiệp.
  5. 5 Thay vì viết từng dòng code thủ công, anh giao toàn bộ cho Claude Code và chỉ "điều phối" từ xa. Cuối tháng 12/2025, Nolan Lawson — một web developer kỳ cựu — quyết định thử nghiệm điều mà cộng đồng công nghệ đang xôn xao:.
macbook pro displaying computer icons

Khi Developer Dùng AI Để Code Quà Cho Vợ

Cuối tháng 12/2025, Nolan Lawson — một web developer kỳ cựu — quyết định thử nghiệm điều mà cộng đồng công nghệ đang xôn xao: vibe coding. Thay vì viết từng dòng code thủ công, anh giao toàn bộ cho Claude Code và chỉ "điều phối" từ xa. Mục tiêu khiêm tốn: xây một ứng dụng lên lịch du lịch cho vợ.

Kết quả? Một PWA (Progressive Web App) hoàn chỉnh, chạy được trên cả desktop lẫn mobile, có tài khoản người dùng, lưu trữ lịch trình, và chi phí hosting chỉ $1/tháng. Tổng thời gian: khoảng 5 giờ tay nghề thực sự, cộng với $20 cho Claude Pro. Nghe như câu chuyện thành công hoàn hảo — nhưng Lawson không để đơn giản như vậy.

Stack Kỹ Thuật Được AI Lựa Chọn

Một trong những điều thú vị nhất trong thí nghiệm này là Claude Code tự đề xuất toàn bộ tech stack:

  • Frontend: React + Vite + Tailwind CSS — hiện đại, nhẹ, dễ deploy
  • Backend: PocketBase — database SQLite mã nguồn mở, chạy như một file duy nhất
  • Hosting: Railway — cloud platform đơn giản, giá $1/tháng cho dự án nhỏ
  • Tính năng: Tài khoản người dùng với admin control, offline capability, PWA

Lawson thừa nhận: anh không cần đọc docs của Railway hay PocketBase. Claude Code tự biết cách setup, tự decipher interface, và tự viết code kết nối mọi thứ lại với nhau. Với một developer có kinh nghiệm, đây là năng suất đáng kinh ngạc — từ ý tưởng đến ứng dụng chạy được trong một buổi chiều.

Ba Vấn Đề Mà Claude Không Tự Giải Quyết Được

Tuy nhiên, bức tranh không hoàn toàn màu hồng. Lawson ghi lại ba nhóm vấn đề nghiêm trọng mà anh phải tự xử lý:

1. Accessibility — LLM Viết Code Kém Tiếp Cận

Claude Code tạo ra HTML với hàng tá thẻ <div> gắn onClick handlers thay vì dùng <button> hay <a> đúng ngữ nghĩa. aria-label bị đặt sai, cấu trúc DOM không thân thiện với screen reader. Đây không phải lỗi nhỏ — đây là pattern hệ thống: LLM học từ code trên internet, mà phần lớn code trên internet viết tệ về accessibility.

Lawson phải tự kiểm tra và sửa từng component. Với người không hiểu accessibility, những lỗi này sẽ bị bỏ qua hoàn toàn.

2. Performance — React Re-render Gây Lag

Ứng dụng bị lag rõ ràng khi gõ và click. Nguyên nhân: React component re-render không cần thiết. Để fix, Lawson phải mở DevTools, profile performance, và thêm useMemo/useCallback đúng chỗ. Đây là kỹ năng thuần túy developer — không phải thứ mà người dùng thường có.

3. Token Limits — Bẫy Của "Plan Mode"

Claude API có rate limits. Khi Lawson muốn dùng "plan mode" — yêu cầu Claude phân tích toàn bộ codebase trước khi làm gì — anh nhanh chóng chạm giới hạn token. Kết quả: anh phải bỏ qua bước planning quan trọng này, chấp nhận rủi ro Claude làm việc theo kiểu "mù".

Thí Nghiệm Với Vợ: Vibe Coding Không Phải Cho Mọi Người

Phần thú vị nhất — và đau lòng nhất — của bài viết là đoạn Lawson mô tả vợ anh thử dùng Bolt.new để tự build app:

"Cô ấy nhanh chóng nản lòng. LLM mắc lỗi, rơi vào vòng lặp, và không có gì cô ấy thử có thể phá vỡ nó."

Vợ Lawson không phải developer. Khi AI gặp lỗi, cô không biết cách diễn đạt vấn đề theo cách mà LLM hiểu được. Cô thiếu "ngôn ngữ debugging" — không phải code, mà là khả năng mô tả lỗi đủ chính xác để AI tìm đúng hướng sửa.

Đây là ranh giới quan trọng: vibe coding tăng tốc đáng kể cho developer có kinh nghiệm, nhưng chưa thể thay thế developer trong tay người không có background kỹ thuật.

Ứng Dụng Vibe-Coded Có Thể Đánh Bại App Thương Mại Không?

Lawson đặt câu hỏi thú vị: tại sao lại dùng ứng dụng du lịch thương mại với đầy tính năng không cần thiết, quảng cáo và data tracking — khi có thể build một thứ custom, nhẹ, đúng nhu cầu?

Đối với single-user apps — ứng dụng chỉ phục vụ một người hoặc một gia đình nhỏ — vibe coding có tỷ lệ thành công cao. Không cần scale, không cần onboarding phức tạp, không cần support team. Chỉ cần nó chạy đúng cho đúng người.

Ứng dụng du lịch của Lawson đáp ứng chính xác nhu cầu vợ anh: save itineraries, view trên mobile, không ads, không tracking. App thương mại nào làm tốt hơn? Có lẽ không.

Điều Lawson Không Nói Thẳng Nhưng Ngụ Ý Rõ

Lawson thừa nhận sự mâu thuẫn nội tâm của mình. Là developer, anh lo ngại GenAI đang làm giảm giá trị nghề nghiệp. Nhưng anh cũng thấy rõ sức mạnh của công cụ này cho hobby projects.

Anh quan sát đồng nghiệp trẻ hơn — "AI-native" — làm việc hoàn toàn khác, thoải mái giao phó nhiều hơn cho AI. Anh giữ khoảng cách, nhưng không thể không nhìn nhận: người biết cách làm việc với AI đang có lợi thế thực sự.

Điểm quan trọng nhất từ case study này: vibe coding không xóa bỏ nhu cầu hiểu kỹ thuật — nó khuếch đại người đã có nền tảng. Developer giỏi dùng Claude Code trở nên giỏi hơn nhiều lần. Người không có nền tảng vẫn gặp tường kính.

Bài Học Thực Tế Cho Developer Việt Nam

Khi nào nên vibe code?

  • Side projects cá nhân không cần production quality cao
  • Prototype để validate ý tưởng nhanh
  • Internal tools cho team nhỏ
  • Automation scripts một lần dùng

Khi nào KHÔNG nên vibe code thuần túy?

  • Ứng dụng cho nhiều người dùng với yêu cầu accessibility
  • Hệ thống cần performance critical
  • Code base sẽ được maintain dài hạn bởi nhiều người
  • Dự án yêu cầu security audit nghiêm túc

Workflow được đề xuất

Thay vì "vibe coding hoàn toàn", Lawson ngụ ý một workflow hybrid hiệu quả hơn:

  1. Dùng Claude Code để generate scaffolding và boilerplate nhanh
  2. Developer review kiến trúc tổng thể và approve
  3. Để Claude viết implementation chi tiết
  4. Developer test, profile, và fix các vấn đề về performance/accessibility
  5. Dùng git commits làm checkpoint — dễ rollback khi AI làm hỏng

Tóm Lại

Case study của Nolan Lawson là một trong những bài viết trung thực nhất về vibe coding — không hype quá, không dismiss quá. Ứng dụng du lịch của anh hoạt động tốt, vợ anh hài lòng, và anh tiết kiệm nhiều giờ code thủ công. Nhưng anh cũng rõ ràng: cần background kỹ thuật để giải quyết các vấn đề mà AI tạo ra.

Vibe coding năm 2026 không phải phép màu — nó là bội số năng suất cho người đã có kỹ năng. Với developer có kinh nghiệm, $20 Claude Pro và 5 giờ có thể tạo ra thứ gì đó thực sự hữu ích. Đó là giá trị thực, ngay bây giờ.

Muốn tìm hiểu thêm về cách làm việc hiệu quả với Claude Code? Xem thêm Claude Code toàn tập — Lập trình với AI agent trong terminalAutonomous Coding Agent — AI tự viết code từ spec. Nếu bạn lo ngại vấn đề bảo mật khi giao quyền cho AI, đừng bỏ qua Bảo mật và quyền riêng tư khi dùng Claude.


Nguồn tham khảo

Bài viết được tổng hợp và phân tích từ: Nolan Lawson, "An Experiment in Vibe Coding", đăng ngày 28/12/2025 tại nolanlawson.com. Nolan Lawson là web developer với nhiều năm kinh nghiệm, tác giả của nhiều thư viện JavaScript mã nguồn mở.

Tính năng liên quan:claude-codevibe-codingweb-development

Bai viet co huu ich khong?

Bản quyền thuộc về tác giả. Vui lòng dẫn nguồn khi chia sẻ.

Bình luận (0)
Ảnh đại diện
Đăng nhập để bình luận...
Đăng nhập để bình luận
  • Đang tải bình luận...

Đăng ký nhận bản tin

Nhận bài viết hay nhất về sản phẩm và vận hành, gửi thẳng vào hộp thư của bạn.

Bảo mật thông tin. Hủy đăng ký bất cứ lúc nào. Chính sách bảo mật.