查看原文
其他

小朋友的编程教育,不是敲代码

一小时爸爸 一小时爸爸 2022-05-14


上周我们团购的两组产品中,有一个产品是可编程的小火车(点击了解),所以聊到一些和儿童“编程”有关的话题,以及我们对于“儿童编程”教学或者产品的看法。有很多读者对这个话题感兴趣,所以我们今天再展开多聊一下。





随着互联网时代的来临,“编程”成为了职场重要的技能之一,所以很多家长也希望小朋友从小就能开始这方面的学习。


很多时候,家长抱着让孩子学编程的目的,去市面上买了那些编程类的教具、玩具、桌游或者课程,拿到之后却不知道如何用,或者跟自己记忆中以前学过的C,JAVA,PHP的情况相差甚远。于是不禁感到疑惑,觉得自己是不是被忽悠了。


有这种疑惑,是因为我们印象中的编程,往往就是右键点击网页然后查看源代码的感觉,形象一点,就是一个程序猿在电脑前面狂敲键盘的结果:


wiki"program"词条页面的一部分源代码


所以很多读者问过我们,哪种计算机语言适合小朋友来学,有没有推荐的课程或者学习软件之类的。其实对于小朋友来说,编程启蒙并不是对着屏幕敲代码。在开始自己敲打代码之前,更重要的是去了解和学习编程的核心还有基础。


那什么是编程呢?那其实要从什么是“程序”来思考。


其实我们从字面上,就可以理解其中的一些含义。什么是“程序”,按照《现代汉语字典》,“计算机程序”是指:为实现某种目的而由计算机执行的代码和指令序列,通过程序设计语言实现。


看到这句话,估计很多人就会被绕到死机了,但程序这个词早在计算机出现之前就有了,意思很简单,就是事物发展进的次。比如开会的程序,审核的程序等等。


计算机的程序,也可以这样理解:为了实现某个目标的代码序列。


所以学习程序的基础,就是熟悉序列,不是学习一行行代码的顺序,而是指令、做事的顺序。


从英文的角度,同样也是如此。“编程”的简称,通常是对应programming,有时候会用coding(编写指令)。那什么是program?


program这个词,当然也比计算机更古老。它的含义有很多,比如实现某种目的的行动计划,活动日程、电视电台节目、物品清单......等等



我们可以看到,这些含义的共性,就是把一系列动作或内容,按照一定顺序排列执行,无论是电视栏目,还是课程学习计划,最终实现某个目标。所以用“程序”来对应program,翻译的很恰当。





我们之前聊过孩子的数学启蒙、语文启蒙,其中最老生常谈的一件事,就是儿童的学科启蒙教育,并不是简单的“提前学”,更不是刷题。而是要用符合这个年龄段孩子的认知水平的方式,来培养对这个学科学习真正有帮助的基础能力


比如我们说过数学的基础要从数形结合开始,语文要从汉字的字源字义开始。而编程也是如此,编程的基础,并不是被背一堆计算机语言指令。而是理解什么是“程序”,什么是“次序”。


而想培养这方面的能力,可以选择一些和简单或者图形编程有关的玩具、桌游外,但更重要的,是在日常生活中,培养孩子对于“项目进程”的了解,参与到制定执行次序方案的过程中来,而不是简单的家长说什么孩子做什么。


比如出去旅游的规划,比如日常生活的作息表,哪些应该在前,哪些应该在后,前后顺序之间有没有影响,哪种排序的效果更优?这些事情虽然看上去和电脑程序没什么关系,但帮助孩子养成的基础能力,却可以对未来的编程学习有很大的帮助。


当然,对于小朋友来说,学习编程也可以从代码(code)入手,只不过对于学龄前或者小学生的说,coding启蒙类的编程玩具,也不是敲代码的风格。


比如OSMO的这款coding starter kit的iPad App和外设。



或者我们上周五推荐的coding express小火车。



还包括很多其他的coding启蒙玩具,都是用形象的动作指令,比如“如何规划行进路线”这种,来作为coding的入门,为什么会这么选择呢?再来看看什么是code(代码)。





