科普 | 为什么选择CodeMonkey作为编程教育的启蒙?

1

我接触编程是在本科的时候,学的是C语言。但我所在的数学专业用不上编程,所以课程结束我就没再写过代码。直到读硕士后,我需要写代码解决实际问题。不会编程成为我的一个非常严重的短板,让我寸步难行。

我决定重新学习编程。对比各种语言之后,我选择学习Python。我在电脑上安装了Python,把教程上的代码一行一行地敲进去,然后运行得到反馈,就这样学了一个多月。后来,我发现DataCamp,这个网站提供闯关模式供人自学Python。接着,我又找到Python Tutor。这个程序把代码执行的中间过程可视化,让我有更直观的理解。

科普 | 为什么选择CodeMonkey作为编程教育的启蒙?_第1张图片
DataCamp
科普 | 为什么选择CodeMonkey作为编程教育的启蒙?_第2张图片
Python Tutor

后来,导师给我分配任务,在一个个项目的实战过后,我写代码越来越熟练。有时遇到新语言,比如Matlab,学习Python的经验让我轻松上手。从此,我再不用担心编程会成为我的短板了。

当然,人们也不用担心编程成为他们的短板,因为编程正变得越来越容易。一方面,编程语言的迅速发展使得上手越来越快。比如完成标准制定的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、CodeCombat、code.org、Alice、Tynker、Kano、Osmo Coding等下面我简单介绍比较主流的CodeMonkey、Scratch、MIT App Inventor

CodeMonkey是游戏化的编程教育工具,故事情节和卡通界面充满趣味,闯关式的游戏设计把编程知识化整为零,主题和内容充满正能量,很适合培养孩子学习编程的兴趣。


科普 | 为什么选择CodeMonkey作为编程教育的启蒙?_第3张图片
CodeMonkey

Scratch是由MIT媒体实验室终生幼儿园小组开发,该小组还开发了适合5-7岁的孩子学习编程的ScratchJr。Scratch可用来设计动画、游戏等创作,开发者还可以把程序分享给其他人。

科普 | 为什么选择CodeMonkey作为编程教育的启蒙?_第4张图片
Scratch

MIT App Inventor由MIT移动学习中心开发,使用图像化的编程界面,让没有编程基础的人也可以开发Android应用。开发者还可以把App上传到Google应用商店供人下载。

科普 | 为什么选择CodeMonkey作为编程教育的启蒙?_第5张图片
MIT App Inventor 2

这三款都是在线的编程教育工具,使用非常方便。同样是针对8-16岁的孩子,我认为CodeMonkey更适合用于编程教育的启蒙。虽然与CodeMonkey相比,Scratch和MIT App Inventor可以让孩子更加自由的发挥,但小孩子们要先掌握编程的基本指令和语法,才能开发属于自己的项目。而CodeMonkey却不需要孩子独自创建项目,并且在游戏中提供了清晰的指导,更容易入门。

好了,说了这么多,接下来我向大家重点介绍CodeMonkey

3

CodeMonkey诞生于以色列,这个国家非常重视科技教育。这种重视可能来自以色列人脑海里深深的危机感。以色列人中获得博士学位的比重很高,工程师占比是世界人口当中最高的,超过美国和日本。世界上20%左右的诺贝尔奖获得者来自于以色列。最近因被特斯拉电动汽车Model S搭载而开始热门的辅助驾驶系统,最先进的核心技术来自于Mobileye,这家来自以色列的公司研发的辅助驾驶系统还应用在宝马、通用、沃尔沃等全球知名汽车公司的多款车型里。

科普 | 为什么选择CodeMonkey作为编程教育的启蒙?_第6张图片
以色列


科普 | 为什么选择CodeMonkey作为编程教育的启蒙?_第7张图片
Mobileye

以色列人追求先进的传统,使得CodeMonkey这个产品在发布之前经历过多次改进。创始团队刚成立时,这个项目就幸运地进入MindCET(以色列最大教育企业之一)的孵化器中。MindCET里的一线教师和学生给了创始团队很多反馈,使得CodeMonkey在实践中得到很大的改进。此外,CodeMonkey还引起了以色列教育部的注意,后者在全国范围内推荐这个STEM产品。

紧接着,CodeMonkey成功进入硅谷的Co-Lab教育孵化器,获得了更多媒体和资本的关注,并进入全球市场。作为CodeMonkey的导师之一,Zynga这个全球在线游戏发行商给CodeMonkey团队带来了很多游戏设计上的指导。使CodeMonkey改进为编程教育游戏,变得更加有趣。

科普 | 为什么选择CodeMonkey作为编程教育的启蒙?_第8张图片
游戏化界面

后来,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指令执行命令,接着孩子便在动画窗口里看到代码的运行结果。

CoffeeScript

令我惊奇的是,CodeMonkey会高亮代码窗口里每次执行的那一行代码,并且在动画窗口上有所反馈,让孩子直观地理解代码在执行过程中发生了什么。这和我用Python Tutor直观理解代码的体验一致。我觉得这是CodeMonkey区别于其它工具的最大亮点。

科普 | 为什么选择CodeMonkey作为编程教育的启蒙?_第9张图片
CodeMonkey的最大亮点

目前CodeMonkey的故事模式一共有200关。涵盖计算机编程领域里的大部分概念和知识,包括变量、对象、函数调用、参数、循环、数组、函数定义、布尔类型、For循环、While循环等。考虑到8-16岁左右的孩子很可能没有编程基础,CodeMonkey最开始的关卡设计非常简单。


科普 | 为什么选择CodeMonkey作为编程教育的启蒙?_第10张图片
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开发套件开发好玩的智能硬件。

科普 | 为什么选择CodeMonkey作为编程教育的启蒙?_第11张图片
JavaScript+Ruff

当然,收获远远不止这些。总之,我觉得CodeMonkey是最适合作为孩子学习编程教育的启蒙。对于那些希望孩子早点接触编程教育的家长们来说,这个暑假让孩子玩玩CodeMonkey是个不错的选择,说不定就让孩子看到一扇色彩斑斓的新世界。


转载请注明:来自微信公众号“君君玩科技”。

你可能感兴趣的:(科普 | 为什么选择CodeMonkey作为编程教育的启蒙?)