Phiên bản phổ biến của câu chuyện về AI và kỹ thuật phần mềm là một câu chuyện dễ chịu: công cụ nâng tất cả mọi người lên, kỹ sư junior viết code chất lượng ngang senior, và sân chơi trở nên bằng phẳng. Đó là một câu chuyện đẹp. Nhưng phần lớn, nó lại ngược lại. AI không thu hẹp khoảng cách giữa các kỹ sư. Nó nới rộng khoảng cách đó — bởi vì thứ mà nó thưởng nhiều nhất chính là điều duy nhất nó không thể trao cho bạn: năng lực phán đoán về việc tại sao bạn lại làm tất cả những điều này.
Sự đảo ngược
Phần lớn những gì chúng ta gọi là thực hành tốt nhất thực chất là sự thích nghi với giới hạn của con người. Chúng ta giữ các hàm ngắn gọn vì một người chỉ có thể ghi nhớ được một lượng nhất định trong đầu. Chúng ta kỷ luật với việc không lặp lại chính mình, một phần vì việc thay đổi cùng một thứ ở năm nơi bằng tay chính là cách mà lỗi phát sinh. Chúng ta ghi chép lại mọi thứ vì trí nhớ con người có thể bị hao hụt. Đều là những quy tắc tốt — nhưng là những quy tắc được định hình bởi cái giá của việc là một con người ngồi trước bàn phím.
AI thay đổi những cái giá đó. Khi một tác nhân có thể đọc toàn bộ codebase trong vài giây, tái cấu trúc một mẫu bị trùng lặp trên bốn mươi tệp một cách nguyên tử, và không bao giờ quên bất cứ thứ gì nằm ở đâu, một số ràng buộc cũ đó đơn giản là không còn hiệu lực nữa. Nền kinh tế đã tạo ra quy tắc đó đảo ngược, và lặng lẽ, một số quy tắc cũng đảo ngược theo. Không phải tất cả — nhưng đủ nhiều để "chúng ta vẫn luôn làm theo cách này" không còn là một lựa chọn mặc định an toàn nữa.
Khoảng cách lý luận
Đây là nơi khoảng cách mở ra. Hai kỹ sư đều biết quy tắc "đừng lặp lại chính mình" (DRY). Một người biết tại sao: rằng sự trùng lặp nguy hiểm chủ yếu vì nó trôi lệch khỏi đồng bộ khi bạn thay đổi một bản sao mà quên mất các bản còn lại, và quy tắc này thực ra nói về rủi ro bảo trì, chứ không phải về sự tồn tại đơn thuần của hai khối code tương tự nhau. Người kia chỉ biết quy tắc.
Hãy đặt cả hai vào một thế giới nơi AI có thể tìm và cập nhật mọi bản sao của một mẫu ngay lập tức và đáng tin cậy. Kỹ sư thứ nhất có thể suy luận xem quy tắc này có còn áp dụng ở đây hay không, và khi nào thì sự trùng lặp giờ đây rẻ hơn so với một sự trừu tượng hóa sai lầm. Kỹ sư thứ hai chỉ có thể đọc thuộc lòng quy tắc. Khi nền tảng thay đổi, sự thấu hiểu cho phép bạn suy ra lại câu trả lời đúng; còn việc học thuộc lòng chỉ để lại cho bạn việc bảo vệ một quy tắc mà lý do của nó đã bốc hơi mất rồi.
Đó là khoảng cách lý luận, và AI đổ thêm dầu vào lửa đó. Kỹ sư đã hiểu rõ các đánh đổi (tradeoff) nhận được một bộ nhân sức mạnh. Kỹ sư chỉ học thuộc các kết luận nhận được một công cụ tự tin để tạo ra nhiều câu trả lời của ngày hôm qua hơn, nhanh hơn.
Không chỉ kém năng suất hơn — mà là giá trị ròng âm
Sẽ chẳng có vấn đề gì lớn nếu kỹ sư dưới chuẩn chỉ đơn giản là kém năng suất hơn. Sự thật khắc nghiệt hơn là trong một môi trường thay đổi nhanh, họ có thể trở thành giá trị ròng âm đối với cả đội. Họ làm chậm những thay đổi tốt bằng cách viện dẫn truyền thống — "chúng ta không làm như vậy ở đây" — mà không thể nói được liệu truyền thống đó có còn hợp lý hay không. Họ tạo ra ma sát, review theo phản xạ, và neo các cuộc thảo luận vào những quy tắc không còn xứng đáng nữa. Cái giá phải trả không chỉ là công việc họ không làm; đó còn là lực cản mà họ đặt lên tất cả những người đang suy nghĩ xung quanh họ.
Huyền thoại về sự dân chủ hóa
Đây là lý do vì sao câu nói "AI dân chủ hóa việc lập trình" chỉ đúng một nửa. Đúng vậy, mặt sàn của những gì có thể làm được đã dâng lên: người trước đây không thể ship được gì thì giờ đây có thể ship một thứ gì đó. Nhưng giá trị của năng lực phán đoán còn tăng nhanh hơn. Các công cụ AI có giá trị nhất đối với những người đã biết rõ mình đang làm gì, bởi vì chính những người đó mới có thể nhận ra khi nào công cụ đúng, khi nào nó sai một cách tự tin, và khi nào tình huống đã thay đổi đủ nhiều để câu trả lời cũ không còn đứng vững nữa. Một công cụ khuếch đại bạn chỉ tốt bằng chính thứ đang được khuếch đại.
Không có một bình thường mới nào cả
Bản năng của chúng ta là chờ mọi thứ ổn định lại — học các thực hành tốt nhất mới rồi thư giãn với chúng. Nhưng năng lực của công cụ đang cải thiện quá nhanh để điều đó có thể xảy ra. Cứ vài tháng, một ràng buộc nào đó từng định hình cách chúng ta làm việc lại nới lỏng thêm lần nữa, và một lô kinh nghiệm truyền lại khác lặng lẽ hết hạn. Không có một bình thường mới ổn định nào để học thuộc lòng. Điều quan trọng không phải là hôm nay bạn đang đứng ở đâu, mà là bạn có thể suy ra lại câu trả lời đúng nhanh đến mức nào khi nền tảng lại dịch chuyển — và đó là một thuộc tính của sự thấu hiểu, không phải của cuốn sổ quy tắc bạn đã học thuộc.
Đây cũng là lý lẽ chính đáng cho việc giữ con người luôn hiện diện vững chắc trong vòng lặp ra quyết định, và đó chính là cách chúng tôi thiết kế TaskGoblin. Tác nhân viết code và review merge request, nhưng nó không bao giờ tự phê duyệt và không bao giờ tự merge — bởi vì năng lực phán đoán về việc một thay đổi có thực sự đúng đắn cho hệ thống này, ngay lúc này, chính xác là phần không thể tự động hóa được. Tác nhân nâng cao mặt sàn của những gì được tạo ra. Quyết định điều gì nên đúng về hệ thống vẫn là của bạn, và nó có giá trị hơn bao giờ hết.
Bạn đang đứng ở đâu?
Đây là một bài kiểm tra bạn có thể tự thực hiện với chính mình. Hãy chọn một thực hành mà bạn tuân theo — DRY, hàm ngắn gọn, kiểm thử toàn diện, bất cứ điều gì. Bạn có thể giải thích ràng buộc mà nó ban đầu là phản ứng lại hay không? Và bạn có thể nói một cách trung thực liệu ràng buộc đó có còn hiệu lực hay không, bây giờ khi AI đang đảm nhận một phần công việc? Nếu bạn có thể, bạn sẽ ổn thôi; bạn sẽ tiếp tục suy ra được những câu trả lời tốt khi các công cụ thay đổi. Nếu tất cả những gì bạn có thể đưa ra chỉ là "vì đó là quy tắc", thì điều đó đáng để bạn lưu ý — bởi vì mặt sàn vẫn đang tiếp tục dâng cao, và khoảng cách giữa việc đọc thuộc lòng các quy tắc và việc thấu hiểu chúng chính xác là khoảng cách đang ngày càng mở rộng.