动态

AI辅助编程降低语言壁垒,鼓励多语言开发

Andrew Ng
尽管我是一名比JavaScript更优秀的Python开发者,但在AI的帮助下,我最近编写了大量JavaScript代码。AI辅助编码(包括“氛围编码”)正在削弱特定编程语言的重要性,尽管学习一门语言仍然有助于理解关键概念。这帮助许多开发者用不熟悉的语言编写代码,从而能够在更多场景中让代码运行起来!

我的背景是机器学习工程和后端开发,但AI辅助编码让我能够轻松地用我不擅长的JavaScript(JS)或TypeScript(TS)构建前端系统(用户交互的网站或应用部分)。生成式AI正在降低语法的重要性,因此我们可以同时成为Python、JS、TS、C++、Java甚至Cobol开发者。也许有一天,我们中的更多人将不再是“Python开发者”或“C++开发者”,而只是“开发者”!

但理解不同语言背后的概念仍然重要。这就是为什么至少学习一门像Python这样的语言,仍然为提示LLM生成Python及其他语言代码提供了良好基础。如果你从一种编程语言转向执行类似任务但语法不同的另一种语言——比如从JS到TS,或从C++到Java,或从Rust到Go——一旦你学会了第一组概念,你就会知道提示LLM用第二种语言编码所需的大量概念。(尽管TensorFlow和PyTorch不是编程语言,但学习TensorFlow背后的深度学习概念也会让LLM更容易为你编写PyTorch代码,反之亦然!)此外,你还能理解大部分生成的代码(或许借助一点LLM的帮助)。

不同的编程语言反映了组织计算的不同观点,理解概念仍然重要。例如,不理解数组、字典、缓存和内存的人,在用LLM编写大多数语言代码时效率会较低。

类似地,转向使用JS进行更多前端编程的Python开发者,将受益于学习前端系统背后的概念。例如,如果你想让LLM用React框架构建前端,理解React如何将前端分解为可复用的UI组件,以及它如何更新决定网页外观的DOM数据结构,将对你有所帮助。这让你能更精确地提示LLM,并帮助你在出现问题时理解如何修复。同样,如果你想让LLM帮你编写CUDA或ROCm代码,理解GPU如何组织计算和内存也会有所帮助。

正如流利使用多种人类语言的人能更轻松地与他人交流一样,LLM正在让开发者更容易在多种场景中构建系统。如果你还没有尝试过,我鼓励你让LLM用你想学但可能尚未动手的语言编写一些代码,看看它是否能帮你让一些新的应用运行起来。

[原文:https://t.co/NdjaPgwwuk]
动态Andrew Ng2025-04-24原文

相关内容