← 回到业余作品

Mathpad

给我家 4 岁和 6 岁孩子做的加减法应用,按孩子真实的学习规律来教。

FastAPI, SQLite, vanilla JS, ONNX Runtime Web

已上线2026 · iPad

一个 iPad 数学应用,依据加州学前教育标准和美国共同核心标准,从数数一直教到 20 以内的减法。每节课先示范、再引导、最后让孩子独立完成;答案用手写,每条指令都会读出来。

视频里的课是“接着数一个”(Counting on by one),用测试账号录制。这个应用只给我们家用,需要 Google 登录。

问题

两个孩子,两个不同的问题。4 岁的孩子什么都掰手指数,10 以内也是,超过 10 的加法就卡住了。6 岁的孩子会加减法,但用十几减一个较大的一位数时会出错,比如 17 − 8、13 − 9。

第一版失败了。4 岁的孩子还不识字,应用却给的是文字指令。导航太复杂,课程推进太快,重复太少,孩子都哭了。下面几乎所有设计,都来自观察那几次练习、再按看到的问题重新搭建。

教学方法

用公开的课程标准,而不是刷题阶梯。 主线是加州学前及过渡幼儿园学习基础(Preschool/TK Learning Foundations),以及共同核心标准里幼儿园到二年级的内容,覆盖 20 以内的加减法。只有当某条标准需要拆得更细时,我才加一个更小的练习步骤,比如在算式里用加号之前,先学加号是什么意思。应用一共 80 节课,从数数一直到“破十减”。

从孩子已经会的地方开始。 起点来自对孩子的观察,而不是最近发了哪张练习纸。对 4 岁的孩子,第一个问题是:数全部,还是接着数?看到 3 + 2 和 2 + 5,会不会又从 1 开始数?接下来依次是:5 以内、再到 10 以内的接着数一个,接着数两个,从大数开始数,5 的分与合,数的组成和双数。对 6 岁的孩子,应用先检查十几减法依赖的几个基础(16 = 10 + ?、16 − 6、16 − 10、9 + ? = 16),再决定用哪种方法。然后一次只教一种:往上数过十(17 − 8 就是 8 → 10 → 17,2 + 7),或者破十减。

每节课都走同样的路径: 示范例题、引导练习、减少提示、独立完成、换一种新题型(迁移),几天后再复习。这依据的是美国教育部有效教育策略中心(What Works Clearinghouse)关于早期数学和数学干预的实践指南:明确的讲解、相互关联的表征方式和有引导的练习。示范例题会在屏幕上把数学动作做出来(一个点在数轴上跳一格),然后孩子自己跳同样一格,再写答案。

符号要教,不能默认孩子懂。 “加号的意思是再放进来一些。”“等号的意思是一样多。”“减号的意思是拿走。”每个符号单独一节课,用自己的颜色大大地画出来、读出来,然后才出现在题目里。3 + _ = 5 里的空格被教成“藏起来的数”(计数片藏在杯子下面),在任何题目用到它之前先学。

掌握看证据,不看速度。 一个步骤要算学会:先完成两次引导练习,然后最近五次独立作答中对四次,涉及至少三道不同的题,其中包括一道迁移题。之后大约在第 1、3、7、21 天再拿出来复习,因为分散练习、混合题型能提高保持(Cepeda et al., 2006;Rohrer & Taylor, 2007)。理解、准确、速度和灵活性是一起发展的(美国国家研究委员会《Adding It Up》),所以答得慢但答对了,从不算孩子的扣分项。答题时间只记录下来给家长看。复习没通过,就针对性地再练,而不是从头再来。

出错带来帮助,而不是失败。 做错的题会在这节课里再出现,最多两次。三道题里错两道,就重新示范一次,并换一道更简单的引导题。如果还是卡住,这节课就温和地结束,并请家长下次在旁边看看。一节课第一次答对不到 75%,地图上会多一块“宝石”,可以一起再玩一遍:它是礼物,不是关卡。没有计时,没有连对纪录,没有排行榜,表扬的是努力:“你一直坚持下来了!”

短时间练习。 4 岁的孩子大约 5 分钟、6 道题,6 岁的孩子大约 8 分钟、10 道题,每天最多学一个新内容。

这些规则不是什么。 这些阈值是在自家孩子身上试点的初始设定,不是公认的标准,我会根据观察到的情况调整。

为还不识字的孩子设计

技术实现

最难的部分

不用文字来教。4 岁的孩子读不懂“从 3 开始,向右移动 1”,所以每个概念都需要一个会把数学做出来的画面:会跳的点,掀开后露出藏着什么的杯子,被拿走的计数片。让每个示范和提示都把动作演出来,而不是描述出来,比任何其他改动都重要。