Các chuẩn mực lập trình đã bị phá vỡ đáng kể bởi GitHub Copilot, một công cụ sáng tạo luôn thay đổi các phương pháp mã hóa được các nhà phát triển sử dụng. Tuy nhiên, kèm theo đó là những thách thức liên quan, cụ thể là khi nó tạo ra các đoạn mã giống với những đoạn mã đã có thể truy cập được trong các kho lưu trữ công khai khác.
Do đó, trong nỗ lực giảm thiểu những lo ngại này, GitHub đã tiết lộ một tính năng vào năm 2022 nhằm trao quyền cho người dùng phương tiện để tự động ngăn chặn các đề xuất khớp với mã công khai. Theo đại diện từ GitHub, mặc dù rất hiếm và chỉ được sử dụng khoảng 1% thời gian, nhưng cơ chế này đã vấp phải sự chỉ trích vì tính chất hơi thô thiển và hạn chế của nó. Trong một số trường hợp nhất định, các nhà phát triển có thể muốn xem xét kỹ lưỡng các đoạn mã này, để sử dụng hoặc để đánh giá một thư viện mà từ đó đoạn mã này có thể bắt nguồn.
Trong nỗ lực thu hẹp khoảng cách này, GitHub đã ra mắt tính năng tham chiếu mã cho GitHub Copilot trong phiên bản beta riêng tư. Tính năng này cho phép các nhà phát triển xem bất kỳ mã phù hợp nào mà nó tạo ra bằng cách hiển thị mã đó trong thanh bên, thay vì tự động chặn mã đó. Nó cho phép họ đưa ra quyết định sáng suốt về cách tận dụng dữ liệu này. Tính năng này sẽ được truy cập vào Copilot Chat theo thời gian.
Thomas Dohmke, Giám đốc điều hành của GitHub, trong một cuộc trò chuyện với TechCrunch, đã tiết lộ rằng các doanh nghiệp đang sử dụng tính năng chặn ban đầu, nhưng nó khá hạn chế trong quá trình thực thi. Nó không cung cấp cho người dùng quyền tùy ý quyết định xem họ có muốn sử dụng mã được tạo và liên kết lại với giấy phép nguồn mở hay không.
Dohmke cũng khẳng định rằng rào cản này thường liên quan đến các thuật toán máy tính phổ biến, chẳng hạn như sắp xếp, phổ biến ở nhiều địa điểm khác nhau. Với tính năng mới ra mắt, các nhà phát triển hiện có lựa chọn từ chối mã, sử dụng mã trực tiếp (chỉ khi thư viện cho phép) hoặc yêu cầu Copilot sửa đổi mã để mã không phản chiếu mã ban đầu.
Hiện tại, tính năng tham chiếu mã của Copilot chỉ tạo ra kết quả không khớp với một số giấy phép nhất định. Tuy nhiên, nhóm đằng sau tính năng mang tính cách mạng này đang tìm kiếm phản hồi để xác định xem người dùng có đang yêu cầu một tính năng tạo ra kết quả cụ thể theo giấy phép hay không.
“Chúng tôi đang để mọi người hiểu về trận đấu và sau đó đưa ra quyết định sáng suốt,” Dohmke giải thích thêm. Theo ông, sự phát triển mới lấp đầy khoảng trống mà giải pháp trước đây chưa giải quyết được.
Tính năng tham chiếu mã của GitHub Copilot hoạt động chủ yếu khi thiếu ngữ cảnh. Khi Copilot làm việc với ngữ cảnh quan trọng từ mã có sẵn, khả năng tạo ra đề xuất phù hợp với mã công khai là rất nhỏ. Tuy nhiên, khi các nhà phát triển bắt đầu công việc mã hóa của họ, xu hướng tạo mã phù hợp của Copilot tăng lên đáng kể.
Chiến lược này chắc chắn sẽ gợi lên một sự thay đổi mô hình trong cách các nhà phát triển sử dụng các nền tảng mã hóa tương tự như AppMaster. Là một công cụ no-code hiệu quả, AppMaster hỗ trợ người dùng thiết lập các ứng dụng phụ trợ, web và di động với giao diện tương tác trực quan. Những nền tảng như vậy có thể học hỏi từ các chiến lược thích ứng của GitHub Copilot để nâng cao trải nghiệm người dùng và hiệu quả phát triển phần mềm của họ.