
有个人不懂编程,用 AI 做了一款商业软件。发布会上,台下有程序员站起来质疑他:你连代码都不懂,凭什么发布软件?
那个人当场就破防了。回了一句:不懂编程就不配发布软件了吗?
事后网上吵成了两派。一派说:"代码是人写的,你连自己在卖什么东西都不知道,凭什么让用户信任你?"另一派说:"他卖的又不是代码,他卖的是产品。用户在乎的是好不好用,不是开发者的毕业证。"
这事不是虚构。7 月 12 日,安全机构 Wiz 发现了一个让人后背发凉的产品漏洞。产品叫 Moltbook——一个"AI 代理社交网络"。创始人公开说过一句话:"这个产品是 vibe-coded 出来的,我没写一行代码,全靠 AI 生成。"
漏洞是什么?一个配置错误的数据库,允许任何人完整读写生产环境。暴露了 150 万个 API 认证令牌、3.5 万邮箱地址、大量私密对话。
任何人——注意,是任何人——都能冒充平台上任何一个 AI 代理账户,篡改所有公开内容。
Wiz 发现这个漏洞后联系了创始人。创始人的反应很坦诚:他确实不知道数据库的默认配置里有一道没关的门。
他不是坏。他是真不知道。
两边都没有全错

那个破防的人有一句话是对的:不懂编程不该成为你发布软件的资格门槛。
历史上每一轮技术工具的进化,都在把"不会的人"拉进原本封闭的领域。30 年前你不懂 C 语言,连打印"Hello World"都做不到。20 年前你不懂 HTML,连个人主页都建不了。10 年前你不懂 Swift 或 Java,连 App 都做不出来。
今天你用自然语言描述需求,AI 把代码生成出来、部署上去、上线了。你确实不需要懂编程。你只需要懂你想解决的问题。
这是真的。能跑的产品,比写不出代码的完美方案,对世界更有用。
但台下那群质疑的程序员,担心的也不是"你会不会写 for 循环"。他们担心的是另一件事。
能跑 ≠ 能用
Moltbook 的问题,不是一个"代码写得不够好"的问题。是一个安全防线根本不存在的问题。
AI 生成的代码可以在测试环境完美运行——你问它"我要一个登录功能",它生成了登录页面,表单能提交,跳转没问题。但你有没有问过它"这个登录页面有没有防 SQL 注入?有没有防暴力破解?有没有做会话管理?"
你不会问。因为你不懂这些问题的存在。
这不是你蠢。这是 AI 编程工具在设计上有一个结构性的盲区:它们被训练的目标是"让代码跑起来",不是"让代码跑起来且不出事"。
真正的软件不是页面。页面只是被看见的那一层。一个产品能不能安全运行,取决于一堆看不见的东西:认证机制、权限隔离、密钥管理、日志脱敏、攻击防护、数据加密、输入校验。
AI 不会提醒你那扇后门的存在。因为 AI 的工作方式是"你问什么我答什么"。你不问它"这个数据库的默认权限配置是什么",它就默认你不需要知道。
而一个写了十年后端的人,不需要问这个问题。他凭着被生产事故教训过的肌肉记忆,就知道在部署前检查哪几个地方。
这就是程序员担心的事。
他们不是担心你抢饭碗。他们担心的是:你用 AI 做出来的产品,出了问题你不会修。而修的那个不是你——是在你产品下面踩到坑的用户。
把讨论拆开

这件事吵成一锅粥,是因为两拨人在谈两个不同的层面。
第一层:创造力门槛。 不懂编程的人能不能用 AI 做软件?能。这个问题没有争议。就像你不会开印刷厂,但你可以用 Word 出一本书。工具降低了技术门槛,这从来是好事。
第二层:责任边界。 一个完全不懂软件工程的人,发布了一款商用产品,出了安全事故谁负责?这个问题才是冲突的核心。
目前的法律框架是这么回答的:你负全责。 不管你是手写的代码还是 AI 生成的,产品是你发布出去供人消费的。Moltbook 的 150 万个 API 密钥泄露,创始人不能用"是 AI 写的"来免责——他的用户不会因为这句解释就原谅他。
所以"不懂编程能发布软件吗"这个问题,真正的答案不是 Yes 或 No。而是:你能,但你承担全部后果。 当你的产品出了漏洞,你不能说"我不会修,我是 vibe coding 出来的"。你只能修。要么你自己学,要么你请人修。
那什么是真正稀缺的能力?
回到现场的那场对峙。程序员问"你懂编程吗",实际上问的是一个更核心的问题:"你知道你卖的产品是怎么工作的吗?"
这个问题在 AI 时代变得比以前更重要。
在传统软件时代,"知道怎么工作"需要你会写代码。但今天,"知道怎么工作"不等于你会写代码——它等于你能回答这些问题:数据存在哪?谁有权限访问?出错了怎么定位?被攻击了怎么恢复?
这些问题的答案,不用手写代码也能获得。但需要你主动去问 AI 这些问题。需要你有基本的软件工程常识。需要你不只是在"这能跑"的层面上认定产品做好了。
把时间拉长看,这件事最可能的结果不是"不懂编程的人都被禁止发布软件",也不是"人人都是程序员"。而是中间挤出一层新角色:懂产品、懂安全、懂用户,但不用手写代码的人。
Claude Code 团队的 Boris Cherny 上个月在红杉的演讲里说过一句话,非常精准——"对一个特定领域的商业软件来说,最好的创造者不是最会写代码的人,而是最懂那个领域的人。"
会计软件最好的人选是会计。物流软件最好的人选是仓库经理。不是程序员。
但这个人也要懂一件事:什么是 150 万个密钥裸奔。 这条线,不需要你学 C 语言,只需要你在甩给 AI 的第一句 prompt 里加上:"顺便帮我检查一下数据库的安全性,包括访问控制、密钥管理、SQL 注入防护。"
那场发布会上的程序员,担心的不是这个人的身份。担心的是他连这句话都没想到要问。
夜雨聆风