闽公网安备 35020302035485号
4.编译时不通过,我又看不懂时,我就让AI来解决。
3.测试通过后再commit
这个过程中,有一两次的问题,它始终解决不了。我提出了我自己的解决方案,再让它写代码。最后也可以解决。这下好了,AI把我的前端短板给抹平了。有点幸灾乐祸,前端被AI代替似乎有些容易。最后,我再告诉AI:写Ansible脚本将应用部署到一个只开放SSH的远程机器上,并实现蓝绿部署。几分钟后,我阅读着作为DevOps才能写的Ansible脚本,我有些震惊。因为AI给出了一个不错的方案,并画出了部署流程图:
本地环境 目标服务器
┌─────────────┐ ┌──────────────────┐
│ 1.构建镜像 │ ────► │ 3.加载镜像 │
│ 2.保存为TAR │ │ 4.启动新环境 │
└─────────────┘ │ 5.健康检查 │
│ 6.切换流量 │
│ 7.停止旧环境 │
└──────────────────┘
作为一个有软件工程思维的程序员,连部署脚本也需要能在本地测试。接着AI开始写Vagrantfile、bash启动虚拟机。事后,我想过,对于没有软件工程思维的人,只要给他一个具有软件工程要求的Prompt,这个人是不是也就可以拥有软件工程能力了?当我真正想要部署这个产品到公网时,买服务器的过程,手工在浏览器上点点点操作时,我前一秒庆幸AI无法做到吧,后一秒又想:这个过程似乎AI也可以做到。只是时间问题。2.没有任何单元测试 接手的人,可能也只能依赖AI来理解和修改。事后,我才想到,应该在prompt里就要求AI了。
案例2: 一个http网关,希望实现对response中的文本进行替换,同事让AI一顿输出一个非常复杂的lua脚本。作为leader,我很头大,因为这意味无法维护,出问题,也没有人能修。最后,团队里的一个同事提醒:Nginx本身就有这样的功能,不需要自己实现。