CodeMonkey为什么会被作为儿童编程教育的启蒙?
1
写在前言:
我读大学时第一次接触计算机编程,那时就学的C语言,不过我因为专业原因,并没认真学写编程代码,后来因为工作需要,才重新补之前大学时期遗漏的编程。
我选择了DataCamp,这个网站提供闯关模式供人自学,经过不断努力,最后在
一个个项目的实战过后,写代码也就越来越熟练。从此,我再不用担心编程会影响我的工作了。当然,人们也不用担心编程成为他们的短板,因为编程正变得越来越容易。一方面,编程语言的迅速发展使得上手越来越快。比如完成标准制定的HTML5使得网页开发更加简单;很多新的编程语言的出现,比如Lua,Go,Julia等,也使得编程变得更加容易。另一方面,一些优秀平台的出现极大地降低了开发的门槛。如Java Studio使得Java开发轻松不少;PhoneGap让任何人使用HTML、CSS、JavaScript轻松开发出能同时运行在iOS、Android、Windows Phone上的App;Xamarin让任何人使用C#也可以开发出跨平台的App。
2
但是对于青少年儿童,该如何让他们学习编程呢?特别是许多不明白编程的家长,如何让他们觉得编程应该从小开始启蒙呢?
为了回答这些问题,我开始关注针对K12学生的编程教育。其实现在少儿编程教育的学习工具非常多,比如CodeMonkey、Scratch、MIT App Inventor等等,下面我简单介绍比较主流的CodeMonkey:
CodeMonkey是游戏化的编程教育工具,故事情节和卡通界面充满趣味,闯关式的游戏设计把编程知识化整为零,主题和内容充满正能量,很适合培养孩子学习编程的兴趣。
CodeMonkey
Scratch是由MIT媒体实验室终生幼儿园小组开发,该小组还开发了适合5-7岁的孩子学习编程的ScratchJr。Scratch可用来设计动画、游戏等创作,开发者还可以把程序分享给其他人。
Scratch
MIT App Inventor由MIT移动学习中心开发,使用图像化的编程界面,让没有编程基础的人也可以开发Android应用。开发者还可以把App上传到Google应用商店供人下载。
MIT App Inventor 2
这三款都是在线的编程教育工具,使用非常方便。同样是针对8-16岁的孩子,我认为CodeMonkey更适合用于编程教育的启蒙。虽然与CodeMonkey相比,Scratch和MIT App Inventor可以让孩子更加自由的发挥,但小孩子们要先掌握编程的基本指令和语法,才能开发属于自己的项目。而CodeMonkey却不需要孩子独自创建项目,并且在游戏中提供了清晰的指导,更容易入门。
3
CodeMonkey诞生于以色列,这个国家非常重视科技教育。这种重视可能来自以色列人脑海里深深的危机感。世界上20%左右的诺贝尔奖获得者来自于以色列。最近因被特斯拉电动汽车Model S搭载而开始热门的辅助驾驶系统,最先进的核心技术来自于Mobileye,这家来自以色列的公司研发的辅助驾驶系统还应用在宝马、通用、沃尔沃等全球知名汽车公司的多款车型里。
色列
Mobileye
以色列人追求先进的传统,使得CodeMonkey这个产品在发布之前经历过多次改进。创始团队刚成立时,这个项目就幸运地进入MindCET(以色列最大教育企业之一)的孵化器中。MindCET里的一线教师和学生给了创始团队很多反馈,使得CodeMonkey在实践中得到很大的改进。此外,CodeMonkey还引起了以色列教育部的注意,后者在全国范围内推荐这个STEM产品。
紧接着,CodeMonkey成功进入硅谷的Co-Lab教育孵化器,获得了更多媒体和资本的关注,并进入全球市场。作为CodeMonkey的导师之一,Zynga这个全球在线游戏发行商给CodeMonkey团队带来了很多游戏设计上的指导。使CodeMonkey改进为编程教育游戏,变得更加有趣。
游戏化界面
后来,CodeMonkey前往英国,进入了Pearson的孵化器中。Pearson有着丰富的面向学校教育的经验,这促使该团队将CodeMonkey转变成一家面向学校和机构的教育公司。在Pearson的指导下,该团队为学校和机构里的编程老师们开发了与CodeMonkey编程游戏紧密结合的课堂指导教案和教师端管理工具。这第三次改进让学生们的编程教育变得更加专业。
2014年5月,CodeMonkey发布。7个月后,就有25万的孩子们通过CodeMonkey平台学习编程。2015年3月初,CodeMonkey成为进入SXSW教育峰会总决赛的十个产品之一,受到更多的瞩目。如今CodeMonkey在全球拥有超过250万粉丝,其团队对于进入中国市场非常期待。
4
CodeMonkey是一款在线编程教育课程、闯关模式的编程游戏。游戏的主角是一只猴子,它最爱的香蕉被强壮的猩猩抢走,而游戏的目标是帮助猴子夺回香蕉。这个题材和形式充满正能量,配上温馨的卡通风格的界面和自然环境的立体音效,很容易让孩子接受并喜欢上编程。
CodeMonkey
在游戏中,孩子的任务就是通过编程、发挥想象力通过一道又一道关卡,过程中还有猴博士的指导。孩子在闯关中由易到难地学习编程,不知不觉提升了编程能力。这和我在DataCamp上学习Python的体验一致。
CodeMonkey采用的编程教学语言是CoffeeScript,这是JavaScript的一种转译语言,执行效率非常高。其代码指令简洁、可读性强,非常接近自然语言,很适合作为编程教育的启蒙语言。CodeMonkey的画面和操作都很简单。孩子只需在CodeMonkey的代码窗口里编写图形化的代码指令,点击运行后,后台自动将CoffeeScript代码编译成JaveScript指令执行命令,接着孩子便在动画窗口里看到代码的运行结果。
令我惊奇的是,CodeMonkey会高亮代码窗口里每次执行的那一行代码,并且在动画窗口上有所反馈,让孩子直观地理解代码在执行过程中发生了什么。这和我用Python Tutor直观理解代码的体验一致。我觉得这是CodeMonkey区别于其它工具的最大亮点。
CodeMonkey的故事模式一共有200关。涵盖计算机编程领域里的大部分概念和知识,包括变量、对象、函数调用、参数、循环、数组、函数定义、布尔类型、For循环、While循环等。考虑到8-16岁左右的孩子很可能没有编程基础,CodeMonkey最开始的关卡设计非常简单。
CodeMonkey一共有200关
比如第1关,孩子只需要修改猴子前进的步数,即「step 10」中的10,就可以让猴子吃到香蕉顺利通关。如果不知道距离是多少,CodeMonkey还提供了尺子用以测量。这样,孩子不仅学会了控制角色移动,还对距离有了初步的认识。再比如第3关,孩子不仅需要用尺子测量猴子前进的距离,还需要控制猴子前进的方向。后续关卡中会出现多个香蕉,猴博士会指导孩子简化程序。比如,如果猴子多次走10步,孩子可以定义变量「a=10」的方式来简化程序。再如果猴子反复执行某一套动作10次,孩子可以用循环10次来执行这套动作,而不用重复写10次代码。孩子还可以把这套动作的指令写成一个函数,只需要调用这个函数就可以做一系列复杂而有序的操作,起到“四两拨千斤”的效果。
第1关
随着孩子在通关中积累了越来越多的代码指令、编程思想,后续的关卡会教给孩子更丰富的指令,更复杂的编程思想,并对孩子的想象力提出了更高的要求。如要想方设法避开障碍物、靠乌龟和鳄鱼过河、在最少步骤内吃到所有香蕉等等。除了这些,CodeMonkey还注重培养孩子优化代码的良好习惯。每次通关后,猴博士会给孩子的代码评分。如果没有获得满分3颗星,孩子会收到猴博士给出的代码优化的提示,孩子可选择重玩对代码进行调整。
Codemonkey还通过不断增加新的关卡,推出在线游戏创建工具,设计更丰富的游戏形式来增加内容的丰富性和多样性,并鼓励小孩子们自己创立游戏关卡。微量的社交元素也是Codemonkey的一大特色,孩子可通过在脸书上分享自己解决问题的方案,还可以创建、发起挑战,并邀请好友来完成任务。
5
那么孩子们会在CodeMonkey里收获到什么呢?
首先,CodeMonkey编程游戏带给孩子无尽的快乐,通关模式的设计让孩子充满成就感。这种快乐和成就感让孩子觉得学习编程是一件轻松愉快的事情,这是学习里最重要的收获。
其次,CodeMonkey还会让孩子形成编程思维,培养他们写出整洁代码的好习惯。孩子的这种思维和习惯不仅体现在编程里,还会体现在今后的人生当中。
还有,孩子还会通过CodeMonkey学到一门新语言-CoffeeScript。一门新的语言给孩子打开一扇门,让他们看到不同的世界。CoffeeScript是孩子和计算机交流的一种语言,并且和JavaScript有紧密联系,这对于孩子以后学习JavaScript提供了缓冲。JavaScript是一个简单但强大的语言,不仅可以用于在PhoneGap写手机应用,还可以结合Ruff开发套件开发好玩的智能硬件。
JavaScript+Ruff
当然,收获远远不止这些。总之,我觉得CodeMonkey是最适合作为孩子学习编程教育的启蒙。对于那些希望孩子早点接触编程教育的家长们来说,这个暑假让孩子玩玩CodeMonkey是个不错的选择,说不定就让孩子看到一扇色彩斑斓的新世界。
想要体验吗?扫描二维码入群申请即可!
--end--
声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com