← 返回博客列表
博客正文

不会写 Python 的我,先用 Vibe Coding 搞了个教别人学 Python 的网站

零代码神话听起来很爽,但当我真的开始用 Vibe Coding 做 MVP 时,发现一个残酷现实:完全不懂 Python 是不行的。

Reznov Zou
Vibe CodingPythonHoppyPy创始人故事

不会写 Python 的我,先用 Vibe Coding 搞了个教别人学 Python 的网站 😂

零代码神话听起来很爽,但当我真的开始用 Vibe Coding 做 MVP 时,发现一个残酷现实: 完全不懂 Python 是不行的。 所以我干了件看起来有点离谱的事: 先用 Vibe Coding 做了一个 Python 教学网站,再用这个网站逼自己学 Python。

HoppyPy 首页预览


01. “不会写代码也能做产品”的幻觉

先简单交代下背景。

我不是科班程序员,更偏产品和架构那一侧。过去跟代码的关系,大概就是能看懂一点逻辑,能改两行配置,但如果让我从零手写一个 Python 函数,大概率还是发懵。

到 2025 年中,AI 编程工具和 Vibe Coding 这种说法越来越热。AI IDE 帮你生成代码,LLM 可以直接给出整段实现,Agent 甚至能读仓库、跑测试、帮你重构。看多了,很难不产生一个危险的错觉:

“那我是不是可以不学 Python, 直接做一个只说人话的架构师?”

于是我开始试着用 Vibe Coding 做一些实验性的 MVP。 我负责讲需求、定结构、想交互,AI 负责写代码。

刚开始确实很爽。描述一个小工具的功能、界面和交互,几分钟后就能跑起一个 Demo。那段时间我对“AI 时代的开发方式”非常兴奋,仿佛真的找到了某种捷径。

直到我开始认真做稍微复杂一点的 MVP,这个幻觉开始一点点破裂。

02. 用 Vibe Coding 做 MVP 之后,我意识到:完全不懂 Python 不行

当项目从“小脚本”升级成“MVP 系统”,问题就接连冒出来了。

第一个问题是:AI 写的代码能跑,但我看不懂。

AI 写出来的 Python 看起来挺专业,结构也没毛病,功能能运行,甚至有时候连测试都帮你附上了。但我盯着屏幕,脑子里全是问号:这个函数到底在干嘛?这个类设计得合理吗?以后要加需求,应该改哪一层?

第二个问题更要命:项目一复杂,就变成谁也不敢动的黑盒。

当你不懂代码的时候,AI 写出来的东西很容易进入一种状态:你知道它能用,但你完全不敢改。每次想动一个小需求,心里都在打鼓:“这里一刀下去,会不会整个系统都炸?”

第三个问题是:AI 一旦开始跑偏,我根本拉不回来。

有时候提示词稍微模糊一点,AI 就会开始自由发挥。本来只想要一个轻量 API 层,它给你上了一堆抽象封装;本来只想要小功能,它帮你铺了一层过重的架构。这些不一定是 bug,但它们是工程判断问题。你如果完全不懂 Python,很难说出“这里虽然能跑,但写得很丑”。

那段时间我非常清楚地意识到一件事:

在 Vibe Coding 模式下, 你可以不手写每一行代码, 但你不能完全不懂那门语言。

你至少得做到:

  • 大致看得懂 AI 写出来的结构
  • 看得出哪里是“能跑但很土”
  • 在必要的时候,要求它重构、拆分、补测试

否则你只是一个被 AI 拖着走的乘客,而不是握方向盘的人。

所以我只好老老实实面对一个问题:

“好吧,那我得学点 Python。”

03. 市面上的 Python 教程,把我劝退了

下一步当然是找教程。

我像普通人一样搜“Python 入门”“零基础 Python 教程”“Python 快速上手”,结果很快就陷入一种熟悉的无奈。

首先,从安装开始就劝退。

很多教程第一章就是安装 Python、配环境变量、装 IDE、搞虚拟环境。对完全新手来说这也许绕不开,但对我这种已经在用 AI + IDE 写代码的人来说,第一反应只会是:我现在最不想给自己再加一套环境负担。

