Hacker News Nổi bật (buzzing.cc bản dịch tiếng Trung)
85

Thủ thuật

Lạm dụng AI trong lập trình: Nguy cơ làm mai một kỹ năng chuyên môn

(giờ Việt Nam)

Tóm tắt AI

Việc phụ thuộc quá mức vào AI khiến lập trình viên, đặc biệt là người mới, bỏ qua giai đoạn tư duy cốt lõi và rơi vào 'ảo tưởng năng lực'. Nghiên cứu cho thấy người biết kiểm soát AI thay vì lạm dụng nó mới là nhóm đạt hiệu suất và chất lượng công việc tốt nhất.

Bản dịch AI

"Chúng ta đang hướng tới một tương lai nơi trí tuệ là một loại tiện ích giống như điện hay nước, mọi người mua nó từ chúng tôi theo đồng hồ đo và sử dụng cho bất cứ mục đích gì họ muốn" - Sam Altman của OpenAI.

Trong bài viết trước của tôi, "Agentic Coding is a Trap" (Lập trình bằng tác nhân AI là một cái bẫy), tôi đã thảo luận về "nghịch lý người điều phối lành nghề", nơi các kỹ năng cần thiết để quản lý các tác nhân AI trong lập trình lại chính là những kỹ năng có thể bị suy giảm do việc liên tục sử dụng chính các tác nhân AI đó. Chuyên môn phần lớn là yếu tố tạo nên sự khác biệt; một lập trình viên càng giàu kinh nghiệm thì khả năng bị mai một kỹ năng càng thấp, vì kiến thức đã có cơ hội được củng cố vững chắc sau nhiều năm làm nghề.

Nếu nhìn quanh ngay lúc này, bạn sẽ thấy đại đa số những người nhận được nhiều lợi ích nhất từ các mô hình này là những người đã có nhiều năm, thậm chí nhiều thập kỷ kinh nghiệm trong ngành (tất nhiên là từ trước khi có các công cụ AI). Và bất kỳ chuyên gia kỳ cựu nào trong ngành cũng sẽ nói với bạn điều tương tự: nền tảng của kiến thức này đến từ việc thực chiến.

Các lập trình viên bước chân vào ngành vào thời điểm có LLM đang ở trong tình thế không có lợi thế về thâm niên, nhưng họ lại được hướng dẫn (và đôi khi là bắt buộc) phải đẩy nhanh tiến độ công việc bằng cách sử dụng các trợ lý lập trình. Những trợ lý này lại đòi hỏi người dùng phải có bề dày chuyên môn mới có thể vận dụng một cách hiệu quả và có trách nhiệm.

Đây là một vị thế khó xử đối với nhóm đối tượng này, vì nó tạo ra một kịch bản mà một người mới bắt đầu lại cần có kỹ năng ở trình độ chuyên gia để tận dụng các công cụ và bắt kịp nhịp độ của ngành.

"Người mới bắt đầu chuyên nghiệp" (The "Expert Novice")

Hiện tại, chúng ta đang gửi đi những tín hiệu rất trái chiều cho mọi người trong ngành. Chúng ta liên tục nhấn mạnh rằng nếu bạn không sử dụng các công cụ AI, bạn sẽ bị "bỏ lại phía sau" bởi những đồng nghiệp đang sử dụng chúng. Câu nói "AI sẽ không thay thế bạn, nhưng người sử dụng AI sẽ thay thế bạn" đã được lặp đi lặp lại từ năm 2023.

Và cùng lúc đó, người ta cũng nói rằng cách để đạt được kết quả tốt nhất từ các mô hình này là áp dụng tư duy bậc cao; "vibe coding" (lập trình theo cảm hứng) là một ngõ cụt; bạn cần "nâng cấp tư duy" (move up the stack), tạo ra các đặc tả kỹ thuật vững chắc, thiết kế với các mẫu thiết kế (design patterns) tốt và luôn xem xét các kết quả đầu ra một cách cẩn thận để không bao giờ bàn giao thứ mà bạn không hiểu rõ.

