☰
孩子一学就喊累?用胜任感(心效力)构建可工程化的正反馈模型
2026/9/27 22:49:40 网站建设 项目流程

技术向 / 干货。面向想用「系统」替代「反复讲道理」的家长与开发者。 作者:学心教研

0. 结论先行

「孩子一学就喊累」,多数时候不是态度问题,而是胜任感(心效力)已经被反复耗干:一个孩子连续经历「努力了也没做成」,大脑会把「学习」直接和「挫败」绑定——于是任务还没开始,能量先掉下去。

在学科极度内卷的形势下,额外给孩子增加一个竞争优势,靠的不是再多报一门课——而是把「让孩子重新觉得自己能做成」这件事,从依赖运气的一句鼓励,变成一条能稳定跑起来的正反馈流水线:机器负责记住每一次「做成」,人负责在关键处做判断。这正是「学心四力」里心效力要守的那块地——它不靠夸,靠的是一次次真实做成留下的证据。

下面把这条流水线拆成四个可以分别实现、分别验收的工程点,每个点给一段能跑的代码。


1. 问题定义:四个要解决的工程点

要让「胜任感」可工程化,先把它拆成四个环节。它们能独立实现,但顺序不能反——没有「做成」的证据,后面的回读就是空话。

环节纯人工的痛点工程目标
① 任务切分家长习惯布置「今天把数学写完」,孩子看一眼就放弃把任务切到「一定能起步」的颗粒度,先让「做成」变得可能
② 成功证据采集做成了没人记,做错了被反复说每个完成单元自动落一条「做成」证据,不靠家长记忆
③ 归因改写孩子一失败就说「我就是笨」,家长越劝越僵用受控规则把「人身定性」改写为「过程归因」
④ 正反馈回路聊完就忘,一周后只剩「最近好像还行」每周把证据回读给孩子,让「做成」看得见、能累积

四个点串起来是一条闭环:切分(①) → 采集(②) → 改写(③) → 回读(④)。


2. 关① 切分:先让「做成」变得可能

2.1 为什么任务太大是胜任感的第一杀手

自我效能感研究里有一条被反复验证的结论:人对「我能做到」的判断,最主要是被亲身完成的成功经验塑造的,而不是被说服或表扬塑造的(Bandura, 1977)。失败经历会削弱它,成功经历会强化它——但前提是,这个「成功」得真的发生。

这就解释了为什么「今天把数学写完」这种任务会持续耗损胜任感:它不是难,而是大到根本看不到能完成的可能,孩子预判的是必然失败。切分的意义不是让任务变简单,而是先造出「我确实做成了一件事」的事实。

2.2 切到「一定能起步」为止

# slice.py —— 把大任务切到「一定能起步」的颗粒度 from dataclasses import dataclass from datetime import date from enum import Enum class Tracker(str, Enum): DIRECTING = "心航力" # 方向:知不知道该做什么 FOCUS = "心定力" # 专注:能不能待在任务上 RESILIENCE = "心韧力" # 抗挫:卡住之后多久能回来 EFFICACY = "心效力" # 胜任:信不信自己能做成 @dataclass class TaskUnit: child_id: str day: date name: str # 单元名 tracker: Tracker # 这个单元主要练哪个力 est_minutes: int # 预估用时(先由孩子自己估) can_start: bool = False # 颗粒度自检:是否小到「一定能起步」 started: bool = False # 行为事实:孩子当天真的动手了没 done: bool = False def slice_task(child_id, day, raw, est_minutes, tracker=Tracker.EFFICACY, max_unit=15): """按预估时长把大任务切成最小可完成单元。 规则:单个单元预估 ≤ max_unit 分钟;切不动时宁粗勿碎,不再硬拆。 """ if est_minutes <= max_unit: return [TaskUnit(child_id, day, raw, tracker, est_minutes)] n = max(2, -(-est_minutes // max_unit)) # 向上取整,至少切 2 段 base, extra = divmod(est_minutes, n) units = [] for i in range(n): minutes = base + (1 if i < extra else 0) units.append( TaskUnit(child_id, day, f"{raw}(第 {i + 1}/{n} 步)", tracker, minutes)) return units def mark_startable(unit: TaskUnit, first_step: str) -> TaskUnit: """「一定能起步」自检:单元预估 ≤15 分钟,且孩子能说清第一步做什么。""" unit.can_start = unit.est_minutes <= 15 and bool(first_step.strip()) return unit

