客户用 AI "氛围编程"接管了开发,该怎么办?
讨论摘要
一位拥有 10 年以上经验的开发者(用户 piscator)讲述了自己的困境:他为一个客户开发市场类 Web 应用已经一年,但客户在看到 AI 辅助的无代码平台在小项目上取得成功后,要求在核心业务系统上也采用同样的方式。尽管开发者反对,客户还是开始通过 AI 代理工具自行编写代码,仅一周就往项目中添加了约一万行代码。
开发者的主要担忧包括:这些 AI 生成的功能虽然表面上能运行,但应用性能已经明显下降;代码的可维护性堪忧;项目尚未上线部署,而他此前对整个代码库架构保持的清晰心智模型和文档已被打破,他不再能完全掌控整个系统。更雪上加霜的是,客户还解雇了产品经理,自己直接管理一切。
HN 社区的讨论非常热烈,主要围绕以下几个方向展开:
一、代码所有权与责任划分。 多位评论者建议将客户贡献的代码视为客户自己的责任,就像大公司中不同团队各自”拥有”自己提交的代码一样。开发者应该明确边界,把自己定位为”客户调用的 API”,只负责核心基础设施的质量。
二、商业策略调整。 不少人建议大幅提高维护和调试的费率。当 AI 生成的代码不可避免地出问题时,清理和修复工作将带来丰厚的收入。有人直言”你可以在维护费上赚大钱”。
三、技术管控措施。 有人提议实施分支保护和 Pull Request 审查机制,但帖主表示客户会将这些反馈视为阻碍而非学习机会,因此放弃了这个方案。
四、退出策略。 多位资深开发者建议做好文档记录并考虑退出,避免在系统出故障时被追责。核心观点是:”当客户不再信任你的专业判断时,这段合作关系其实已经破裂了。”
五、历史对照。 有人将此比作早期网页设计时代,客户因为发现了 DreamWeaver 就解雇专业开发者的情形。建议等待失败发生后再以高价接手修复工作。
六、安全风险警示。 有评论者分享了类似经历,客户用 AI 编写的代码导致了管理员权限绕过漏洞和个人隐私数据泄露等严重安全问题,甚至有客户误删了生产数据库。
帖主在回复中表达了对代码质量下降的惋惜,承认当前的合作关系和状况”绝对不理想”,并在认真考虑”平稳退出”作为最佳方案。
精选评论
jatins:将此类比为大公司的多团队协作场景。就像不同团队提交的代码由各自团队”拥有”一样,客户用 AI 写的代码也应该由客户自己负责维护和调试。开发者应该调整定价来反映这种新的工作模式。
blooalien:回忆早期网页设计时代,客户在发现 DreamWeaver 后就取消专业开发者的合同,让自家青少年来做网站。建议坦诚告知风险,无论结果如何都能获益——如果客户听从建议,合作继续;如果客户坚持己见,等代码崩溃后再以高价提供修复服务。
HyprMusic:分享了多个类似案例的亲身经历,包括一位客户删除了生产数据库,另一位客户的 AI 代码中存在管理员权限绕过和个人信息泄露等严重漏洞。强调对于无视专业警告的客户,容忍度极低。
mrothroc:指出非程序员严重低估了编码之外的工程工作量,尤其是维护——这在历史上一直是软件生命周期中最昂贵的阶段。建议让客户通过亲身经历来理解这一点。
meetingthrower:建议建立清晰的所有权边界,把自己定位为”客户调用的 API”——你负责构建高质量的基础设施,客户自行维护他们添加的部分。
rwg1138:预言项目最终会失败,而开发者会被归咎为替罪羊,而非 AI 生成的代码。建议立即开始寻找新工作。
Dumblydorr:警告必须以书面形式明确责任边界,避免被”正式绑定”到客户用 AI 生成的低质量代码上。
jorisboris:提出一种务实的共存方案:构建隔离的、健壮的基础架构,同时允许客户在受控环境中进行”氛围编程”,认为这可能是行业未来的发展方向。