快速与硬核代码:AI时代编程语言选择的新趋势
1. 引言:编程已解决的迷因
在Twitter上有一个流行的迷因,即“编程现在已经被解决了”。我不确定这在多大程度上是真的,但有一件事是相当清楚的:熟悉一门语言的行为不再重要,而且对人类来说重要的某些摩擦对代理(agents)来说并不重要。因此,LLM使得语言选择不再像过去那样具有决定性。如果你不喜欢某个选择,你似乎可以用另一种语言重写它,而且你可以让它选择一种你作为程序员完全不熟悉的语言。这反过来意味着人们可以并且确实更多地基于语言的营销来选择。
2. 语言选择的转变与Rust的兴起
作为长期使用Rust的程序员,我发现看到人们现在发布Rust代码(而他们以前可能不会选择它)非常有趣。我将这至少部分归因于最近的两个氛围转变:关于想要快速软件的讨论更多了,以及LLM在优化代码而不使行为退化方面表现出色。像Mitchell Hashimoto、Charlie Marsh、Jarred Sumner、Daniel Lemire等人一直对快速和高效的软件抱有某种程度的痴迷,而且他们也都恰好对代理编写代码持开放态度。也许作为结果,或者无关地,其他人现在也加入了进来。这是因为有了像自动研究(autoresearch)这样的东西,你甚至不一定需要知道所有的技巧:你只需要让代理去处理——尽管知识大有帮助!
3. 硬语言与快速项目的趋势
如果你环顾四周,有很多项目想要快速且小巧,它们越来越多地选择“硬语言”。而且不仅仅是Rust受益。即使是Zig——尽管其创建者和部分核心社区对整个人工智能的事情相当负面——也是如此。例如,Cloudflare的新Artifacts服务使用了一个纯Zig的Git协议引擎,编译成大约100 KB的WebAssembly模块,Vercel发布了fx,一个被宣传为小巧快速的Zig编码代理。据我所知,所有这些项目在很大程度上都是LLM辅助的。
4. 更硬技术的探索
但不仅仅是人们选择不太常见的语言,他们还越来越多地使用“更难”的技术。突然间,我看到人们用DWARF文件、eBPF、自定义网络驱动程序、自定义加密和非常古老的计算机硬件做了一些真正令人印象深刻的事情。这些在以前对许多开发者来说都是禁区。在某些情况下(例如加密),你甚至被推开,因为这些知识被知情者有意地设限。
5. 结论:未来的可能性
所以也许世界会有更多的“垃圾”,但也可能会有更多的开发者想要东西快速且小巧。
快速与硬核代码:AI时代编程语言选择的新趋势
1. 引言:编程已解决的迷因
在Twitter上有一个流行的迷因,即“编程现在已经被解决了”。我不确定这在多大程度上是真的,但有一件事是相当清楚的:熟悉一门语言的行为不再重要,而且对人类来说重要的某些摩擦对代理(agents)来说并不重要。因此,LLM使得语言选择不再像过去那样具有决定性。如果你不喜欢某个选择,你似乎可以用另一种语言重写它,而且你可以让它选择一种你作为程序员完全不熟悉的语言。这反过来意味着人们可以并且确实更多地基于语言的营销来选择。
2. 语言选择的转变与Rust的兴起
作为长期使用Rust的程序员,我发现看到人们现在发布Rust代码(而他们以前可能不会选择它)非常有趣。我将这至少部分归因于最近的两个氛围转变:关于想要快速软件的讨论更多了,以及LLM在优化代码而不使行为退化方面表现出色。像Mitchell Hashimoto、Charlie Marsh、Jarred Sumner、Daniel Lemire等人一直对快速和高效的软件抱有某种程度的痴迷,而且他们也都恰好对代理编写代码持开放态度。也许作为结果,或者无关地,其他人现在也加入了进来。这是因为有了像自动研究(autoresearch)这样的东西,你甚至不一定需要知道所有的技巧:你只需要让代理去处理——尽管知识大有帮助!
3. 硬语言与快速项目的趋势
如果你环顾四周,有很多项目想要快速且小巧,它们越来越多地选择“硬语言”。而且不仅仅是Rust受益。即使是Zig——尽管其创建者和部分核心社区对整个人工智能的事情相当负面——也是如此。例如,Cloudflare的新Artifacts服务使用了一个纯Zig的Git协议引擎,编译成大约100 KB的WebAssembly模块,Vercel发布了fx,一个被宣传为小巧快速的Zig编码代理。据我所知,所有这些项目在很大程度上都是LLM辅助的。
4. 更硬技术的探索
但不仅仅是人们选择不太常见的语言,他们还越来越多地使用“更难”的技术。突然间,我看到人们用DWARF文件、eBPF、自定义网络驱动程序、自定义加密和非常古老的计算机硬件做了一些真正令人印象深刻的事情。这些在以前对许多开发者来说都是禁区。在某些情况下(例如加密),你甚至被推开,因为这些知识被知情者有意地设限。
5. 结论:未来的可能性
所以也许世界会有更多的“垃圾”,但也可能会有更多的开发者想要东西快速且小巧。