Amazon Web Services đã phát hành một hướng dẫn toàn diện về vibe coding - một phương pháp tiếp cận hiện đại trong phát triển phần mềm, nơi các lập trình viên sử dụng các lệnh bằng ngôn ngữ tự nhiên để tạo mã với sự hỗ trợ của AI. Tuy nhiên, cộng đồng công nghệ đang phản đối, cho rằng định nghĩa của Amazon về cơ bản đã hiểu sai ý nghĩa thực sự của vibe coding.
Hướng dẫn này nhấn mạnh việc xem xét mã kỹ lưỡng, đặc tả chi tiết và kiểm thử toàn diện - những thực hành trực tiếp mâu thuẫn với triết lý cốt lõi của vibe coding. Ban đầu được đặt tên như một thuật ngữ cho lập trình bình thường, trực quan, nơi các lập trình viên dựa vào đầu ra của AI mà không cần phân tích mã sâu, vibe coding được tạo ra để mô tả một phương pháp tiếp cận phát triển dựa trên cảm tính.
Yêu cầu Vibe Coding của Amazon so với Vibe Coding truyền thống
Cách tiếp cận của Amazon | Vibe Coding truyền thống |
---|---|
Yêu cầu đánh giá code kỹ lưỡng | Không đánh giá code, tập trung vào kết quả đầu ra |
Cần có thông số kỹ thuật chi tiết | Chỉ sử dụng lời nhắc bằng ngôn ngữ tự nhiên |
Bắt buộc phải kiểm thử toàn diện | Chỉ xác thực trực quan/chức năng |
Nhà phát triển phải hiểu toàn bộ code | Nhà phát triển dựa vào phán đoán của AI |
Tài liệu hóa mọi thay đổi | Tài liệu tối thiểu |
Phương pháp dịch Pseudocode
Một số lập trình viên trong cộng đồng đã tìm thấy thành công với một phương pháp có cấu trúc hơn, kết nối giữa lập trình truyền thống và hỗ trợ AI. Điều này bao gồm việc viết pseudocode kết hợp ngôn ngữ tự nhiên với cú pháp lập trình, sau đó yêu cầu AI dịch nó thành mã thực tế. Phương pháp này duy trì quyền kiểm soát của lập trình viên trong khi tận dụng thế mạnh của AI trong việc chuyển đổi phong cách và dịch ngôn ngữ.
Kỹ thuật này hoạt động đặc biệt tốt vì các mô hình ngôn ngữ lớn xuất sắc trong việc chuyển đổi từ định dạng này sang định dạng khác, thay vì tạo mã từ đầu. Các lập trình viên báo cáo rằng họ có độ tin cậy cao hơn vào đầu ra vì họ vẫn là kiến trúc sư chính của logic và cấu trúc.
Thực hành được Cộng đồng Khuyến nghị
- Viết mã giả kết hợp ngôn ngữ tự nhiên và cú pháp lập trình
- Sử dụng AI để chuyển đổi phong cách và chuyển đổi giữa các ngôn ngữ lập trình
- Duy trì các cuộc hội thoại riêng biệt cho từng tính năng để tránh suy giảm ngữ cảnh
- Tập trung vào phát triển hướng kiểm thử với các test case do con người tạo ra
- Giới hạn số lượng MCP server để tránh các vấn đề về hiệu suất
Cách diễn giải thận trọng của Amazon
Hướng dẫn của Amazon đọc giống như các thực hành tốt nhất trong phát triển phần mềm truyền thống với các công cụ AI hơn là vibe coding thực sự. Công ty nhấn mạnh không bao giờ tin tưởng một cách mù quáng vào mã do AI tạo ra và yêu cầu các lập trình viên hiểu mọi quyết định kỹ thuật - một lập trường phản ánh cách tiếp cận thận trọng của các doanh nghiệp lớn lo ngại về trách nhiệm pháp lý và chất lượng mã.
Cách diễn giải bảo thủ này đã thu hút sự chỉ trích từ các lập trình viên, những người coi đây là việc áp dụng từ khóa của công ty mà không hiểu khái niệm cơ bản. Việc hướng dẫn nhấn mạnh vào tài liệu, kiểm thử và xác thực đã biến vibe coding thành thứ gì đó gần giống với quy trình phát triển thông thường hơn.
Sự hoài nghi của cộng đồng và mối quan ngại thực tế
Nhiều lập trình viên có kinh nghiệm đặt câu hỏi liệu vibe coding có thực sự mang lại lợi ích về năng suất so với các phương pháp lập trình truyền thống hay không. Những người chỉ trích chỉ ra rằng các môi trường phát triển hiện đại đã giải quyết nhiều vấn đề cú pháp tầm thường mà hỗ trợ AI nhắm đến thông qua các tính năng như tự động hoàn thành, định dạng và phát hiện lỗi.
Đây hoàn toàn không phải là vibe coding, đây là việc xem xét mã do AI tạo ra
Cộng đồng cũng nêu lên mối quan ngại về sự suy giảm ngữ cảnh trong các cuộc trò chuyện AI dài và thách thức duy trì chất lượng mã khi phụ thuộc nhiều vào đầu ra được tạo ra. Một số lập trình viên báo cáo rằng các đặc tả chi tiết có thể dẫn đến việc triển khai phức tạp không cần thiết, với AI thêm các tính năng không được yêu cầu hoặc cần thiết.
Tương lai của phát triển hỗ trợ AI
Bất chấp cuộc tranh luận về thuật ngữ, có sự đồng thuận ngày càng tăng rằng các công cụ AI hoạt động tốt nhất như những trợ lý tinh vi thay vì các trình tạo mã tự động. Các phương pháp thành công nhất dường như liên quan đến việc các lập trình viên duy trì quyền kiểm soát kiến trúc trong khi sử dụng AI cho các nhiệm vụ dịch thuật, tái cấu trúc và triển khai.
Cuộc thảo luận tiết lộ một căng thẳng rộng lớn hơn giữa sức hấp dẫn tiếp thị của vibe coding và thực tế thực tiễn của phát triển phần mềm chuyên nghiệp. Trong khi khái niệm này có thể hoạt động cho các dự án dùng một lần hoặc nguyên mẫu, các hệ thống sản xuất vẫn yêu cầu việc xem xét và xác thực cẩn thận mà hướng dẫn của Amazon nhấn mạnh - ngay cả khi điều đó có nghĩa là từ bỏ hoàn toàn vibe.
Tham khảo: Vibe Coding Tips and Tricks