[控场AI]
观点碰撞· 3 分钟阅读· 1,715 字

Vibe Coding做产品:从Demo到上线的千倍难度差距拆解

Vibe Coding做产品:从Demo到上线的千倍难度差距拆解

Vibe Coding做出好产品的真正难度在于产品思维而非AI技巧

一位产品经验丰富的创作者用Vibe Coding做了两个AI资讯站点,引发大量追问。他指出做炫酷Demo难度为1,但做能长期运行的产品难度为1000。关键不在于Prompt技巧,而在于技术选型(选择极简静态站点架构降低维护成本)和架构设计(防止AI生成的代码变成屎山),体现的是产品经验和工程判断力。

Vibe Coding的魔力与误解:难度1 vs 难度1000

最近,一位拥有十余年产品经验的创作者用Vibe Coding的方式做了两个站点——AI资讯速览(每天从20多个英文一手信息源提炼AI资讯)和AI论文简报(每天分析300多篇AI论文,挑选精华用通俗语言解读)。发布后,社交媒体上大量用户追问:这两个站究竟是怎么做出来的?

什么是Vibe Coding? Vibe Coding是2025年初由OpenAI联合创始人Andrej Karpathy提出并迅速流行的编程范式。其核心理念是:开发者不再逐行编写代码,而是通过自然语言描述意图,让AI(如Claude、GPT-4、Cursor等)生成完整的代码实现。开发者的角色从"写代码的人"转变为"描述需求并验证结果的人"。这一范式的兴起得益于大语言模型在代码生成能力上的飞跃——现代LLM不仅能生成语法正确的代码,还能理解业务语义、处理边界情况、甚至主动提出架构建议。"Vibe"一词暗示了其随性、直觉驱动的特质:你只需要有一个模糊的感觉,AI帮你把它变成现实。

这种追问背后,隐藏着一个普遍的误解:Vibe Coding嘛,不用写代码,"我上我也行"。很多人期待的是一个神奇的Prompt、一个Skills文件、或者某个不为人知的AI使用技巧。但真相是——做这两个站没有任何花哨技巧,一个Skills文件都没用,甚至连需求文档都没写。

作者给Vibe Coding的难度打了一个极具冲击力的分数:

  • 做一个看起来很炫酷的东西,难度 = 1
  • 做一个真正实用好用的自用工具,难度 = 10
  • 做一个能发布给用户、长期稳定运行的产品,难度 = 1000

这篇文章就来拆解这个"千倍差距"究竟体现在哪里。

技术选型:大道至简的反向炫技

从业务需求出发,而非追逐技术流行度

这两个站都是个人项目,不是团队协作,也不是盈利项目。核心需求非常明确:后期维护成本必须极低,不想每天花时间运维。同时,它是纯信息站,不接商单,不需要动态广告和推荐算法。

基于这些判断,作者选择了一套极其"原始"的技术栈:Python脚本 + Jinja2模板生成静态HTML,部署到Cloudflare Workers。整个项目的Python依赖只有6个包。

Jinja2与静态站点生成 Jinja2是Python生态中最成熟的模板引擎之一,最初为Flask Web框架设计。它允许开发者在HTML文件中嵌入Python风格的逻辑(循环、条件判断、变量插值),在构建时将数据渲染为静态HTML文件。这种"静态站点生成"(Static Site Generation,SSG)的思路并不新鲜——Hugo、Jekyll、Eleventy等工具都是同类产品——但用Python脚本直接驱动Jinja2意味着完全的定制自由度,没有框架约束。静态HTML部署到Cloudflare Workers后,内容直接从CDN边缘节点分发,无需服务器计算,不仅速度极快,还几乎没有运维负担。这与Next.js等需要Node.js运行时的框架形成鲜明对比:后者功能更强大,但每次请求都需要服务端计算资源,维护复杂度也成倍增加。

技术选型思路

这个选择在很多人看来甚至有些"落后"。以前招聘程序员时,都会考虑用流行的技术栈(比如React),方便招人、降低成本。但AI编程时代带来了一个根本性变化:AI什么语言都会写,你可以真正从业务需求角度来考虑技术选型,而不是被团队技能或招聘市场绑架。

对抗"屎山代码"的架构设计

作者坦言,这是他第一次用Vibe Coding做产品,最担心的就是项目变成"屎山代码"——AI越改越乱,人类无法阅读和维护。

屎山代码的工程学根源 "屎山代码"对应软件工程中的经典反模式"Big Ball of Mud

分享:

相关推荐