Tang's Blog

最近的一些思考

May 21, 2026 (1w ago)10 views

编程语言

自从 bun 花了几天还是几个礼拜的时间就把自身从 zig 迁移到 rust 之后,让人不禁感慨,ai 时代语言本身的边界正在被模糊。

我们可以很快的通过 ai 去“翻译”某种东西,不仅仅是编程语言--解释代码原理,参考a的实现b 等等

类似这类任务,ai总是很擅长,可想而知,未来只会进一步加强这方面的效果

说回编程语言,有时候编程语言是否成功,自身优秀语法只占了很小一部分,更重要的是能稳住一块区域(背后有一个好的靠山),以及是否顺应时代的需求。 最典型的就是go,语法上除了 go defer 等可圈可点,别的真的很克制(当然这可能也是另一种艺术) 但是 Google 愿意为它投入,就真的可以在目前的世界获得一席之地

dart也是类似道理,没有 Google 在 flutter 上的投入,早就不知道去哪了,甚至 Google 还没有很投入flutter

所以,真的还是得抓住时代机遇和贵人提携,某种意义上,编程语言和人生发展还挺类似

ai 时代设计软件思路的转变

在这些百花齐放的 agent 到来之前,我们写软件的思路是尽量避免bug,仔细思考,然后小心翼翼编写。

但是 ai 之后,ai 以人类难以做到的速度,明天产生数千,数万行的代码,这一下子打破了过去那种编写软件的方式

我们似乎无法再回去 “古法编程” 了,就像珍妮纺织机打败了精细的人工纺织一样,然后生产出来了粗糙的纺织线,做出了会在某些情况下不合身的衣服

所以,既然回不去了,我们应该如何编程了

我的想法是:不再使用我怎么能把这块写好的思路,改成如果bug发生了,我如何能再几秒内自动快速修复(医用等要求极高的软件就别这样了)

有点像 erlang OTP 的“任其崩溃”的思路,举个小例子,在ai之前,我们在做 可观测性指标 方面觉得没有ai来到之后方便,ai可以很轻易的做到过去那些繁杂的事情

如果有了无穷无尽,完善至极的可组合性的观测指标,那么再将这层指标交给ai,就很容易让某个混乱的系统回归正轨,也很容易去修复这里发生的bug

当然,说起来容易,做起来还是难,还有方方面面可以从“任其崩溃”的思路可以做出改变的架构思路

但是无论怎么样,“古法编程” 肯定是回不去了,就如同你拿到了不合身的衣服最好的方式是退货退款或者直接换一件,而不是再去改修