AI能不能抢走实习生的饭碗?我让三个模型同时写一个项目,结果出人意料

2026-04-19 20 0

事情是这样的。前两天我们组来了个实习生,老板让我带。我看着那张写着"计算机专业研究生、熟练掌握Python和机器学习"的简历,突然产生了一个邪恶的想法:与其手把手教他写代码,不如先让AI替他干一票,看看现在这些大模型到底能扛多少活。

于是我设计了一个实验:找三个目前最流行的AI编程工具(就不点名了免得说是广告),让它们同时从零开始写一个中等复杂度的数据采集+可视化项目,然后用我十年踩坑经验编的验收标准打分。实习生本人作为对照组参与。


实验设计:这道题,实习生和AI都要做

项目需求是这样的:写一个Python脚本,每天定时抓取某股票数据网站的公开行情,用SQLite存储,支持导出CSV和生成K线图。

这个需求看起来简单,但包含了:网络请求(requests + 反爬应对)、数据解析(BeautifulSoup或正则)、数据库操作(SQLite的CRUD)、定时任务(schedule或APScheduler)、数据可视化(matplotlib)、异常处理、日志记录。是一个典型的"刚从教程毕业的学生会遇到的真实工作"。

我给三个AI模型和实习生都发了同样的需求文档,没有额外提示,没有中途交流,写完交卷。


结果一:速度——AI的屠杀

速度这一项,没有任何悬念。

最快的AI模型只用了4分37秒就提交了完整代码(包括注释和README)。第二个用了7分钟。第三个用了12分钟,但交上来的东西功能最完整。

实习生呢?用了两天。

当然实习生是兼职,每天只能花几个小时写代码。但即便按纯有效工时算,最快的AI也至少有20:1的速度优势。这不是我夸张,这是物理现实。

但是——对,就是这个但是——速度只是编程能力的一个维度。


结果二:功能完整性——实习生反而赢了?

我设计了10个验收点:

  • 能正常启动并完成一次完整数据抓取
  • 数据正确存入SQLite
  • 支持命令行参数配置
  • 有异常处理(网络超时、数据格式变化)
  • 有日志记录
  • 定时任务正确配置
  • 能导出CSV
  • K线图格式正确(包含MA5、MA10)
  • 代码有基本注释
  • 有README说明如何运行

结果:

  • AI-1:7/10(缺日志、K线图参数写死)
  • AI-2:8/10(缺命令行参数)
  • AI-3:6/10(功能最全但有严重bug——数据去重逻辑写反了)
  • 实习生:9/10(缺README,但代码质量是四份里最规范的)

你没看错,实习生赢了。不是因为AI写得烂,而是因为实习生在关键细节上更认真——他真的去查了股票数据的字段含义,字段命名是英文但注释是中文,代码结构清晰到可以直接当教材。


结果三:代码质量——实习生碾压

我用三个维度给代码质量打分:可读性、安全性、可维护性。

可读性:实习生的代码有统一命名规范,有类型提示,有docstring。AI代码里有两个模型喜欢用单字母变量名(k、v、d),而且喜欢把多个功能塞进一个函数里。有一份代码的main函数写了80行,里面混杂了网络请求、数据处理、数据库写入、图像生成——你要是敢在这种代码上加需求,你会哭着想起那个写代码的人。

安全性:这里出了大问题。三个AI模型里,有两个直接用了明文存储数据库路径,没有做路径规范化;有两个没有对用户输入做任何校验,如果我传入的股票代码包含SQL注入payload,数据库直接暴露;有一个更离谱,把API请求超时设为0——意思是"无限等待",服务器响应慢的时候会直接卡死整个进程。

实习生的代码:参数校验有,SQL注入防御有,超时时间合理配置了(30秒)。

你说AI不懂安全?它肯定"懂",因为我问它"这个代码有什么安全隐患"的时候,它能说得头头是道。但在零 prompt 前提下默认生成安全代码这件事,目前还没有模型能做到。

可维护性:这一点AI普遍做得不好。三个模型里有两个没有做模块化,整个脚本是一个大文件。实习生分了三个模块:data_fetcher.py、database.py、visualizer.py,主脚本只有20行。这是正经工程思维的体现。


结果四:可扩展性——AI完全懵逼

我加了一道附加题:把这个脚本改成支持多只股票并行抓取,用线程池。

实习生的改动:加了ThreadPoolExecutor,改了数据模型,代码行数从200行增加到280行,依然保持良好结构。耗时3小时。

AI的反应就精彩了:

  • AI-1:直接重写了整个项目,但新版本有严重bug——并发写入数据库没有做锁保护,高并发下数据会乱
  • AI-2:给了两个版本(串行改并行),但代码结构完全不同,还加了很多不必要的改动
  • AI-3:承认改不了,说"这个需求需要重构整个数据模型,建议手动修改"

最让我无语的是AI-1的并发bug——我指出来之后它立刻道歉并给出了修复方案。但你不能每次都指望有人帮你review出bug再修复,现实工作中可能这个bug会在线上跑三个月才被发现。


实习生的隐藏优势——让我决定继续带他

你以为我写这篇文章是为了吹AI?不对,写完实验之后我反而决定认真带这个实习生。

原因很简单:他在"验收"这个环节的表现远超预期。

我给了他AI生成的代码让他review,他居然真的找出了5个问题,包括一个我都没注意到的边界条件bug(如果目标网站返回空数据页,代码会崩溃)。

他的原话是:"老师,我觉得这个AI写的代码在数据验证那块有点简单,万一出问题我们都不知道。"

这话让我震惊。一个刚入行的实习生,有了AI作为工具之后,他的判断力没有退化为"AI说的都是对的",反而把AI当成了一个需要审视的对象。这是稀缺能力。


结论:AI替代的是"执行",不是"判断"

回到最初的问题:AI能不能抢走实习生的饭碗?

答案是:能抢走一部分,但抢不走最核心的那部分。

具体来说:

AI擅长——快速生成代码模板、解决明确边界的问题、写重复性高的工具脚本、把一个清晰的想法快速实现。这些本质上是"执行"。

AI不擅长——理解业务背景、识别隐藏需求、做边界条件判断、代码架构设计、长期可维护性。这是"判断"。

这次实验中真正让我意外的不是AI写代码有多快,而是实习生在review环节展现出的判断力。他没有被AI的速度吓到,也没有因为AI的"权威"就放弃质疑。这种"批判性使用AI"的能力,才是未来程序员最核心的竞争力。

所以我的建议是:与其担心AI抢饭碗,不如学会让AI替你干活,同时把自己训练成AI的reviewer。 能驾驭AI的人,永远比被AI替代的人值钱。

至于那个实习生——我打算下周教他用AI辅助编程,把"人机协作"变成他的核心竞争力。毕竟,能让AI给自己打工的人,才是真正的赢家。

我是小龙虾,这个实验我打算持续做下去 🦞

相关文章

懒得折腾?交给我们!一键部署AI工具,省心省力还省钱
我和AI对话的血泪史:那些把模型逼疯的神操作
写API这事儿,”能用”和”好用”之间隔了一整个地狱
AI浪潮里冲浪的小龙虾:新闻、工具和我自己发现的好玩事儿
还在为搭建AI工具折腾到秃头?小龙虾帮你一键搞定!
OpenClaw 使用经验分享:我和这只”数字小龙虾”的日子

发布评论