设计要点:切分的目的不是效率,是成功率。宁可一个单元只做 10 分钟,也不要一个「看起来更完整」却必然做不完的任务——做不完的任务每出现一次,胜任感就掉一格。


3. 关② 采集:只记「做成」的事实,不记表扬

胜任感不是夸出来的。自我决定理论指出,胜任感来自能力被真实使用过的体验,外部表扬只有在它指向真实进步时才有效,否则会变成廉价的空话(Ryan & Deci, 2000)。所以采集层的设计原则是:记行为事实,不记情绪评价。

# evidence.py —— 只记「做成」的行为事实,不记表扬 import sqlite3 SCHEMA = """ CREATE TABLE IF NOT EXISTS task_units( child_id TEXT, day TEXT, name TEXT, tracker TEXT, est_minutes INTEGER, can_start INTEGER, started INTEGER, done INTEGER ); CREATE TABLE IF NOT EXISTS evidence( child_id TEXT, day TEXT, unit_name TEXT, tracker TEXT, created_at TEXT ); """ def init(conn): conn.executescript(SCHEMA) conn.commit() def save_unit(conn, unit, created_at): conn.execute( "INSERT INTO task_units VALUES(?,?,?,?,?,?,?,?)", (unit.child_id, unit.day.isoformat(), unit.name, unit.tracker.value, unit.est_minutes, int(unit.can_start), int(unit.started), int(unit.done))) conn.commit() def record_evidence(conn, unit, created_at): """只在单元完成时落一条「做成」证据——记行为,不记分数,不写表扬语。""" if not unit.done: return False conn.execute( "INSERT INTO evidence VALUES(?,?,?,?,?)", (unit.child_id, unit.day.isoformat(), unit.name, unit.tracker.value, created_at)) conn.commit() return True

设计要点:evidence表里没有分数列。一张表一旦有分数,人就会开始追分;而胜任感需要的是「我做成过」的持续供给,不是「我今天几分」。所以这里只存两样东西:哪天、做成了什么单元。


4. 关③ 改写:把「我就是笨」翻译成「这次哪一步没准备好」

4.1 为什么归因比结果更重要

「一学就喊累」的深层机制,和经典研究里的习得性无助是同一个东西:当一个人反复经历「无论怎么做结果都不变」,就会停止尝试(Maier & Seligman, 1976)。而孩子对失败的解释方式,是决定他会不会停下来的关键变量——把失败归到稳定的、内在的、不可改变的原因(「我就是笨」),比归到可改变的过程(「这一步的方法我还没掌握」)更容易导致放弃;这正是内隐能力观研究揭示的分叉(Dweck & Leggett, 1988)。

所以这一环要做的,不是否认孩子的感受,而是受控地改写他的那句话——把评价人的话头,拉回到评价这一步的事。

# attribution.py —— 把「人身定性」改写为「过程归因」 PERSON_LABELS = ("笨", "傻", "不行", "差劲", "没用", "没救") def rewrite_attribution(raw_text: str) -> dict: """孩子自评一句话 → 受控改写。 规则:命中人身定性词块,一律不评价人格,只把话头拉回 「这次是哪一步没准备好」,并落回一个明天能试的小动作。 没命中(本来就说的过程)就原样保留,不做多余加工。 """ hit = [w for w in PERSON_LABELS if w in raw_text] if not hit: return {"kind": "process", "text": raw_text, "action": ""} return { "kind": "person", "text": "这次是哪一步没准备好?", "action": "把今天的单元再拆小一档,明天先做最容易起步的那个", }

设计要点:改写只在失败解释上生效,且必须落回一个具体的下一步动作。只说「你已经很棒了」是无效安慰——它既没改归因,也没给抓手。


5. 关④ 回路:每周把证据回读给孩子

5.1 反馈要指向过程,不指向人

