Một bài đánh giá gần đây của lập trình viên về các công cụ lập trình hỗ trợ bởi AI đã gây ra cuộc tranh luận sôi nổi trong cộng đồng công nghệ về việc liệu các công cụ này có thực sự dễ học và sử dụng hiệu quả hay không. Cuộc tranh cãi tập trung xung quanh những tuyên bố mâu thuẫn về độ khó học và lợi ích năng suất thực tế từ các trợ lý lập trình AI phổ biến.
Tuyên Bố Không Có Độ Khó Học Gây Phản Ứng Dữ Dội
Khẳng định trong bài viết gốc rằng việc học cách sử dụng LLM trong quy trình lập trình là điều tầm thường đã thu hút sự chỉ trích gay gắt từ các lập trình viên có kinh nghiệm. Nhiều thành viên cộng đồng cho rằng tuyên bố này cho thấy sự hiểu biết sai lầm cơ bản về cách làm việc hiệu quả với các công cụ lập trình AI . Những người chỉ trích chỉ ra rằng việc có được kết quả cơ bản từ các công cụ AI có thể dễ dàng, nhưng phát triển quy trình làm việc hiệu quả đòi hỏi kỹ năng và sự thích nghi đáng kể.
Cuộc tranh luận làm nổi bật một mô hình phổ biến khi các lập trình viên gặp khó khăn với các công cụ AI thường kết luận rằng bản thân các công cụ có vấn đề, thay vì nhận ra nhu cầu phát triển các phương pháp làm việc mới. Một số người bình luận lưu ý rằng việc bác bỏ các công cụ như Cursor mà không đánh giá đúng cách cho thấy người đánh giá chưa bao giờ học cách thích nghi quy trình làm việc của họ để hoạt động hiệu quả với sự hỗ trợ của AI .
Các Mô Hình Sử Dụng Thực Tế Xuất Hiện
Bất chấp tranh cãi, cuộc thảo luận cộng đồng tiết lộ những hiểu biết có giá trị về các thực hành lập trình AI hiệu quả. Các lập trình viên báo cáo thành công khi họ chia nhỏ các tác vụ thành những phần nhỏ với hướng dẫn rõ ràng, tạo ra các codebase có cấu trúc tốt trước khi sử dụng AI nhiều, và tập trung vào các tác vụ như xây dựng khung, kiểm thử tích hợp, và làm việc với các tiêu chuẩn đã được thiết lập.
Một lập trình viên đã chia sẻ cách tiếp cận của họ là trước tiên tổ chức cấu trúc mã thủ công, sau đó sử dụng AI để tạo ra các cấu hình triển khai, thiết lập giám sát, và mã boilerplate theo các mẫu hiện có. Phương pháp này được báo cáo là tạo ra mã có thể triển khai với lỗi tối thiểu trên 10-15 tệp.
Các trường hợp sử dụng AI coding hiệu quả:
- Triển khai các tiêu chuẩn và giao thức đã được thiết lập tốt
- Viết các bài kiểm tra tích hợp và mã boilerplate
- Phân loại và sửa các lỗi Sentry đơn giản
- Làm việc với các công nghệ mới và tài liệu hướng dẫn
- Tạo ra các thành phần phần mềm nhỏ, có thể thay thế được
- Tạo cấu hình scaffolding và triển khai
Các Cân Nhắc Về Ngôn Ngữ và Framework
Cộng đồng đã xác định những biến đổi đáng kể trong hiệu quả của công cụ AI trên các ngôn ngữ lập trình khác nhau. Rust nổi lên như ngôn ngữ đặc biệt phù hợp cho sự hỗ trợ của AI do trình biên dịch của nó tập trung vào các thông báo lỗi dễ đọc cho con người, giúp hướng dẫn các công cụ AI hướng tới các giải pháp chính xác. Ngược lại, Python yêu cầu kiểu dữ liệu mạnh trong toàn bộ codebase để đạt được kết quả tốt với sự hỗ trợ của AI .
Một số lập trình viên lưu ý rằng các công cụ AI xuất sắc với các ngôn ngữ và framework chính thống nhưng gặp khó khăn với các công nghệ ít phổ biến hơn. Tuy nhiên, một số báo cáo thành công ngay cả với các ngôn ngữ thích hợp như lập trình D , cho thấy rằng khả năng AI có thể rộng hơn so với giả định ban đầu.
Hiệu suất ngôn ngữ lập trình với các công cụ AI:
- Hiệu suất tốt nhất: Rust (thông báo lỗi từ compiler xuất sắc giúp hướng dẫn AI)
- Cần thiết lập: Python (cần kiểu dữ liệu mạnh để có kết quả tốt)
- Tốt một cách bất ngờ: Ngôn ngữ lập trình D (mặc dù có ít dữ liệu huấn luyện)
- Nhìn chung mạnh mẽ: TypeScript , các framework và tiêu chuẩn đã được thiết lập
Thách Thức Về Giá Cả và Tính Ổn Định
Một mối quan tâm lặp đi lặp lại trong cuộc thảo luận liên quan đến bối cảnh thay đổi nhanh chóng của giá cả và tính khả dụng của công cụ AI . Các lập trình viên bày tỏ sự thất vọng với việc các nhà cung cấp biến các mô hình thành premium qua đêm và nhu cầu liên tục cập nhật quy trình làm việc khi các công cụ và mô hình mới xuất hiện hàng tuần. Sự bất ổn này khiến việc thiết lập các quy trình phát triển đáng tin cậy phụ thuộc vào sự hỗ trợ của AI trở nên khó khăn.
Sự đồng thuận của cộng đồng cho thấy rằng trong khi các công cụ lập trình AI có thể tăng năng suất đáng kể, thành công đòi hỏi sự kiên nhẫn, thử nghiệm, và sẵn sàng thích nghi các quy trình làm việc đã được thiết lập thay vì mong đợi các công cụ tích hợp liền mạch vào các thực hành hiện có.
Tham khảo: The current state of LLM-driven development