1 điểm bởi GN⁺ 2024-01-29 | 1 bình luận | Chia sẻ qua WhatsApp

Kết quả nghiên cứu về GitHub Copilot phát hiện 'áp lực làm suy giảm' đối với chất lượng mã

  • Một nghiên cứu mới về tác động của GitHub Copilot dựa trên AI đối với phát triển phần mềm đã cho thấy các kết quả tiêu cực.
  • Sách trắng "Coding on Copilot" của GitClear khảo sát chất lượng và khả năng bảo trì của mã được AI hỗ trợ, so sánh với mã do con người viết.
  • Kết quả nghiên cứu phát hiện các xu hướng đáng lo ngại đối với việc bảo trì mã, và dự kiến vào năm 2024 lượng thay đổi mã sẽ tăng gấp đôi so với năm 2021, trước khi AI được áp dụng.

Tương phản với nghiên cứu của GitHub

  • Các nghiên cứu khác, đặc biệt là nghiên cứu năm 2022 của GitHub, phát hiện rằng các nhà phát triển sử dụng GitHub Copilot hoàn thành công việc nhanh hơn nhiều.
  • Nghiên cứu của GitHub đo lường các hiệu ứng tích cực như tăng năng suất, tăng mức độ hài lòng của nhà phát triển và tiết kiệm năng lượng tinh thần.
  • Nghiên cứu của GitClear xem xét những thay đổi trong cấu trúc mã khi sử dụng AI và chỉ ra những điểm mà các lãnh đạo kỹ thuật cần chú ý trong năm 2024.

Ý kiến của GN⁺

  • Nghiên cứu này quan trọng trong việc hiểu tác động của AI đối với phát triển phần mềm. Đặc biệt, nó nhấn mạnh những vấn đề tiềm ẩn mà việc sử dụng AI có thể gây ra về mặt chất lượng mã và khả năng bảo trì.
  • Dù các công cụ như GitHub Copilot có thể cải thiện năng suất của nhà phát triển, nghiên cứu này cho thấy cần cân nhắc tác động của chúng đối với chất lượng mã trong dài hạn.
  • Các lãnh đạo kỹ thuật có thể tham khảo những kết quả này để giúp phòng ngừa các vấn đề có thể phát sinh khi sử dụng công cụ hỗ trợ AI và xây dựng chiến lược nhằm duy trì chất lượng mã.

1 bình luận

 
GN⁺ 2024-01-29
Ý kiến trên Hacker News
  • Một người dùng cho biết đã hủy đăng ký vì phải tốn quá nhiều công sức tinh thần để sửa lỗi trong mã. Đặc biệt, công cụ này gần như vô dụng khi xử lý các vấn đề phức tạp liên quan đến SQL. Tự viết thứ mình muốn còn dễ hơn, và họ lo rằng các lập trình viên mới vào nghề có thể bị những công cụ kém hiệu quả như vậy lấn át.
  • Một người dùng khác nói rằng GPT-4 đã cải thiện đáng kể hiệu suất khi phát triển ứng dụng PHP CRUD. Mã được tạo ra từ các chỉ dẫn đơn giản khá dễ hiểu và phần lớn hoạt động ngay lập tức. Nó giúp lắng nghe yêu cầu của người dùng và giải quyết vấn đề. GPT-4 mang lại sự hỗ trợ có giá trị với chi phí thấp, nhưng cũng nhấn mạnh rằng nếu không nắm vững nền tảng thì sẽ khó dùng hiệu quả.
  • Một người tham gia thảo luận đặt câu hỏi về phương pháp luận khi so sánh hoạt động commit của năm 2023 với các năm trước. Họ phê phán rằng phân tích hồi quy chỉ dựa trên 4 điểm dữ liệu và không tính đến ảnh hưởng của Copilot nên thiếu sức thuyết phục.
  • Một người dùng khác chỉ ra rằng công nghệ đang được dùng để thúc đẩy tăng trưởng của thị trường và chính phủ, nhưng thường theo cách chồng thêm lên những lớp trừu tượng chưa hoàn chỉnh để giải quyết vấn đề. Họ cho rằng cần có thay đổi về chất, và lo ngại rằng LLMs (Large Language Models) đang khuyến khích xu hướng sai lầm của con người là muốn đạt mục tiêu mà không cần nỗ lực thực sự.
  • Một lập trình viên mô tả quy trình làm việc của mình rằng nếu Copilot cung cấp mã chạy được ở giai đoạn tạo mẫu, thì có thể sẽ bỏ qua phần lớn quá trình cần thiết để hiểu đầy đủ vấn đề và cấu trúc nó cho đúng. Copilot có thể rất hữu ích ở giai đoạn phát triển cuối, nhưng không nên kỳ vọng nó tạo ra kết quả vượt quá những gì đã nhập vào.
  • Một lập trình viên mới vào nghề cảm thấy các trợ lý như Codeium thường gây xao nhãng và lo rằng mình sẽ không học được cách tự viết mã. Các công cụ như Phind giúp hiểu vấn đề, nhưng Codeium thường không hoạt động tốt nên gây bất tiện.
  • Tác giả nghiên cứu bày tỏ sự hào hứng trước mối quan tâm dài hạn đối với chất lượng mã. Việc mã trùng lặp tăng lên và việc di chuyển mã giảm xuống trong năm 2023 là kết quả ngoài dự đoán. Họ hy vọng các nhóm phát triển và những bên tạo ra trợ lý AI sẽ áp dụng các thước đo và cơ chế khuyến khích để coi trọng mã có thể tái sử dụng hơn là mã mới được thêm vào.
  • Một người dùng cho biết đã dùng ChatGPT để tạo một bản sao Yourls dựa trên Django/Python, nhưng lại không tính toán đúng phần theo dõi lưu lượng truy cập. Họ ví các công cụ AI như một lập trình viên mới bắt đầu, nhưng tạo ra sai lầm nhanh hơn rất nhiều.
  • Có ý kiến cho rằng làn sóng phản ứng ngược với nguyên tắc DRY (Don't Repeat Yourself) đã xuất hiện từ trước, và một số lập trình viên trẻ có thái độ rất khác đối với mã nguồn. Họ tỏ ra xem nhẹ các design pattern cũng như các nguyên tắc DRY và SOLID.
  • Cuối cùng, một người dùng cảm thấy Copilot quá cố tỏ ra thông minh nên thường đưa ra kết quả sai. Họ muốn Copilot trở thành một IntelliSense thông minh, nhưng cho rằng trên thực tế nó lại hành xử giống một pair programmer kém hơn. Nhiều người đang dùng nó cho business logic, và họ nghĩ sản phẩm đang đi theo hướng đó.