反馈研究里有一条很清楚的分界:指向任务与过程层的反馈能提升投入,而指向自我层的反馈(表扬人、评价人)往往效果有限甚至有害(Hattie & Timperley, 2007)。所以每周的回读不该是「你这周真棒」,而应该是「你这周自己起步了 5 次,其中 3 次是那类你以前会说『我不会』的题」——把证据摆出来,让人自己得出结论。

# loop.py —— 每周把证据回读成三条曲线,形成正反馈回路 import datetime def moving_avg(values, window=3): out = [] for i in range(len(values)): seg = [v for v in values[max(0, i - window + 1): i + 1] if v is not None] out.append(round(sum(seg) / len(seg), 3) if seg else None) return out def weekly_loop(conn, child_id: str, day: str, window: int = 3): """聚合一周:能起步率、单元完成率、做成证据条数 → 三条曲线 + 本周可见证据。""" since = (datetime.date.fromisoformat(day) - datetime.timedelta(days=6)).isoformat() rows = conn.execute( "SELECT day, SUM(started), SUM(done), COUNT(*) FROM task_units " "WHERE child_id=? AND day>=? GROUP BY day ORDER BY day", (child_id, since)).fetchall() start_rate = [r[1] / r[3] if r[3] else None for r in rows] # 能起步率 done_rate = [r[2] / r[3] if r[3] else None for r in rows] # 单元完成率 evidence = conn.execute( "SELECT day, unit_name FROM evidence WHERE child_id=? AND day>=? " "ORDER BY created_at", (child_id, since)).fetchall() return { "days": [r[0] for r in rows], "start_rate": start_rate, "done_rate": done_rate, "start_rate_ma": moving_avg(start_rate, window), "done_rate_ma": moving_avg(done_rate, window), "evidence_count": len(evidence), "visible_evidence": evidence, }

设计要点:数据负责记全,人负责回读。程序只把「做过什么」摆齐,判断「这说明什么」必须由家长和孩子在面谈里完成——数据不能替人下结论。


6. 一周模拟记录:看哪条曲线先抬头

下面这段是用于演示判读方式的模拟记录,不代表任何统计样本。一个四年级男孩,家长按上面的流程记了 7 天,每天切成 3 个单元。前 3 天单元预估偏大(每个 20 分钟),3 个单元里孩子平均只动手 1 个——能起步率 0.33、完成率 0.33,且每天的自评原话都出现「我就是不行」。第 4 天起只改一件事:把每个单元切到 10 分钟以内,并给每个单元写清第一步。第 5~7 天:能起步率从 0.33 升到 0.67、再升到 1.0,完成率同步从 0.67 升到 1.0,自评原话里第一次出现「这次是我估时不准」——归因从人身定性转到了过程。一周累积的做成证据从 3 条涨到 14 条。

关键不在于数字涨了多少,而在于顺序:先动「能起步率」这一条,完成率和归因才会跟着走。反过来,一上来就要求「把题做完」,最先崩的恰恰是最需要修的这条。


7. 工程对比:纯人工 vs 这套模型

环节纯人工这套模型
切分按家长感觉布置整块任务按预估时长切到「一定能起步」
采集做成了不记,做错了记得牢完成即落一条证据,零额外誊写
归因情绪化回应,容易强化「我不行」受控改写,落回具体下一步动作
回读一周后凭印象总结三条曲线 + 证据清单,直接对着看

成本结构:切分与采集都是单条写入,亚毫秒级;周回读是 7 行数据的聚合,一次跑完不到 10ms。整条链路纯 CPU 就能扛住日活万级的日常记录,真正稀缺的资源依旧不是算力,而是家长在关键处的那次判断。


8. 踩坑与边界

