听说儿童编程现在火得不得了…
格子同学停更很多天了,依然在继续整顿自己的身体,同时,也在忙一些很重要的事,忙完了会告诉你们是啥。
今天这篇文,将用最简短的语言记述一些学习心得,算作个人学习笔记,同时也和各位爹妈交流分享。
1. 你的孩子是不是在学coding?
儿童编程已经火遍中国大江南北了,其中各种神吹嘘我就不多引述了,同志们随便在百度里输入“儿童编程”就能看到。
在国内,很多4、5岁的孩子已经开始启动。
然而,在加拿大,对于小美的coding学习,我和老吴都很清楚:
coding,编程,作为计算机语言,不过是孩子和整个世界进行交互的“语言”之一。
它的确可以实现诸如“思考力”、“创造力”、“赋权意识”等能力的培养,然而,它和所有学科一样,不过是孩子获取信息、吸收信息、内化信息、以及传递信息的一个渠道。
并且,这门学科的学习,根本离不开识读能力和数学基础的培养。
所以,除了选用一些具备computational thinking【计算机思维】基础认知的小游戏,去帮助孩子建立最基本的计算机语言的理念和思维模式,如Osmo的coding模块:
再比如Scratch Junior:
哪怕我们拥有的教育资源远超出小美的学习需求,对于非常正式的coding教学,我和老吴迟迟未动。
我一直坚定的认为:
任何学习都是要和孩子的认知能力相匹配的
然而我们没有教学,不意味没做准备。
一方面我一直持续关注STEM教学北美政策走向,另一方面,所有临近地区,比如西大和在多伦多召开的,关于STEM教学的学术峰会我都会参与。
此外,基于加拿大STEM教学相关的课程大纲中,关于Computation Thinking【计算机思维】和Coding【编程】的教学设计建议:
我们非常清晰的知道,正式的coding教学,不论是Scratch还是Python,又或者是任何其他的计算机语言,是离不开相关数学和计算机常识基础知识学习的。
而这些基础知识,对于四年级以下的孩子来说可能非常的抽象,以至于孩子们无法正常理解,从而影响在coding学习中的应用。
因此,我们选择在小美完成低小,进入高小【四年级】时,开启她相对正式的coding学习,从Scratch开始。
(MIT Scratch官网 https://scratch.mit.edu/)
2. 一切并不简单
今天是学习的第一天,我们邀请了小美的三位小伙伴,Susan(10岁),清清(8岁)和宁宁(13岁),一起参与。老吴设计的教学任务,看起来也非常清晰和简单:
1. 帮助孩子们学会使用Google Chrome浏览器;
2. 使用搜索引擎找到Scratch官网;
3. 了解网站布局,以及进行个人ID的注册;
4. 观摩网站提供的Scratch作品样本,让孩子们初步认知编程可以实现的目标;
5. 尝试小游戏Bouncing Ball【弹弹球】;
6. 开始建立第一个编程项目Bouncing Ball,了解具体流程和细节,并且完成。
老吴同志计划的教学时间是一个小时,他认为在这一个小时之内,讲解所有上述内容,并且带着孩子们做出一个这样的小游戏是足够的。
然而,故事发展并不是他想的那样。
整个教学我们进行了两个半小时,中间大家一起吃了一次冰淇淋,休息了一下,几乎没有停歇。然而,教学任务并没有全部完成。
前面5项全部完成,孩子们吸收和理解的也非常好。然而第6步,孩子们只完成了基本构图,以及对挡板的编程控制,还有大约1/3的工作没有完成。
整整两个半小时,我都陪在旁边,一边直播,一边完成老吴的助教工作。而整个教学的过程,对于我的震撼,或许远远大于给孩子们的。
这个震撼究竟是什么?
3. Coding是不是一门照葫芦画瓢的功课?
老吴的整个教学模式非常清晰,从第一步开始,就是通过大屏幕,向孩子们演示,并且,让她们在自己的电脑上进行一步步的跟随操作。
可以说,前5项教学计划,在这样的模式下进行的非常顺利。
因为,参与课程的4个娃娃,在学校里全部参与过Media Literacy【媒介素养】和初级Computer Science【计算机科学】的课程。
此外,她们四个还是一款网络游戏Roblox的忠实用户,并且在该游戏平台互为好友。
在这样的情况下,她们早已经有了对Google Chrome的初级使用经验,以及对于网站基础布局的了解。
同时,对于互联网平台的注册流程也较为熟悉。
所以,老吴的前5项教学计划是完全符合他们的最近发展区的,也符合孩子们的基本认知水平和认知能力。
然而,从Bouncing Ball的正式编程教学开始,问题就出现了:
作为大学老师的老吴同志,会不自觉的默认孩子们已经知道了很多的基础知识,于是,就会在很多地方简单带过,不做详细解释,于是,
-
孩子们的互动不再那么多;
-
孩子们的眼神开始出现游离;
-
在老吴说,“点这个小箭头”,“点这个bar”,“点script/custome”等等指令时,三个小一点的孩子,会明显的跟不上。
-
在老吴不经意的说出“坐标”,“X轴”,“Y轴”之类数学术语时,孩子们更是一脸懵圈……
-
对于Scratch基础界面中的指令界面,孩子们明显认知不足,糊里糊涂。
当然,即使在这样思路不清的情况下,一步又一步的跟随,孩子们是基本能做到的。
然而,作为助教的我,并没有让孩子们仅仅是照葫芦画瓢,更没有让这种思路不清发展下去。
于是出现了助教若干次打断“教授”讲课的情况。
期间,每当发现孩子们的意识开始游离,我便知道一定是相关基础概念储备不足了。
于是,我便会问她们:
“你们知道,为什么叔叔/爸爸,要让你们做这一步吗?”
当这个关于Why的问题问出后,除了大一些的宁宁,三个小朋友几乎是清一色的摇头。
我打断的地方包括:
关于“指令”的概念,即计算机语言究竟是干啥用的;
关于“坐标”的概念,即给物品定位时,X和Y究竟是什么含义;
关于编程界面的介绍,即每一个栏目究竟是做什么的;
……
对于相关基础概念的讲解(比如坐标轴的含义),我们所花费的时间,远远要大于对于Scratch编程游戏本身的介绍。
然而,倘使不去讲解这些概念,那么孩子们根本无从知道计算机思维的真正含义,coding指令对于他们来说意味着什么,以及如何实现这些指令的真实目的。
4. 联想一下,你家娃学的coding究竟是什么?
在今天的教学完毕之后,我不由得在思考:
-
通过我们今天的教学经验,该如何为小美和小伙伴们未来的学习进行课程改良和新的课程设计?
-
我们应该如何提前准备,预测孩子们需要掌握的,和coding学习相关的数学基础知识和计算机科学的基础知识,并用更加简单、形象、精炼,和可视觉化的语言让孩子们同步理解相关概念延伸和讲解?
-
如何在日常生活里强化Digital Literacy【数字素养】的常识认知和计算机思维的核心理念培养,为孩子提供更多的情境化感受,从而为coding学习提供预先的经验?
-
如何更好的在基础数学学习的过程中,适当的反向加入计算机语言学习的知识内容,找寻到学科间的共通点,做到更好的跨学科教学?
此外,我也非常的好奇:
中国境内如火如荼的儿童编程教学,是如何教授的?
-
老师会考虑孩子们的基础知识储备吗【涉及数学和计算机科学】?
-
老师们会考虑到孩子的最近发展区吗?
-
老师们会使用孩子们能够理解的语言去为他们提供形象化的理论讲解吗?
-
……
又或者,在每周短短的1-2个小时的时间内,只是让孩子照葫芦画瓢,一步步跟随出一个小游戏,或者一个模型…然后交给苦苦在教室外等候的爹妈…
就像三岁的小美在合肥学画画时,老师画一笔,她也画一笔。课程结束后,似乎是给了我一张不错的图画,事实上,她根本不知道这张图是怎么画出来的。
6. 关于儿童编程,我们需要注意什么?
在今天两个半小时的家庭教学之后,我和老吴都累的头晕……因为,即使依托于我们的知识储备和教学素养,来教这4个孩子,并且期待他们真正的实现:
感知、理解、反思、内化、应用、创造
依然是相当的不容易……
而这些不容易才是学习的根本,也是多元识读教育哲学真正期待的各学科教学目标。
在这个大的哲学框架之下,同志们在送孩子去学习儿童编程时,也不妨关注一下如下细节,从而检验真正教学目标的实现:
-
孩子能否为你再次演示在编程课堂中所学习到的程序设计流程;
-
孩子在演示的过程中,能否为你讲解出核心步骤的含义。比如,在填写指令时,他能明确说出,“他在用编写的代码和计算机对话”之类的语言;
-
孩子是否能够清晰的理解,每一次编程课程中,真正需要实现的学习目标。比如,弹弹球一课,看似只是做出一个小小的游戏,其实是通过用计算机语言,让Scratch软件,对游戏中的各个元素给予指令,让小球和挡板都按照小朋友的要求去执行动作。
倘使,当你发现,孩子上完课程之后,只是照猫画虎的带给了你一个程序,然后便什么也不会了……
那么,你其实可以省下这些学费,带着孩子出去逛逛街吃吃饭,也是极好的。
最后依然要提醒同志们,在coding的学习中,或许你们也看到了亲子阅读的影子,没有你们用心的学习是不可能为孩子找到真正合适的教育资源的。
花钱是一件太容易的事,可是你的自我学习才是孩子真正用之不竭的源泉。
倘使这个世界上真有所谓的孩子的起跑线,那就是父母本身,以及你们能够提供给孩子的一切资源--物质、精神、学习的素养、面对这个世界的态度……
-The end
--end--
声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com