跳到正文
Hexarchh 的博客
返回

如果 AI 会写代码,我为什么还要学这些

编辑此页

有时候刷朋友圈并不是一件特别健康的事情。

尤其是当你发现:

有人暑假打了两个比赛。

两个国一。

而你打开自己的电脑:

make[1]: *** Error 1

那一刻确实很难不怀疑自己。

我也经常会想:

别人是不是已经领先太多了?

我现在学这些东西到底有没有用?

AI 发展这么快,以后程序员还剩下什么?

如果几年之后 Agent 已经能自己写完整项目,那我现在辛辛苦苦学操作系统、编译、数据库还有什么意义?


这种焦虑其实持续过很长一段时间。

尤其是现在 AI 的能力越来越强。

很多以前需要程序员花几个小时写的代码,现在模型几十秒就能生成。

甚至调试、写测试、读代码这些事情,AI 也开始越来越擅长。

于是一个很自然的问题出现了:

我为什么还要学这些?


后来我慢慢改变了这个问题。

以前我问:

AI 会不会取代程序员?

现在我更喜欢问:

如果 AI 可以写代码,那什么能力会变得更加重要?

我现在暂时得到的答案是:

理解系统。


AI 可以帮我写一段 RISC-V 指令实现。

但如果我不知道:

立即数是怎么编码的,

符号扩展为什么存在,

PC 为什么这样更新,

jaljalr 有什么区别,

那么即使测试通过,我依然什么都没有学到。

同样。

AI 可以帮我写一个 Redis 排行榜。

可以写一个 Gin Handler。

可以写一个 PyTorch 网络。

甚至可以帮我实现一个简单的操作系统模块。

但如果所有东西对我来说都是黑盒,

那我其实只是一个 AI 的复制粘贴接口。

这不是我希望成为的工程师。


我开始意识到:

未来真正有价值的能力可能不是:

“我一分钟能写多少行代码。”

而是:

我能不能判断这段代码对不对。

我能不能定位一个诡异的性能问题。

我能不能理解一个复杂系统为什么会出现瓶颈。

我能不能设计一个新的系统。

我能不能在没有现成答案的时候继续往下走。


所以最近我开始接受一件事情。

我的成长可能没有别人那么容易被展示出来。

比赛成绩很好展示。

国一很好展示。

奖学金很好展示。

论文很好展示。

但很多东西很难展示。

比如第一次真正理解 ELF。

第一次看懂 .symtab.strtab

第一次理解函数调用为什么能返回。

第一次自己实现 DiffTest。

第一次看懂一个大型项目的 Makefile。

第一次发现自己可以顺着一个 bug 一层一层追下去。

这些东西不会出现在朋友圈。

但它们确实改变了我理解计算机的方式。


我当然还是会羡慕那些很厉害的人。

看到别人取得成绩,也还是会焦虑。

但我现在不太想因为这种焦虑随便改变方向了。

因为如果每天都追着”现在最厉害的人在做什么”跑,

最后很可能什么都学不深。


现在我更愿意做一件有点慢的事情:

继续写我的 NEMU。

继续学操作系统。

继续学分布式。

继续研究 AI Infra。

继续把那些以前觉得神秘的东西拆开。

也许几年以后再回头看,

真正让我走得更远的,

不是某一个暑假的两个奖。

而是我终于开始真正理解:

计算机到底是怎么工作的。


编辑此页
分享这篇文章:

上一篇
我想做的是 Systems for AI