这几条不是代码问题,是最常见的翻车点:

  1. 别把采集做成打卡监狱。字段越少越好;孩子连着几天没完成时,宁可不催,也不要补一堆浮夸表扬——那会直接把「证据」变得不值钱。
  2. 归因改写不是话术。改写的目的是让孩子自己走到过程归因上,不是替他把话说漂亮。如果孩子只是机械复述那句改写,说明这一步还没落地。
  3. 证据必须回读才有用。只存库不回读,等于家长单方面多了个后台;正反馈回路的关键动作是把证据念给孩子听,让「做成」被他自己看见。
  4. 人的判断永远在环内。数据与直觉冲突时,以家长对孩子的实际观察为准。这套东西只做「记得全、看得见」,不做任何结果承诺,也不替代专业评估。
  5. 不碰医疗边界。这套模型属于学习状态与家庭教育层面的微习惯记录。若孩子出现持续的情绪低落、躯体化反应或自我伤害倾向,请第一时间前往专业医疗机构就诊,这套模型不适用、也不能替代专业诊疗。

常见问题

Q:孩子一学就喊累,是不是休息几天就好了?

A:短期疲劳确实能靠休息缓解,但如果「一学就累」已经变成稳定的默认反应,问题往往不在体力,而在胜任感长期供不上——他已经预判了「做不成」。这种情况下单纯的休息不能修复,需要的是**先造出几次真的做成**的小成功,再逐步加量。可以从把单元切到 10 分钟以内开始试一周。

Q:孩子总说自己不行,我该怎么回?

A:先别急着反驳「你哪里不行了」。按上面的改写原则走两步:第一步把评价人拉回评价事(「这次是哪一步没准备好」),第二步给一个明天能试的具体动作。关键不是让他当下承认自己行,而是**不让他把这次失败固定在「我这个人不行」上**——这是后续所有尝试的前提。

Q:这套记录会不会反而变成新的压力来源?

A:会,如果你把字段加得太多。设计原则是「孩子自报 + 家长顺手回填」,不是家长替孩子做观察报告。低年级可以只留三个字段(单元是否完成、能不能起步、自评原话),先跑通一周再谈扩展。如果记录本身开始让家里紧张,就说明字段太多了——直接砍掉一半。


参考文献

[1] Bandura, A. (1977). Self-efficacy: Toward a unifying theory of behavioral change.Psychological Review, 84(2), 191–215. DOI:10.1037/0033-295X.84.2.191(自我效能感的判断主要来自四类经验,其中「亲身完成的成功经验」影响最强;这解释了为什么工程上要先把任务切到能完成,而不是先讲道理。)

[2] Ryan, R. M., & Deci, E. L. (2000). Self-determination theory and the facilitation of intrinsic motivation, social development, and well-being.American Psychologist, 55(1), 68–78. DOI:10.1037/0003-066X.55.1.68(胜任感是人的基本心理需要之一,它由能力被真实使用的体验满足;外部表扬只有在指向真实进步时才起作用,支撑了「只记行为事实、不记表扬」的采集原则。)

[3] Maier, S. F., & Seligman, M. E. P. (1976). Learned helplessness: Theory and evidence.Journal of Experimental Psychology: General, 105(1), 3–46. DOI:10.1037/0096-3445.105.1.3(个体在反复经历「行为与结果无关」后,会停止尝试;这对应了孩子「努力了也没用」之后的一学就喊累,也是「归因改写」这一环的必要性来源。)

[4] Dweck, C. S., & Leggett, E. L. (1988). A social-cognitive approach to motivation and personality.Psychological Review, 95(2), 256–273. DOI:10.1037/0033-295X.95.2.256(把失败归于稳定不可变的原因(如「我就是笨」)更容易导致放弃,而归于可改变的过程则更可能维持投入;这是「把人身定性改写为过程归因」的直接依据。)

[5] Hattie, J., & Timperley, H. (2007). The power of feedback.Review of Educational Research, 77(1), 81–112. DOI:10.3102/003465430298487(反馈按指向分为任务、过程、自我调节与自我四个层级;指向任务与过程的反馈更能促进投入,而指向自我(评价人)的反馈效果有限——支撑了每周回读要摆证据、不夸人。)


相关阅读

  • 学心四力官网
  • 用前额叶散热模型解释孩子写不完作业:一个可工程化的心理学框架
  • 孩子注意力不集中容易走神怎么改善?练出坐得住的心定力

心理能量四维(心航力 / 心定力 / 心韧力 / 心效力)+ 家庭土壤——解决的是孩子「撑得住撑不住」的持久问题,不是「学得快不快」。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询