Tuy nhiên, các kỹ năng để làm được điều đó lại là kết quả của một người đã trải qua những va chạm và thử thách theo thời gian, tích lũy thành "gu thẩm mỹ" (good taste) trong nghề.

Điều này dẫn đến một nghịch lý tình huống khác: Nếu các công cụ này đòi hỏi chuyên môn, nhưng chính chúng lại có thể chủ động loại bỏ những va chạm giúp hình thành nên chuyên môn đó, thì con đường nào để một người trở thành chuyên gia để có thể sử dụng các công cụ này một cách hiệu quả?

Tự tin nhưng thiếu hiểu biết

Một hy vọng là các mô hình này cuối cùng sẽ giúp tăng tốc việc học tập khi chúng được sử dụng để tạo mã. Các lập trình viên cấp thấp (junior) có thể làm việc với sự nghiêm túc và tự tin như những chuyên gia kỳ cựu nhờ có "gia sư AI cá nhân". Việc thuộc cú pháp ngày càng trở nên ít quan trọng hơn, và mọi lỗ hổng kiến thức hay sự mơ hồ đều được công cụ AI lấp đầy. Các cơ chế sâu xa của mã nguồn vẫn bị trừu tượng hóa, vì lập trình viên đang ngồi ở vị trí cao hơn trong hệ thống.

JetBrains, một tên tuổi lớn trong lĩnh vực công cụ dành cho lập trình viên, gần đây đã trích dẫn một nghiên cứu có tiêu đề "The Widening Gap: The Benefits and Harms of Generative AI for Novice Programmers" (Khoảng cách ngày càng lớn: Lợi ích và tác hại của AI tạo sinh đối với lập trình viên mới). Nghiên cứu này đã phân tích tỉ mỉ hành vi cá nhân trong các phiên lập trình trực tiếp và kiểm tra khả năng học lập trình của họ với các mức độ hỗ trợ AI khác nhau. Kết luận chính của họ rất rõ ràng và đi ngược lại với trực giác:

"Những người tham gia nghĩ rằng nó giống như có một gia sư cá nhân. Từ dữ liệu trong nghiên cứu của chúng tôi... chúng tôi quan sát thấy rằng trên thực tế, họ không sử dụng các công cụ GenAI như một gia sư cá nhân. Thực tế thì hoàn toàn ngược lại."

Những người tham gia dựa dẫm nhiều vào sự hỗ trợ của AI:

Ngược lại, những người tham gia hạn chế việc sử dụng AI:

Những lập trình viên mới bắt đầu, những người sử dụng AI một cách thiếu kiểm soát và tự tin nhất, "đã bỏ qua các bước quan trọng trong quá trình giải quyết vấn đề lập trình và giờ đây đã bị lạc lối."

Có lẽ không có gì ngạc nhiên khi những lập trình viên mới bắt đầu đạt kết quả tốt nhất lại là những người hạn chế tối đa hoặc hoàn toàn phớt lờ sự hỗ trợ lập trình từ AI.

Học tập đảo ngược

Do bản chất tự định hướng của LLM, bạn càng có nhiều kinh nghiệm thì chúng càng mang lại nhiều lợi ích vì bạn có thể điều hướng, kiểm tra và xác minh các kết quả đầu ra một cách chính xác. Bạn càng ít kiến thức, chúng càng dễ dẫn dắt bạn đi sai hướng. Việc tương tác với LLM để học các kỹ năng mới tạo thành một mô hình "học tập đảo ngược", một sự hoán đổi vai trò nơi học viên ban đầu hướng dẫn người thầy, người thầy phản hồi, và sau đó học viên lại tiếp tục điều hướng người thầy.

Quá trình này rất bấp bênh; LLM cực kỳ nhạy cảm với cách đặt câu lệnh (prompt). Khi bạn khám phá các lĩnh vực mới, bạn không biết những gì mình chưa biết, và thiết kế linh hoạt, dễ chiều lòng của LLM có thể khiến bạn tin rằng mình biết nhiều hơn thực tế.