code的含义,并不特指那一行行的计算机程序代码,在韦伯词典中,对应的解释其实是:“a system of signals or symbols for communication”,也就是一种用符号或信号进行通讯的体系


广义的说,我们日常使用的各种语言,中文、英文、法文......都是代码。


还记得N年前在新东方学T&G的时候,听过某位创始人总喜欢上课讲的一个段子:英语系毕业的他跑去美国申请计算机系,专业差太远原本没希望,但他用“英语和计算机语言都是语言”这个理由,居然说服了招生老师。


虽然我个人对这个故事的真实性存疑。但他讲的这个道理的确是通的:计算机语言的确也是一种语言。只是它是一种特殊的,人和机器沟通的语言 —— 可以理解为我们在和机器聊天。


除了我们的语言外,生活中还有很多特定用途的code,比如海军用的旗语,电报用的摩斯代码,都是一种code。


不同的code有不同的目的,也有不同的难度,所以对于低龄的小朋友来说,很适合他们学习的一种简单code,就是 —— 指路:左转、右转、前进、后退,这些就是最基本的指令。因此coding启蒙类的玩具,往往都不约而同的选择了规划路线这种“程序(program)”,来作为启蒙的方式。


这种coding启蒙所做的,就是让小朋友了解和认知如何和机器进行对话。用这些简单的指令,告诉机器人、火车头、或者软件里的人物,自己想让它完成什么工作。


这其实就是编写代码。学习和掌握这种看似无比简单的coding,可以帮助孩子为未来学习其他更复杂的代码语言打好基础。更重要的是,这也是未来生活在越来越程序化,互联网化的社会中,我们所需要掌握的基础思维能力之一。


不过用玩具和生活中的种种来学习编程启蒙的方式还有很多,我们以后有机会再跟大家聊聊如何用玩具来学习编程。





聊了这么多之后,最后忍不住稍微泼点凉水。学习编程很有趣,在这过程中所培养的能力,对孩子也很有帮助。


不过如果你希望孩子学编程的理由,是觉得以后可以当个程序员好找工作,那也许应该再三思一下,毕竟在人工智能AI的年代,程序员是和AI关系最近的职业之一,却也是专家们预测的最容易被AI所替代的职业之一


当然,这种危机风险存在于各行各业。在现在这个快速变化时代,新的行业,新的职业层出不穷,旧的职业也消亡的非常迅速。我们都无法判断未来孩子长大之后,可能有怎样的工作机会,本着培养职业技能从娃娃抓起之类的目的来启蒙,未来很可能会失望。


所以,即便我们的教育目标很简单,就是为了未来容易就业,那合理的方式,也不是“从小掌握一门手艺”,而是加强素质教育、基础能力教育。既然世界万变,那我们就选择以不变应万变,才能让孩子在未来有机会选择适合自己的职业,并在那个我们无法预测的职场上,取得成功。




我们新增了日常提问咨询的入口,如果你有什么问题,可以点击我们公众号下方工具栏的【提问沟通】告诉我们:



与教育相关的文章,也可以点击工具栏里的【文章搜索】,在搜索栏里输入“教育”来进入相关的文章列表:

  • 学的知识都还给老师了,我们还剩下什么

  • 怎样的孩子容易被霸凌?怎样的会霸凌人?

  • 教育是服务,底线是安全

  • 幼儿园禁止小学内容不重要,重要的是幼儿园该学的到大学都没教

  • 除了不会就选C,还有什么“考试技巧”?作弊不算哦

  • 判作业是老师的工作,不是家长的

  • 为什么要过洋节?因为开心啊

  • 只有1/9家长会看的文章,左撇子宝宝的养育建议

  • 为人父母,你为什么不敢管教孩子?

  • 英语早教班不会和你说的事情

  • 左脑逻辑右脑创意?你的大脑可不是这么分工的

  • 为什么要教孩子做个好人?用数学公式来推导一下

  • 吵闹不专注?蒙台梭利安静游戏的自律练习

  • 不吉利背后的中式死亡焦虑

  • 带宝宝去电影院的第一原则——别扰民



近期文章回顾




您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存