夜雨聆风学习资料网

ARTICLE · 1212270

从补全代码到独立做小项目,AI编程助手进化背后,非程序员能碰的边界没变多少

从补全代码到独立做小项目,AI编程助手进化背后,非程序员能碰的边界没变多少

去年夏天的时候,在杭州工作的周姐告诉我她想要做一件事:从公司的每个月两千多张报销单中抽取数据,并且把这些数据按照部门和时间进行分类整理好之后再做成一个表格。但是她并不会编程,所以只能用Excel里的宏来实现这个功能,而且这个宏也只能运行最简单的操作。

她说AI编程助手很好用,于是就去试试看。

结果花了三个周末,做出来一个能跑的小工具,但她说,真正卡住她的地方,跟写代码本身关系不大。

01先看一组数字,再看它没说的部分

2026年8月的时候,阿里巴巴云就发布了1份关于开发者调查的数据报告,在这份报告中提到了1个数据点:使用人工智能编程助手的开发者中有超过6成的人表示他们会用它来完成之前没有想过要做的工作。

但是报告中有一句话很小,很容易被人忽视掉,即在这其中完成并上线的任务数量只占总数的三分之一左右。

我专门去查阅了这份报告最初的口径,即发起过的任务,而不仅仅是完成的任务。所以你使用助手的时候,在输入一句帮我写个爬虫之后,这就算一次尝试,是否成功运行以及是否真正使用它,并不是一回事。

周姐的经历刚好卡在这两个数字中间。

02她的第一个周末,卡在环境上

周姐用AI写了一个Python脚本,内容很清晰、说明也很全面,于是就把这段代码复制到了本地,并且双击运行之后出现了一行红色的文字:找不到模块。

她把图片发送给了人工智能,人工智能告诉她说首先要安装Python,然后安装一些库,于是她按照指示去做,但是中途遇到了一个问题:权限不够。她询问原因的时候,人工智能告诉她要用管理员的身份来开启命令行界面,但是她并不知道什么是命令行。

这就是非程序员用 AI 编程的第一个真实边界:AI 能给你代码,但给不了你运行代码的那台机器。

会写代码的人,在心里已经有一个默认的前提了,比如Python装在哪里、包管理器叫什么名字、路径怎么设置。而在AI生成代码的时候,则是没有必要告诉用户要先完成3件事情,因为对于训练数据中的大多数人都不存在这三件事的概念。

周姐用了整个星期六和日来编写这段脚本,并且把所有的程序都运行了起来。而这个程序 itself只需要人工智能用30秒钟就可以完成编写。

03第二个周末,卡在改需求上

可以跑腿,但是得到的数据很混乱,报销单的形式有很多种,一种是第二页、另一种是在表格里面、还有一种是扫描过来的几张。

她说有些抓不住,AI就给她修改了之后又让她去尝试,但是每次都是找不到。于是她变得很急躁。

根据她和人工智能的交流记录来看,问题出在她的表述方式上。她说的是抓不住,而人工智能只能猜测这是哪一种无法抓住。是格式的问题、编码的问题呢,还是文件本身就是一张图呢?

非程序员的第二个边界,不是不会写代码,是不会把问题描述成机器能理解的样子。

会编程的人在遇到bug的时候首先会去寻找原因:是出现在了读取环节还是在解释的时候?他会把错误消息、输入样例以及预期结果一并交给人工智能。周姐给出的答案是不行。

并不是因为她愚蠢,而是因为缺少能够解决这个问题的语言,而这种语言,在编程的学习中是最基本也是最难最快就能掌握的部分。

04第三个周末,她做出来了,但只敢自己用

最后一个工具也成功运行了,周姐用它来处理上个月的报销单,节省了大概四个小时的时间。

但是她没有把这份工作交给同事们去做,因为她发现这份工作中有一个规定说如果要使用这个工具的话就必须把自己的电脑上原有的文件路径改成新的才行,而要把一份文件从一台电脑迁移到另一台电脑上却需要修改文件路径。所以她不知道怎样才能把这份工作做成可以双击运行的程序。

AI 编程助手把写代码这件事的门槛降得很低,但让代码在别人机器上跑起来这件事的门槛,几乎没动。

我认为该观点是正确的,在过去的两年里,AI编程助手由仅仅能够填写一串代码发展到了可以独立完成一个小项目的程度——给它一个需求之后,它可以自动生成整个文件的结构、依赖关系以及测试案例。这是真的进步。

但是对于非程序员而言,所遇到的界限并不大,因为这些界限并不是在写这个环节上出现的,在写之前对环境进行的准备工作以及写后对系统的部署与交付。

05那非程序员到底能用它做什么

我的判断是:能用到自己用这一层,用不到给别人用这一层。

因为是自己使用的缘故,所以可以接受路径被设定好、界面很丑、有时候还会出现错误的情况。周姐的工具就是这样的,她自己清楚怎样避开这些陷阱。

把东西借给别人用的话,就需要考虑它的兼容性问题以及各种不正常的输入情况,并且还要按照说明书来进行安装。虽然人工智能可以帮我们写出上述内容,但是首先要了解的是这些事情的存在。

如果我不是程序员的话,想要尝试使用人工智能来做一个工具的话,可以有以下两点建议:

第一种方法就是把需求分解得越少越好,不要一开始就提出帮我们开发一个报销系统的请求,而是要先提出帮我们提取出Excel文件中的第2列的要求。即使是人工智能也无法错误地解读数据,你也能够检验它的正确与否。

第二点就是如果出现错误的话,请将所有的错误信息都复制到AI那里去,并且不要对它进行解释了。因为报错的信息里面包含了找出故障所必需的重要线索,如果你把它转达给别人就会失去这些线索。

周姐告诉我其实她得到的最大好处并不是这个工具,而是她才意识到一个道理:人工智能可以帮她编写程序,但是不能教会她去了解自己所做的事情的意义。

我认为这句比所有的报告中所提到的数据都要真实一些。

相关学习资料