Nếu bạn đang khám phá một vùng lãnh thổ thậm chí chỉ hơi xa lạ, bạn thường không biết mình cần đặt những câu hỏi nào để có thể hướng dẫn mô hình đưa ra câu trả lời tốt nhất. Nó bắt đầu giống như một chiếc la bàn luôn chỉ về hướng bắc, bất kể bạn gợi ý hướng bắc nằm ở đâu.

Từ chính nghiên cứu mà JetBrains nhấn mạnh, ngay cả những học viên được chuẩn bị tốt nhất cũng bị chệch hướng bởi sự hỗ trợ của AI do mô hình học tập kiểu này: Một người tham gia đã thể hiện thói quen và kế hoạch cơ bản tốt, nhưng đột nhiên "bỏ qua các giai đoạn lập kế hoạch giải quyết vấn đề quan trọng, nhảy thẳng vào lập trình và bị Copilot lôi kéo vào việc tạo mã nhanh chóng" và cuối cùng phải dựa vào LLM để sửa lỗi mà chính LLM đã tạo ra ngay từ đầu.

Các mô hình AI thiếu khả năng phán đoán, sự đồng cảm và ý đồ sư phạm, và các giải pháp được cung cấp không bắt nguồn từ kinh nghiệm mà từ các khuôn mẫu trong dữ liệu huấn luyện (về cốt lõi, LLM là những bộ nội suy khuôn mẫu cực kỳ phức tạp).

Cỗ máy trả lời vô tận rất hấp dẫn và được biết là gây nghiện. Nó có thể khiến mọi thứ sụp đổ khá nhanh chóng, đặc biệt là đối với các lập trình viên thiếu kinh nghiệm. Một khi bạn đã đi quá sâu vào một giải pháp được tạo ra, bạn thường phải phụ thuộc vào công cụ AI để hoàn thành công việc, từ đó bỏ qua sự va chạm cần thiết trong giải quyết vấn đề để hình thành mô hình tư duy (và công bằng mà nói, các lập trình viên cấp cao cũng dễ mắc phải hiện tượng này).

Sự va chạm là một tính năng

Chuyên môn và sự thông thạo không đến thuần túy qua quan sát và đối thoại, mà thông qua kinh nghiệm, sự lặp lại, thử và sai; bạn phải thất bại mới có thể thành công. Nếu tôi muốn học nấu ăn, tôi có thể xem một đầu bếp bậc thầy làm việc và đặt vô số câu hỏi. Sau một tháng, tôi có thể mô tả một miếng bít tết ribeye chín tái hoàn hảo nhưng sẽ không bao giờ biết cảm giác nấu nó như thế nào, và gần như chắc chắn tôi sẽ làm cháy nó trong lần thử đầu tiên.

Lập trình có vô số khoảnh khắc phải truy vết các lỗi khó hiểu mà không có tệp nhật ký (log file) nào hỗ trợ, trải nghiệm sự khác biệt nhỏ về hiệu suất của các phương pháp nhất định, hoặc phải viết lại một cách tiếp cận khi thấy rõ nó sẽ không thể mở rộng.

Sự va chạm ứng dụng này chính là thứ xây dựng nên "trực giác lập trình viên" (hay "gu thẩm mỹ"). Người Đức có một từ tuyệt vời cho điều này: Fingerspitzengefühl (cảm giác đầu ngón tay). Đó là trí nhớ cơ bắp kích hoạt khi một lập trình viên nhìn vào thứ gì đó và nghĩ: "ừ... cái này có lẽ sẽ gây ra vấn đề". Bằng cách tránh né cơ chế của sự đấu tranh, trực giác này sẽ không bao giờ được xây dựng.

