编程教育:机房里那半块没拖完的积木块

上周三下午蹭朋友的小学信息课机房。刚推开门就闻见旧键盘捂出来的塑料味。

第三排的小男生攥着鼠标,屏幕上的积木式编程界面开了半节课,左边的积木块栏滑到最底,角色区的小猫安安静静待着,一行代码都没拖。我凑过去看,他盯着练习册上的步骤逐行对:”哦对,要先拖‘当绿旗被点击’,再拖‘移动10步’……”手指顿在鼠标左键上,就是没按下去。

被上成练字课的编程

我问他为什么不自己试试把移动步数改成20啊。他抬头看我,眼睛瞪得圆:”改了就不对了,老师说最后要让小猫碰到舞台边缘转一圈,数不对的话,练习册最后那栏的‘完成盖章’就盖不上。”

这根本不是个例。常见的编程启蒙课,跟二十年前的计算机上机课没区别:老师演示一遍,学生照着复刻,最后跑出个跟老师一模一样的效果,就算满分。没人在意他有没有想过,小猫为什么要移动,能不能换个角色,能不能让小猫走三步就停下来跟观众打个招呼。

小学信息课机房学生对照纸质练习册拖拽编程积木块的实景
小学信息课机房学生对照纸质练习册拖拽编程积木块的实景

不过话说回来,入门阶段讲点基础操作没毛病,总不能让小孩对着全英文的界面瞎点半小时,最后啥也没学会。但问题是,好多课从入门到进阶,全程都是照着步骤抄,连个让小孩自己瞎改的空隙都不给。拖错一个块,老师马上过来给你拖回原位;参数调得不对,马上提醒你”要按课本上的数字填”。时间久了,小孩形成条件反射:学编程就是找标准答案,跟做数学填空题没两样。

把编程当应试考的代价

我之前遇到个五年级的小孩,之前自己在家瞎玩编程工具,能做出个跟奶奶猜拳的小互动,后来报了个所谓的竞赛班,学了半年,再聊起编程,他第一反应是”这个题要考什么知识点,能拿什么奖”。他说现在上课就是刷往年的真题,哪类题套哪个模板,背熟了就能去比赛。上次他想在自己的作品里加个奥特曼的角色,老师说这个不在考试范围里,加了反而会扣分。

少儿编程竞赛考场学生对着题目写标准答案的实景
少儿编程竞赛考场学生对着题目写标准答案的实景

说实话,我第一次听见这话的时候,是有点恼火的。你想啊,多少孩子第一次接触编程,本来是抱着”我能让电脑听我的话”的好奇心来的,结果一上课发现,哦,原来电脑不是听我的,是听老师的,我只要照着老师说的做,就能拿章拿奖。那这玩意跟做数学应用题有啥区别?甚至比应用题还没意思——应用题好歹还能换个解题思路,编程课的步骤是钉死的,差一个积木块的位置,效果不对,就是错的。

这种模式磨掉的,恰恰是编程最核心的东西。我之前去旁听一节没那么”正规”的编程课,老师是个刚毕业的小伙子,第一节课没讲任何积木块的用法,就让小孩坐在电脑前面随便点,想拖什么拖什么。有个小孩拖了个恐龙角色,点了一下让恐龙从屏幕这头跑到那头,结果跑太快冲出舞台了,全班哄堂大笑。老师没说”错了,应该把移动步数改成5″,就问大家:”你们想想,怎么能让恐龙不跑出去?”有人说调慢速度,有人说在舞台边放个墙,有人说让恐龙跑到一半转身往回走。那节课最后,没人记得自己拖了几块积木,但是所有人都记得,自己当时想了好几个办法解决恐龙跑丢的问题。

别把编程的边界划得太窄

好多人对编程教育的误解,从来都是走极端。要么神化,觉得学了编程就能当未来的程序员,就能赢在人生起跑线;要么贬低,觉得这就是个凑数的兴趣班,跟学画画学跳舞没区别,甚至是浪费时间。其实都不对。编程教育最值钱的部分,从来不是写出来的那几行能跑的代码,是遇到问题的时候,你愿意把大问题拆成一小块一小块的习惯。

你说小孩学了两年编程,连个完整的小程序都写不出来,是不是被骗了?这话问得就像”我家孩子学了两年语文,怎么还成不了作家”一样可笑。他在拆问题的时候练出来的耐心,遇到bug的时候不马上喊老师的韧性,想到一个新奇点子就马上试的冲劲,难道不比那几行能跑的代码值钱?

我之前也觉得,编程就得越早学Python越好,越早写真正的代码越好。后来跟机房里那个半节课没拖完积木块的小孩聊了半小时,才发现根本不是那么回事。你让一个8岁的小孩对着屏幕记语法,跟让他背英语单词没区别,枯燥得要死。反而他对着积木块瞎拖的时候,才会真的觉得”我能控制这个屏幕上的东西”——这种感觉,才是他愿意继续学下去的源动力。

下次你家孩子坐在电脑前上编程课的时候,别凑过去检查他写的代码跟老师的是不是一模一样。你就问他一句:”如果让你给这个程序加个你自己的小想法,你想加啥?”

作者|教育

排版|教育

审核|小北

免责声明:市场有风险,选择需谨慎!此文仅供参考,不作买卖依据。如有侵权请联系删除。
文章名称:编程教育:机房里那半块没拖完的积木块
文章链接:https://m.lfdjt.com/p/jiaoyu/a/12471.html