Thủ thuật
Đừng gửi PR hàng nghìn dòng nữa: Nỗi khổ của người review code trong kỷ nguyên AI
(giờ Việt Nam)
Tóm tắt AI
Các lập trình viên đang quá tải vì những PR khổng lồ do AI tạo ra. Bài viết kêu gọi chia nhỏ code để dễ kiểm soát, thay vì lạm dụng AI tạo ra những khối lượng công việc vượt quá khả năng thẩm định của con người.
Bản dịch AI
Tôi mệt mỏi quá rồi. Tôi chán ngấy việc phải review những PR dài một, hai, ba nghìn dòng chỉ vì một con agent nào đó có thể "giải quyết toàn bộ vấn đề trong một lần chạy". Người ta chưa bao giờ yêu cầu PR nhỏ chỉ vì chúng dễ viết, mà mục đích luôn là để hỗ trợ người review. AI đúng là một món quà cho ngành công nghiệp này, nhưng nó đang trở thành một gánh nặng cho những người làm công việc review và bảo trì. Có lẽ tôi chỉ là một ông già đang càm ràm vô ích, nhưng làm ơn, đừng gửi cho tôi những PR khổng lồ nữa.
Gần đây tôi nghe nhiều người lập luận rằng "nếu không có toàn bộ thay đổi thì nó sẽ không hoạt động" hoặc "code sẽ chẳng làm được gì nếu chúng ta không đưa vào toàn bộ diff". Ờ thì, đúng vậy? Tốt mà? Mục đích của các PR nhỏ không nhất thiết là phải tạo ra những sản phẩm hoàn thiện, riêng lẻ. Mục đích là để chia nhỏ công việc thành những phần dễ tiêu hóa, dễ review và dễ hiểu. Tôi không có dữ liệu cụ thể, nên tôi xin phép suy đoán rằng thời gian để hiểu trọn vẹn một đoạn code sẽ tăng theo cấp số nhân với số dòng code đó. Việc tiêu tốn thời gian của tôi theo cấp số nhân chỉ vì bạn muốn đẩy toàn bộ một tính năng lên thực sự chẳng mang lại niềm vui gì cả.
Nhân tiện, tôi cũng không cần những đoạn comment dài 50 dòng. Tất nhiên, hãy cứ viết tài liệu cho hàm, cung cấp jsdoc, rustdoc, javadoc hay bất cứ thứ gì hữu ích. Nhưng tuyệt đối đừng viết 5 dòng comment giải thích tại sao một biến lại được đặt tên là is_logged_in. Nếu bạn đặt tên biến tốt, 9 trên 10 trường hợp tôi sẽ hiểu nó làm gì. Nếu biến của bạn đặt tên không tốt và bạn cần phải viết comment, thì hãy đặt tên biến lại cho tốt hơn đi.
Cuối cùng, gửi những người theo chủ nghĩa AI cực đoan, những người nói rằng "cứ dùng AI để grok (không phải Grok của xAI) nó đi", các bạn đang lãng phí token của mình để nạp lại đoạn code vốn đã được tạo ra bởi AI. "Nhưng tôi dùng một model khác để review mà", được thôi, vậy tại sao bạn lại gửi nó cho con người review làm gì? Có lẽ, bạn nên để con AI quý giá của mình tách nhỏ nó ra cho những người phàm trần chúng tôi, rồi hãy review sau khi chúng tôi đã xem qua?
Nghe này -- AI là một công cụ tuyệt vời, nó thực sự giúp mọi thứ tiến triển nhanh hơn và có thể làm cho code tốt hơn, nhưng khi React ra đời, chúng ta đâu có chấp nhận các PR lớn hơn chỉ vì "React viết nhanh hơn và dễ đọc hơn", vậy tại sao bây giờ chúng ta lại làm thế?
Phụ lục: Có phải bạn đang cố tình tạo ra những PR khổng lồ để tôi bỏ cuộc giữa chừng và phê duyệt luôn không? Nếu đúng là vậy, thì chơi hay đấy. Chơi. Rất. Hay.
Bài viết được AI dịch và tổng hợp tự động từ Hacker News Nổi bật (buzzing.cc bản dịch tiếng Trung). Liên kết bài gốc ở phía trên. Dữ liệu đồng bộ qua API công khai được ghi nguồn tại AI HOT (canonical) ↗. AIHOT.vn luôn dẫn nguồn đầy đủ — nếu bạn thấy điểm cần chỉnh sửa, hãy gửi ý kiến tại trang phản hồi.