Trong nghiên cứu quy mô lớn năm 2025 của UPenn có tiêu đề "Generative AI without guardrails can harm learning" (AI tạo sinh không có rào chắn có thể gây hại cho việc học), họ đã theo dõi 1.000 sinh viên sử dụng LLM để học toán và phát hiện ra rằng sinh viên sử dụng AI như một chiếc nạng và kết quả cuối cùng thấp hơn 17% so với những sinh viên chỉ sử dụng sách giáo khoa (và cũng giống như nghiên cứu trước đó, những sinh viên sử dụng sự hỗ trợ của AI lại nghĩ rằng mình đang học rất tốt).

Tuy nhiên, LLM không chỉ dùng để tạo mã.

Nếu được tận dụng như những người bạn đồng hành tranh luận kiểu Socrates thay vì những cỗ máy tạo câu trả lời, các nghiên cứu đã chỉ ra rằng "các hệ thống AI đối thoại có thể kích thích tư duy phản biện, độc lập và mang tính suy ngẫm một cách có ý nghĩa".

Trong cùng nghiên cứu đó của UPenn, họ cũng đã thử nghiệm một phiên bản "Gia sư" bằng cách yêu cầu sinh viên tìm kiếm sự trợ giúp và sau đó tự mình giải quyết vấn đề. Nhóm sử dụng GPT Tutor đã đạt kết quả tốt hơn đáng kinh ngạc 127% trong phiên thực hành có hỗ trợ AI (mặc dù thú vị là họ đạt điểm số tương đương với nhóm dùng sách giáo khoa trong bài kiểm tra).

Điều này hiệu quả vì mô hình không còn được sử dụng như một phương tiện sản xuất, và nó chuyển công việc nhận thức trở lại cho cá nhân. Chính khi sự va chạm vẫn còn hiện hữu, nó mới tạo ra một dấu ấn lâu dài dẫn đến chuyên môn.

Nghiên cứu năm 2026 của Anthropic "How AI assistance impacts the formation of coding skills" (Sự hỗ trợ của AI ảnh hưởng thế nào đến việc hình thành kỹ năng lập trình) cũng đi đến những kết luận tương tự:

Đối với những người lao động mới trong ngành kỹ thuật phần mềm hoặc bất kỳ ngành nào khác, nghiên cứu của chúng tôi có thể được xem là một bằng chứng nhỏ cho giá trị của việc phát triển kỹ năng có chủ đích với các công cụ AI. Nỗ lực nhận thức—và thậm chí là việc bị mắc kẹt một cách đau đớn—có khả năng là rất quan trọng để thúc đẩy sự thông thạo.

Có một sự trớ trêu ở đây: việc học tập hiệu quả nhất có thể xảy ra với một công cụ lập trình AI là khi nó không được sử dụng để tạo ra bất kỳ đoạn mã nào cả.

Sự sụp đổ của đường ống phát triển

Nếu LLM có thể viết mã và gỡ lỗi, và các quy trình làm việc bằng tác nhân (agentic workflows) có thể thực hiện thiết kế hệ thống từ vô số khuôn mẫu trong dữ liệu huấn luyện, thì mục đích của kiến thức này ngay từ đầu là gì? Lập trình sẽ được thực hiện hoàn toàn bằng ngôn ngữ tự nhiên, và chúng ta có thể bỏ qua nhu cầu tương tác với mã nguồn vì các mô hình liên tục cải thiện và lấp đầy mọi lỗ hổng kiến thức hay sự mơ hồ. Chúng sẽ gỡ lỗi mọi vấn đề phát sinh và quản lý mọi sự phức tạp mà chính chúng tạo ra.

Canh bạc nghìn tỷ đô la đang được đặt ra là: kiến thức này sẽ không còn quan trọng, bởi vì LLM sẽ đảm nhận phần việc còn lại và thực sự trở thành thế hệ "lập trình viên" mới. Nó bắt đầu toát ra vẻ kiêu ngạo đã từng thúc đẩy các phong trào no-code trong quá khứ, và là những giấc mơ viển vông của các CEO hơn là thực tế trên mặt đất.

Đọc bài gốc

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.