Giám đốc điều hành của Nvidia đã tuyên bố rằng chúng ta không nên dạy trẻ em lập trình vì AI sẽ làm tất cả những công việc nặng nhọc cho chúng. Mặc dù sự thật là AI có thể là người bạn tốt của lập trình viên, nhưng mọi người vẫn nên học cách code, bất kể cuối cùng họ sử dụng bao nhiêu code do AI tạo ra - vì nhiều lý do.
CEO của Nvidia đã nói gì về AI và lập trình?
Tại Hội nghị thượng đỉnh Chính phủ Thế giới năm 2024 ở Dubai, Giám đốc điều hành Nvidia Jensen Huang tuyên bố ông tin rằng việc dạy mọi người cách viết code chẳng ích gì vì việc lập trình sẽ được thực hiện bởi AI trong tương lai gần:
Công việc của chúng tôi là tạo ra công nghệ điện toán sao cho không ai phải lập trình. Và ngôn ngữ lập trình là của con người. Mọi người trên thế giới bây giờ đều là lập trình viên. Đây là điều kỳ diệu của trí tuệ nhân tạo.
Mặc dù AI có thể tạo ra các block code hoạt động nhưng vẫn có những lập luận cho rằng con người không cần phải học những kiến thức cơ bản về lập trình nếu muốn tạo chương trình.
AI giỏi lập trình như thế nào?
Trước khi có thể khẳng định tuyên bố của Jensen là đúng hay sai, chúng ta phải xem điều gì đã thúc đẩy ông có những nhận định này.
Các mô hình AI trên Internet có thể giúp bạn lập trình. Các mô hình sử dụng chung như ChatGPT có thể thực hiện việc này, nhưng bạn có thể sử dụng một mô hình đặc biệt như CodeGPT dành riêng để xử lý các truy vấn lập trình.
Nhìn chung, các mô hình AI này làm rất tốt việc chuyển lời nhắc thành code. Điểm mạnh chính của nó, mà Jensen đề cập ở trên, là bạn không cần biết lập trình để tạo code bằng AI. Chỉ cần cho nó biết những gì bạn muốn bằng tiếng Anh, sao chép-dán kết quả và (lý tưởng nhất) là bạn sẽ có code không có lỗi thực hiện những gì bạn yêu cầu.
Tại sao Nvidia lại sai khi cho rằng không cần dạy lập trình cho trẻ em?
Ông Huang đã đưa ra một quan điểm xuất sắc và tuyên bố của ông có cơ sở bằng chứng thực tế. Tuy nhiên, có rất nhiều lý do để tiếp tục dạy mọi người cách viết code.
1. Vẫn cần có kiến thức để kiểm tra lỗi trong code do AI tạo
Code AI thường có thể chạy mà không phát sinh lỗi, nhưng nó không hoàn hảo. Học cách viết code sẽ cung cấp cho bạn kiến thức cần thiết để tinh chỉnh và trau dồi code mà AI tạo ra, như đã nêu trong phần giới thiệu ở trên về CodeGPT:
Vì vậy: CodeGPT có thể viết code, nhưng bạn nên cẩn thận vì không phải lúc nào nó cũng mang lại cho bạn kết quả đầu ra tốt nhất. Những gì bạn nhận được có thể dễ xảy ra lỗi và có thể không tuân theo các phương pháp hay nhất. Bất cứ khi nào bạn sử dụng CodeGPT hoặc bất kỳ công cụ hỗ trợ AI nào khác để viết code, trước tiên hãy cố gắng hiểu code đó làm gì. Đừng chỉ sao chép và dán!
Quan trọng hơn, phải làm cho code có thể đọc được đối với con người và đảm bảo code tuân theo các nguyên tắc lập trình cơ bản mà mọi lập trình viên nên biết. Nếu mù quáng thêm code do AI tạo ra, bạn có nguy cơ tạo ra một mớ code lớn khó gỡ rối hoặc tệ hơn là tạo ra các lỗ hổng trong phần mềm, trang web của mình, v.v...
2. Lập trình viên có thể áp dụng kinh nghiệm để giải quyết vấn đề tốt hơn AI
Các lập trình viên cuối cùng đang cố gắng giải quyết một vấn đề. Dù tạo ứng dụng cho chính họ hay cho khách hàng, họ đều phải tìm ra cách tốt nhất để biến ý tưởng thành hiện thực bằng cách sử dụng code.
Khi các lập trình viên có được kinh nghiệm tạo ứng dụng, họ có thể hình dung rõ hơn cách một dự án đi từ một bản vẽ trên giấy đến một chương trình hoạt động. Các chatbot AI không có cùng trình độ đào tạo để có thể học hỏi từ những dự án trước đó và áp dụng những gì chúng đã học để thực hiện công việc tốt hơn trong tương lai.
3. Lập trình viên có thể cải thiện code tốt hơn nhằm đáp ứng nhu cầu của người dùng
Nếu bạn đang tạo một chương trình cho người khác thì rất có thể họ sẽ có một số phản hồi. Đó là một phần tự nhiên của quá trình trao đổi qua lại để đảm bảo khách hàng có được sản phẩm họ muốn.
Nếu con người lập trình ứng dụng, họ có thể tự thực hiện bất kỳ phản hồi nào và gửi qua phiên bản thứ hai, tiếp tục xu hướng này cho đến khi đạt được mong muốn của khách hàng. Tuy nhiên, nếu ai đó gặp khó khăn với code do AI tạo ra, điều tốt nhất họ có thể làm là yêu cầu AI thực hiện các chỉnh sửa và hy vọng rằng trí tuệ nhân tạo sẽ xử lý yêu cầu của họ đúng cách.
4. Lập trình viên có thể thích ứng với xu hướng công nghệ đang thay đổi nhanh hơn AI
Các mô hình AI lấy kiến thức từ dữ liệu đã có sẵn. Điều đó khiến chúng thực sự giỏi trong việc tạo lại mọi thứ từ những gì đã có trên Internet nhưng lại không giỏi trong việc hiểu các công nghệ và xu hướng mới nhất.
Các lập trình viên luôn có thể cập nhật những phát triển mới nhất trong ngôn ngữ họ đã chọn và triển khai chúng trong code. Họ cũng hiểu ngôn ngữ nào phù hợp nhất với nhiệm vụ nào và có thể thay đổi ngôn ngữ được sử dụng khi ngôn ngữ trước đó không được ưa chuộng.
5. Lập trình viên có thể đáp ứng các yêu cầu vá lỗi khẩn cấp nhanh hơn AI
Cuối cùng, nếu có lỗi xảy ra với code, cần có người có kiến thức lập trình để sửa nó. Trong trường hợp xảy ra tấn công Zero-day, thời gian là điều cốt yếu; vấn đề cần được xác định và khắc phục càng nhanh càng tốt.
Việc code do con người viết hay do AI viết không thành vấn đề; cả hai đều có thể mắc sai lầm. Tuy nhiên, người hiểu code sẽ dễ dàng xác định và hiểu vấn đề hơn. Một người không biết cách hoạt động của code thậm chí sẽ không biết phải yêu cầu AI làm gì.
Tuyên bố của Jensen Huang không hẳn là sai. AI cho phép những người chưa từng lập trình trước đây tạo và sử dụng code. Tuy nhiên, nếu ai đó muốn tạo ra thứ gì đó cho chính họ hoặc người khác, họ sẽ cần kiến thức lập trình cơ bản để đảm bảo mọi thứ diễn ra suôn sẻ và hiệu quả.