其次,内容设计是语法驱动,而不是问题驱动。

教程目录通常是:

  1. 变量与类型
  2. 条件与循环
  3. 函数
  4. 模块和包

这些知识本身当然没错,但我在 Vibe Coding 里碰到的问题其实是:

  • 为什么 AI 总喜欢塞全局变量?
  • 这个类是不是写得太重了?
  • 这个异常该不该捕?

很少有教程从“你真的在做项目”的角度来讲。

再加上,它们几乎都缺少即时爽感。

用 Vibe Coding 做 MVP 时,我已经习惯了十几分钟就能看到一个可交互的 Demo,改几句 Prompt 就能看到明显变化。再回去啃那种得先学好几章语法、才能做出一个“Hello World + 计算器”的教程,说实话,我很难坚持。

于是我被卡在了一个很尴尬的位置:

  • 不学 Python,我的 Vibe Coding 会一直是假会
  • 去学传统教程,我又会很快被枯燥感劝退

某天晚上我突然冒出一个念头:

既然找不到适合我的教程, 不如直接用 Vibe Coding 做一个我自己也愿意用的 Python 教学网站, 一边做、一边学、一边分享给和我一样的人。

这个念头一冒出来,就收不住了。

04. 那我干脆:用 Vibe Coding 做一个 Python 教学网站

我给自己定了几条规则。

第一,整个网站尽量 0 手写代码,全程 Vibe Coding。

我只负责描述需求、规划结构、审查产出。前端、后端、课程结构、样式,全部通过 AI + Vibe Coding 完成。

第二,课程必须服务“像我这样的半小白 + 想用 AI 编程的人”。

它不能默认你是传统程序员,也不能假设你对 AI 一无所知,而是站在“已经开始用 AI 了,但基础很薄”的视角设计。

第三,整个过程必须逼迫我自己也搞懂 Python。

AI 写完代码,我看不懂就让它解释;设计课程内容时,我必须真心回答:

“这节课,我自己真的理解了吗?”

如果我说不清楚,就继续让 AI 换一种方式讲,直到我也能讲明白。

于是,一个新的小项目就这样开始了。 我给它起名叫 HoppyPy

HoppyPy 的 Vibe Coding 协作流程图

05. HoppyPy 想解决的,并不是“Python 难”,而是“新手在第一行代码前就掉队了”

做着做着,我越来越确信一件事:

很多新手不是因为 Python 太难而放弃, 而是在写第一行代码之前,就先被环境、教程结构和挫败感劝退了。

所以 HoppyPy 的核心目标不是“把 Python 讲得更全”,而是三件事:

  1. 降低摩擦
  2. 加快反馈
  3. 把知识点和现实能力连起来

如果一个人打开页面就能直接运行代码,改一个变量就能看到结果,再顺着一条故事线持续前进,那他的学习体验会完全不同。

06. 我最后做出来的,是一个什么样的网站?

目前的 HoppyPy,大概有三条我自己比较在意的主线。

6.1 浏览器内直接运行的 Python Playground

左边是可以直接编辑的 Python 代码,右边是输出区。不需要安装 Python,不需要命令行,只要点一下 RUN 就能看到结果。

这对很多从没写过代码的人来说,至少先解决了第一关:

“我连环境都没法搭。”

HoppyPy 浏览器内 Playground

6.2 一条“Python 基础 + 小故事”的主线

课程不是照搬教科书目录,而是用一点故事包装知识点。

比如:

  • 用“魔法背包”讲列表
  • 用“守门人”讲条件判断
  • 用“法典”讲函数封装

每一课都尽量做到三件事:

  • 有一个小故事做记忆锚点
  • 有一段可以直接运行、改一下就有明显反馈的代码
  • 有一个小任务让你亲手试一试

HoppyPy 的故事化课程页面

6.3 一条“Vibe Coding 学习路线”

这条线更贴近我当初的痛点:

  • 怎么和 AI 约定协作规则
  • 怎么写既不空泛、又不会把 AI 问懵的 Prompt
  • 当 AI 写出一大段我看不懂的代码时,应该怎么要求它讲清楚
  • 怎样让 AI 帮我从空文件夹一步步做出一个小项目

