儿童编程 学习动力 游戏化 家长指南

排行榜 + 宠物养成:怎么让孩子主动想写代码

BabyCode 团队 · 2026-06-06 · 阅读约 9 分钟

贴纸试过,屏幕时间当筹码试过,"父女一起写代码"的亲子时光也试过, 都没撑过第二周。后来给 App 加了排行榜和一只电子宠物,7 岁女儿 开始在早餐前自己要求写代码——6 个月、200 多个孩子的真实数据复盘。

如果你读到这里,你大概已经过了最难的一关:让孩子愿意 尝试 编程。真正难的是 保住 那点火苗——撑过第 2 周 的新鲜感、撑过第一次 syntax error、撑过"我今天不想写"的那句话。

小小程序员(BabyCode) 是我 为自己孩子做的项目,过去 6 个月里我同时跟踪了她和另外 200 多个 孩子的使用行为。这篇文章是我希望一开始就能读到的那个版本。

哪些方法没撑过去

我花了三个月试错。简版列一下,省你时间。

1. 贴纸墙

贴纸买了恐龙形状的。规则是:完成一关贴一张。撑了两周,孩子问 "能不能不写关,直接拿贴纸?"——贴纸是被卖的那个东西, 不是奖励。贴纸法对本来就愿意做的事有效(刷牙、上厕所),但 编程是要我们去"推销"的事,贴纸当奖励没动力。

2. 屏幕时间换编程

"完成 3 关换 30 分钟 Minecraft。" 协议达成,执行稀烂。Minecraft 一开,孩子就飞速刷关——跳过讲解、抄答案、不留痕迹。我们最终 奖励到了完成,没奖励到学会

3. 编程当亲子时光

最舍不得放弃的就是这个。我是真的喜欢和她一起写。但我注意 到一个模式:只要我坐在旁边说"哎要不要试试这样……",她就不再 独立解题了。她会等我的提示。亲子是真的,学习没了。我只能 退后一步。

真正起作用的 3 件事

踩完所有坑之后,我把 BabyCode 重做了一遍,核心就 3 个功能。 都不是原创,全部是从"已经知道怎么让 7 岁孩子不停点"的 游戏里搬来的。我只是把目标从"金币"换成了"代码"。

1. 个人排行榜(不是全球榜)

这是最大的单点改动。我加了一个 个人记录页, 只显示孩子自己的历史:最快打字速度、最高准确率、 最快通关时间、最多次重玩的关卡、最近破过的纪录。

故意没加 全球排行榜。原因:7 岁孩子的 "最快"放在任何公开榜上都慢。跟 12 岁的比,是羞耻配方; 跟上周的自己比,是骄傲配方。

技术实现不复杂,可以直接看 /leaderboard 页 和每关行级数据。设计上的难点是放哪些字段。我选了这 几个:

24 小时角标才是隐藏 MVP。我女儿现在每天都会去排行榜看一眼—— 不是因为必须,是因为想看自己的 ⏱ 是不是还在绿色。 "还在绿色"这个设计就是巧:角标 24 小时后自动消失, 给孩子一个微小的、天然的"再来一关"理由。

2. 一只靠真实学习来升级的宠物

这宠物就是个电子鸡。完整想法是:每完成一关,宠物涨经验; 升级会换新造型(蛋 → 小鸡 → 猫 → 狐狸 → 龙);升级时 🎉 彩屑 动画 + "升级啦!"弹窗。

这里有个我改 4 轮才改对的点:宠物的 XP 必须 来自 真实学习行为,不能来自点击。如果孩子能连点刷经验, 宠物就从"奖励"变成了"斯金纳箱"。所以规则是:

第二条——"破纪录奖励"——就是排行榜和宠物之间的桥梁。打破自己的 纪录不再是排行榜上的一行字,而是能喂宠物。于是"我想打更快" 和"我想让我的龙进化"变成了同一个目标。

3. 破纪录那一刻的"现场反馈"

第三轮迭代时我才意识到。排行榜管的是回看,宠物管的是 期待,缺的是当下那一秒的反馈—— 就在孩子刚刚打破自己纪录的那一瞬间。

所以当一关结束、出现新的 WPM / 准确率 / 时间时,App 同时触发 3 件事:

三个要一起才有效。光 toast 容易错过;光音效没头没脑;toast + 音效 不更新排行榜只是一次性高潮。完整的组合把"那 1 秒"变成了一段 孩子可以回去翻、想要重演的记忆。

6 个月的数据

BabyCode 2025 年 12 月上线。我不会假装这是严格的 A/B 测试—— 都是观察性的,样本也就 200 个活跃账号。但趋势线一致到 我敢信。

行为指标 没排行榜 + 宠物前 6 个月后
次日回访率 58% 72%
7 日回访率(一周后还回来) 11% 34%
单次平均时长 6 分钟 14 分钟
活跃孩子单次通关数 1.4 3.1
家长报告"孩子主动要求写代码"(每周) 0.4 次 2.8 次

我最骄傲的是最后一行。家长跟我说,孩子会在上学前、周末、 写完作业后,自己提"我想写一会代码"。"主动要求"是 unprompted 的——这就是整个目标。

为什么全球排行榜不适合这个年龄段

我想专门说这一点,因为我加的每个家长群最后都有人提 "加个全球榜呗,小孩都爱比"。对 6–9 岁是坏建议。失败路径 如下:

  1. 孩子第一次玩,看到排行榜
  2. 找自己——找不到
  3. 问:"为什么没我?"
  4. 家长:"再多打几关就有了"
  5. 孩子打 10 关
  6. 还是找不到,因为前 10 都是老玩家
  7. 孩子说:"我永远也上不了榜"
  8. 退出

个人排行榜没有这个失败模式。你永远在榜上,永远在跟 自己比。整局游戏就是"做比上周更好的自己"。

对 11+ 的孩子,已经有竞争心性的,加全球榜可以, 可能还有激励作用。但 Deci & Ryan 的自我决定理论 (1985)研究指出,对 6–10 岁,掌握型目标 (比过去的自己强)几乎在所有场景下都跑赢 表现型目标(比别人强)。

如果让我重来,我会改的两件事

  1. 宠物加得太晚。我以为游戏化是"锦上添花"。 实际是"承重墙"。宠物才是把"我得做这件事"变成 "我想做这件事好让我的龙进化"的关键。Day 1 就该上。
  2. 排行榜初版太稀疏。最初顶部就 4 张卡, 孩子根本不去看。加入"本周"统计 + 24 小时新鲜角标之后, 日活访问率从 18% 涨到 51%。教训:排行榜必须感觉 活着。如果一周过去没任何变化,孩子没有 看的理由。

带你的孩子试试

想看实际效果, BabyCode 是免费的—— 无需账号、无需安装,浏览器里直接跑。三条线(打字 13 关、 Python 12 关、C++ 7 关),中英双语,个人排行榜 + 宠物在 记录页

如果你家孩子试过其他编程站都没撑住,我真想知道排行榜 这套对你有没有用。邮件或者 社区留言 都行——我正在公开迭代。

关于这个站

BabyCode 是我 2025 年 12 月开始为自己 7 岁女儿做的副业。 本文数据来自真实用户账号(已获家长同意)。站内无广告、 无内购、无追踪像素。 了解更多 →

🐣 免费试试 BabyCode

阅读约 9 分钟 · 0 广告 · 0 追踪器 · 父母为父母而做