这部分我还在持续打磨,但它的目标很明确:

“即使你不手写代码, 也要成为一个合格的 AI 架构师, 至少知道每一步该问什么、该怎么看它的交付。”

HoppyPy 的 Vibe Coding 路线页面

07. 做这个过程中,我踩过的那些坑

坑 1:AI 写得太好,我反而学不到东西

有几次我偷懒,直接一句“帮我写个 XX 功能”,AI 很快就会交出一份优雅实现,连注释和测试都给好了。那一刻最容易产生的想法就是:

“行,能用,下一个。”

但长远看,这会把自己变成只会按按钮的人。

后来我刻意改了习惯:

  • 让 AI 在给代码前先讲思路
  • 要求它把实现拆成多个小步骤
  • 对关键点专门开成一节课讲给“未来的学员”

说白了,也是讲给未来的自己。

坑 2:提示词写得太“艺术”,工程上很灾难

早期我常给 AI 这种指令:

  • “做一个有赛博感的按钮”
  • “让这个页面更像游戏开始界面”
  • “把代码写得优雅一点”

AI 会尽力满足你,但结果往往是:

  • UI 很花
  • 抽象很多
  • 组件层层套娃
  • 看起来高级,维护起来灾难

后来我学会把“艺术描述”翻译成“工程约束”:

  • 布局怎么分
  • 组件拆到哪一层
  • 哪些函数不能太长
  • 数据处理和渲染不能写在一起

对我来说,这是一个很重要的心态转变:

真正的架构师 Prompt, 不是灵感形容词, 而是一套可复用的约束和约定。

我在 AI IDE 里制定协作规则的截图

坑 3:一边做网站一边学 Python,会非常慢,但很扎实

如果我只是去刷教程,也许几周就能“过一遍 Python 语法”。

但一边做网站一边学,节奏会慢很多。

  • 一个知识点会在项目里反复出现
  • 写课程写到一半,发现自己其实没讲清楚
  • 回头看旧代码,会觉得“我之前怎么会允许 AI 这么写”

它确实比刷课慢得多,但也更扎实,因为:

你被迫把学到的每一点东西, 立刻用进一个真实存在的东西里。

对我来说,这个东西就是 HoppyPy。

08. 如果你也想学 Python / AI 编程

写到这里,我并不想把 HoppyPy吹成什么“终极解决方案”。

我只是一个从 2025 年中才认真开始玩 Vibe Coding 的人,这个站本身也还在持续迭代。很多想做的东西,比如完整的 Vibe Coding 路线、更多实战项目,也都还在路上。

但如果你刚好是下面这类人:

  • 想学 Python,却总死在环境配置和枯燥教程上
  • 已经在用 AI 写代码,但总觉得自己“假会”
  • 好奇“完全在浏览器里学编程”是什么感觉

那我有几句特别真心的话想说。

可以不做全栈工程师,但别做完全不懂的乘客。

只要你想用 Vibe Coding 做点像样的东西,至少要学会看懂你那一块业务里最常出现的代码结构。

试着把学习和一个小项目绑在一起。

它可以是自动化脚本、小游戏、仪表盘,也可以是像我这样一个别人也能用的教学小站。关键是:

每学一块,就在项目里用一次。

把 AI 当结对程序员,而不是代写工程队。

多问:

  • 为什么这么写?
  • 能不能换种写法?
  • 这里能不能拆一下?
  • 能不能补测试?

少一点“你帮我把一切都搞定,我不想知道细节”。

至于 HoppyPy,它就是我在这个过程中顺手造出来的一个小东西:

HoppyPy:一个 100% 免费、在浏览器里就能玩的 Python 学习小站 无需安装,无需账号,有 Python 基础主线,也在打磨一条 Vibe Coding 主线。

如果你愿意去看看,并顺手给我一点反馈,我会非常感激。

HoppyPy

想体验浏览器里直接学 Python 的感觉?从第一课开始就行。

打开 HoppyPy,开始第一课

最后也想留个问题:

你在用 AI 写代码的时候,有没有遇到过“代码能跑,但自己完全看不懂,又不太好意思追问 AI 为什么这么写”的时刻?

如果有,我真的很想听听你的经历。